Files

47 lines
2.4 KiB
Markdown
Raw Permalink Normal View History

2026-03-26 15:23:04 +01:00
# Milestones
## v1.2 Extended Protocol Coverage (Shipped: 2026-03-27)
**Phases completed:** 4 phases, 7 plans, 14 tasks
**Key accomplishments:**
- Removed stale constants and future-proofed test bounds (Nyquist-based validation) to unblock all v1.2 work
- Rebalanced all ClassFreqConfigs to major-second ladder in family frequency bands (65-3250 Hz) with Group field on FreqConfig
- Added 21 new TrafficClass constants and 30 port-matching rules across 7 protocol families (Mail, File Transfer, Remote Access, Database, Discovery, VoIP, Infrastructure)
- Full classification test coverage: 28 new subtests covering all new port/protocol/transport combinations
- Added 21 ClassFreqConfigs entries with family-coherent sound design (shared waveform and frequency register per group)
- Group-ordered `--print-config` output with section headers and `[groups]` TOML support for user-defined protocol-to-group reassignment
---
## v1.1 Custom Sound Mappings (Shipped: 2026-03-26)
**Phases completed:** 3 phases, 6 plans, 3 tasks
**Key accomplishments:**
- Four waveform types (sine, square, sawtooth, triangle) with bandlimited additive synthesis and decoupled bank injection
- TOML config system with auto-discovery, partial override semantics, unknown-key validation, and `--config` flag
- User-defined classification rules via `[[rules]]` TOML blocks — prepend before built-ins, first-match-wins
- Auto-frequency assignment (FNV-32a hash, 1200-2350 Hz) for custom class names with no sound config
- `--print-config` flag outputs full effective config as commented TOML with source annotations
- End-to-end config flow: TOML file -> config.Load() -> LoadResult -> synthesis pipeline
---
2026-03-26 15:23:04 +01:00
## v1.0 MVP (Shipped: 2026-03-26)
**Phases completed:** 4 phases, 11 plans, 9 tasks
**Key accomplishments:**
- Config-driven packet classifier with 12 protocol rules (ICMP, DNS, HTTPS, SSH, etc.) and 4 hash-bucketed unknown classes
- Live packet capture via go-pcap with privilege detection, non-blocking channel pipeline, and atomic drop counter
- Additive synthesis engine: per-class sine oscillators, EMA amplitude smoothing, constant-power stereo panning
- MP3 encoding via embedded LAME (go-lame v0.0.9), zero-packet guard, `-o` flag with timestamp default
- End-to-end pipeline: capture -> classify -> aggregate -> synthesize -> MP3 with clean Ctrl+C shutdown
- BPF filter support (`--filter`) and offline pcap file sonification (`--read`) with timestamp-based windowing
---