chore: archive v1.2 milestone — Extended Protocol Coverage

35 traffic classes across 9 protocol families shipped. Archives
ROADMAP, REQUIREMENTS, and phase directories to milestones/v1.2-*.
Updates README with new protocol families, sound design table,
and [groups] TOML config documentation.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-27 16:48:53 +01:00
co-authored by Claude Opus 4.6
parent 0a4d48c9c1
commit 494385b528
42 changed files with 290 additions and 166 deletions
+24 -52
View File
@@ -2,16 +2,16 @@
gsd_state_version: 1.0
milestone: v1.2
milestone_name: Extended Protocol Coverage
status: executing
stopped_at: Completed 11-02-PLAN.md
last_updated: "2026-03-27T15:41:48.129Z"
status: complete
stopped_at: Milestone v1.2 archived
last_updated: "2026-03-27T16:00:00.000Z"
last_activity: 2026-03-27
progress:
total_phases: 4
completed_phases: 4
total_plans: 7
completed_plans: 7
percent: 0
percent: 100
---
# Project State
@@ -21,66 +21,39 @@ progress:
See: .planning/PROJECT.md (updated 2026-03-27)
**Core value:** Network traffic patterns are instantly recognizable as distinct sounds — a ping sounds different from HTTPS noise, which sounds different from a port scan.
<<<<<<< Updated upstream
**Current focus:** Phase 11 — synthesis-and-config-layer
**Current focus:** Planning next milestone
## Current Position
Phase: 11
Plan: Not started
Status: Ready to execute
Phase: All v1.2 phases complete
Plan: All plans complete
Status: Milestone v1.2 shipped
Last activity: 2026-03-27
=======
**Current focus:** Phase 06 — config-package-and-sound-overrides
## Current Position
Phase: 06 (config-package-and-sound-overrides) — EXECUTING
Plan: 1 of 2
Status: Executing Phase 06
Last activity: 2026-03-26 -- Phase 06 execution started
>>>>>>> Stashed changes
Progress: [░░░░░░░░░░] 0%
Progress: [██████████] 100%
## Performance Metrics
**Velocity (v1.1 baseline):**
**Velocity (v1.2):**
- Total plans completed: 6
- Average duration: ~3 min
- Total execution time: ~18 min
- Total plans completed: 7
- Phases: 4 (8-11)
- Timeline: 1 day (2026-03-27)
**By Phase (v1.1):**
**By Phase (v1.2):**
| Phase | Plans | Total | Avg/Plan |
|-------|-------|-------|----------|
| 05 | 2 | ~7min | 3.5min |
| 06 | 2 | ~4min | 2min |
| 07 | 2 | ~6min | 3min |
**Recent Trend:** Stable
| Phase 08 P01 | 1 | 2 tasks | 2 files |
| Phase 09 P02 | 3 | 2 tasks | 2 files |
| Phase 10 P02 | 2 | 2 tasks | 1 files |
| Phase 11 P02 | 5min | 2 tasks | 2 files |
| Phase | Plans | Duration | Files |
|-------|-------|----------|-------|
| 08 | 1 | ~1min | 2 |
| 09 | 2 | ~10min | 7 |
| 10 | 2 | ~5min | 3 |
| 11 | 2 | ~13min | 7 |
## Accumulated Context
### Decisions
- [v1.2 Roadmap]: Phase 8 before everything — stale NumLayers/GainPerLayer constant and hardcoded TestFrequenciesInRange bounds cause false CI failures throughout milestone if not removed first
- [v1.2 Roadmap]: Phase 9 is design-only (no protocol code) — Hz allocation must be locked before ClassFreqConfigs entries are written; retroactive rebalancing touches every entry
- [v1.2 Roadmap]: Phase 10 before Phase 11 — TrafficClass constants must exist before ClassFreqConfigs can reference them (three-location atomicity enforced by existing test)
- [v1.2 Roadmap]: GRP-02 and GRP-03 deferred to Phase 11 — PrintConfig group headers and TOML [groups] config depend on both Group field (Phase 9) and new class constants (Phase 10)
- [Phase 07]: addAutoFreqEntries runs before merge so [sounds.X] overrides apply to user-defined classes
- [Phase 07]: LoadResult struct chosen over tuple return for config.Load() — cleaner API contract
- [Phase 08]: NumLayers and GainPerLayer deleted — dead code since NewBank computes gain dynamically as 1/N
- [Phase 08]: TestFrequenciesInRange now validates against Nyquist (22050 Hz) — any new BaseHz in (0, 22050) is accepted without test surgery
- [Phase 09]: autoAssignFreq range moved to [2500, 4000] Hz with numSteps=31 to guarantee no collision with built-in frequencies (max 2449 Hz)
- [Phase 10]: TestAllClassesCount updated to 32 (14 existing + 18 new; LDAP/Kerberos/Syslog excluded until Phase 11 adds ClassFreqConfigs)
- [Phase 11]: Non-canonical group names (user-invented via [groups]) emitted after canonical groups in alphabetical order
- [Phase 11]: builtinByGroup built from result.FreqCfgs[cls].Group (effective group after reassignment) not from synth defaults
See .planning/milestones/v1.2-ROADMAP.md for full decision log.
### Pending Todos
@@ -88,11 +61,10 @@ Progress: [░░░░░░░░░░] 0%
### Blockers/Concerns
- [v1.2 pre-work]: autoAssignFreq range [1200, 2350] Hz will collide with new built-in frequencies unless pushed above all new entries (addressed in Phase 9 design)
- [v1.2 pre-work]: Frequency rebalancing may silently invalidate v1.1 user TOML configs with explicit Hz overrides — mitigation: assign all new protocols above 1047 Hz to leave existing layout frozen
None — milestone complete.
## Session Continuity
Last session: 2026-03-27T15:37:08.965Z
Stopped at: Completed 11-02-PLAN.md
Last session: 2026-03-27
Stopped at: Milestone v1.2 archived
Resume file: None