feat(06-01): implement config package with TOML load, merge, validate
- Load() discovers, parses, validates, and merges TOML config over defaults - SoundOverride struct with *float64/*string pointer fields for partial-merge (CFG-04) - parseFile uses BurntSushi/toml DecodeFile + Undecoded() for unknown-key errors (CFG-05) - discoverPath probes ./netsynth.toml then ~/.config/netsynth/config.toml (CFG-02) - merge applies non-nil overrides per class; warns on unknown class names (D-09) - parseWaveform maps sine/square/sawtooth/triangle strings to WaveformType - Harmonics regenerated via WaveformPresetHarmonics when waveform/frequency changes - All 9 tests pass; go vet clean
This commit is contained in:
Reference in New Issue
Block a user