**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.
## v1.2 Requirements
Requirements for extended protocol coverage milestone. Each maps to roadmap phases.
### Cleanup
- [ ]**CLEAN-01**: Remove stale `NumLayers` constant and hardcoded frequency range test assertions that would block new class additions
### Protocol Coverage
- [ ]**PROTO-01**: Add Mail family protocols: IMAP (143/993), POP3 (110/995), SMTP-submission (587)
- [ ]**PROTO-02**: Add File Transfer family protocols: FTP (20-21), SMB/CIFS (445), TFTP (69)
- [ ]**PROTO-09**: Existing 10 protocol classifications remain unchanged — no regression in rule matching behavior
### Frequency Design
- [ ]**FREQ-01**: All traffic classes (existing + new) are redistributed into group-coherent frequency bands using musical interval ratios (not fixed Hz steps)
- [ ]**FREQ-02**: Within-family protocols are separated by at least a major second interval (ratio 1.122) to avoid critical band masking
- [ ]**FREQ-03**: The full frequency allocation table is designed and documented before any FreqConfig code is written
- [ ]**FREQ-04**: Auto-assign frequency range for user custom classes is updated to avoid collision with new built-in frequencies
### Group System
- [ ]**GRP-01**: Each traffic class belongs to a named group (Infrastructure, Web, Mail, File Transfer, Remote Access, Database, Discovery, VoIP)
- [ ]**GRP-02**: `--print-config` output organizes classes by group with section headers
- [ ]**GRP-03**: Users can define `[groups]` in TOML config to reassign protocols to different sound families
- [ ]**GRP-04**: FreqConfig gains a `Group` field that drives group-aware frequency allocation and config output