docs: create milestone v1.2 roadmap (4 phases, 18 requirements)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
+32
-42
@@ -2,15 +2,15 @@
|
||||
gsd_state_version: 1.0
|
||||
milestone: v1.2
|
||||
milestone_name: Extended Protocol Coverage
|
||||
status: defining_requirements
|
||||
stopped_at: Milestone v1.2 started
|
||||
last_updated: "2026-03-26T21:02:36.710Z"
|
||||
last_activity: 2026-03-26
|
||||
status: roadmap_created
|
||||
stopped_at: Roadmap created for v1.2 — ready to plan Phase 8
|
||||
last_updated: "2026-03-27T00:00:00.000Z"
|
||||
last_activity: 2026-03-27
|
||||
progress:
|
||||
total_phases: 3
|
||||
completed_phases: 3
|
||||
total_plans: 6
|
||||
completed_plans: 6
|
||||
total_phases: 4
|
||||
completed_phases: 0
|
||||
total_plans: 0
|
||||
completed_plans: 0
|
||||
percent: 0
|
||||
---
|
||||
|
||||
@@ -18,70 +18,60 @@ progress:
|
||||
|
||||
## Project Reference
|
||||
|
||||
See: .planning/PROJECT.md (updated 2026-03-26)
|
||||
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.
|
||||
**Current focus:** Defining requirements for v1.2
|
||||
**Current focus:** Phase 8 — Test and Constant Cleanup (v1.2 start)
|
||||
|
||||
## Current Position
|
||||
|
||||
Phase: Not started (defining requirements)
|
||||
Plan: —
|
||||
Status: Defining requirements
|
||||
Last activity: 2026-03-27 — Milestone v1.2 started
|
||||
Last activity: 2026-03-26
|
||||
Phase: 8 of 11 (Test and Constant Cleanup)
|
||||
Plan: — (not yet planned)
|
||||
Status: Ready to plan
|
||||
Last activity: 2026-03-27 — v1.2 roadmap created, 4 phases defined (8-11), 18 requirements mapped
|
||||
|
||||
Progress: [░░░░░░░░░░] 0%
|
||||
|
||||
## Performance Metrics
|
||||
|
||||
**Velocity (v1.0 baseline):**
|
||||
**Velocity (v1.1 baseline):**
|
||||
|
||||
- Total plans completed: 11
|
||||
- Average duration: 7.7 min
|
||||
- Total execution time: ~1.4 hours
|
||||
- Total plans completed: 6
|
||||
- Average duration: ~3 min
|
||||
- Total execution time: ~18 min
|
||||
|
||||
**By Phase (v1.0):**
|
||||
**By Phase (v1.1):**
|
||||
|
||||
| Phase | Plans | Total | Avg/Plan |
|
||||
|-------|-------|-------|----------|
|
||||
| 01 | 4 | ~30min | 7.5min |
|
||||
| 02 | 3 | ~28min | 9.3min |
|
||||
| 03 | 2 | ~20min | 10min |
|
||||
| 04 | 2 | ~7min | 3.5min |
|
||||
| 05 | 2 | ~7min | 3.5min |
|
||||
| 06 | 2 | ~4min | 2min |
|
||||
| 07 | 2 | ~6min | 3min |
|
||||
|
||||
**Recent Trend:** Stable
|
||||
| Phase 05 P01 | 3min | 2 tasks | 3 files |
|
||||
| Phase 05 P02 | 4 | 2 tasks | 4 files |
|
||||
| Phase 06 P02 | 2 | 2 tasks | 3 files |
|
||||
| Phase 07 P01 | 3 | 1 tasks | 3 files |
|
||||
|
||||
## Accumulated Context
|
||||
|
||||
### Decisions
|
||||
|
||||
- [v1.1 Roadmap]: Phase 5 consolidates waveform types (WAVE-01, WAVE-02) with bank decoupling — both are internal refactors with no user-visible surface, establishing the injectable seam before config is added
|
||||
- [v1.1 Roadmap]: Research steps 5+6 (wire config + freq/waveform overrides) collapsed into Phase 6 — they share the same integration boundary (encode.RunSynthesis signature change) and are safer to land together
|
||||
- [v1.1 Roadmap]: User class name collision with built-in TrafficClass strings is an unresolved design question — decide before coding Phase 7 (treat as override vs. reject as ambiguous)
|
||||
- [Phase 05]: FreqConfig struct uses named field syntax for ClassFreqConfigs entries (required by WaveformType addition)
|
||||
- [Phase 05]: WaveformType zero value is WaveformCustom — all 14 existing ClassFreqConfigs entries retain hand-tuned harmonics without modification
|
||||
- [Phase 05]: NewBank accepts injected config map instead of reading ClassFreqConfigs global — injection seam for Phase 6 config loading
|
||||
- [Phase 05]: gainPerLayer computed as 1.0/float64(len(cfgs)) — correct for any class count, no-clip guarantee preserved
|
||||
- [Phase 06]: Option A for freqCfgs propagation: pass as parameter to runLiveMode/runPcapMode — cleaner data flow vs package-level var
|
||||
- [Phase 06]: config.Load positioned after BPF validation, before output path resolution — ensures fail-fast before any I/O (D-11)
|
||||
- [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 for Plan 02 CLI wiring
|
||||
- [Phase 07]: LoadResult struct chosen over tuple return for config.Load() — cleaner API contract
|
||||
|
||||
### Pending Todos
|
||||
|
||||
None.
|
||||
1 pending todo: `.planning/todos/pending/001-expand-traffic-classes.md`
|
||||
|
||||
### Blockers/Concerns
|
||||
|
||||
- [Phase 7 pre-work]: User-defined class names that collide with built-in class strings (e.g., `class = "HTTPS"`) require an explicit design decision before Phase 7 coding begins. Research flags this as unresolved. Options: treat as override (simplest) or reject as ambiguous. Resolve during Phase 7 planning.
|
||||
- [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
|
||||
|
||||
## Session Continuity
|
||||
|
||||
Last session: 2026-03-26T20:52:30.470Z
|
||||
Stopped at: Completed 07-02-PLAN.md
|
||||
Last session: 2026-03-27
|
||||
Stopped at: v1.2 roadmap created
|
||||
Resume file: None
|
||||
|
||||
Reference in New Issue
Block a user