From 1e845c0f03fc143d45492891c572a5bed6346c61 Mon Sep 17 00:00:00 2001 From: Jan Svabenik Date: Wed, 25 Mar 2026 17:26:17 +0100 Subject: [PATCH] docs: remove stale state and todo notes --- STATE.md | 184 ------------------------------------------------------- TODO.md | 23 ------- 2 files changed, 207 deletions(-) delete mode 100644 STATE.md delete mode 100644 TODO.md diff --git a/STATE.md b/STATE.md deleted file mode 100644 index f3487ef..0000000 --- a/STATE.md +++ /dev/null @@ -1,184 +0,0 @@ -# SDR Wideband Suite - Current State - -This file is the practical handoff / resume state for future work. -Use it together with `ROADMAP.md`. - -- `ROADMAP.md` = long-term architecture and phase roadmap -- `STATE.md` = current repo state, working conventions, and next recommended entry point - -## Current Milestone State - -- **Phase 1 complete** -- **Phase 2 complete** -- **Phase 3 complete** -- **Phase 4 complete** - -Current project state should be treated as: -- Phase 1 = architecture foundation landed -- Phase 2 = multi-resolution surveillance semantics landed -- Phase 3 = conservative runtime prioritization/admission/rebalance landed -- Phase 4 = monitor-window operating model landed - -Do not reopen these phases unless there is a concrete bug, mismatch, or regression. - ---- - -## Most Recent Relevant Commits - -These are the most important recent milestone commits that define the current state: - -### Phase 4 monitor-window operating model -- `efe137b` Add monitor window goals for multi-span gating -- `ac64d6b` Add monitor window matches and stats -- `d7e457d` Expose monitor window summaries in runtime debug -- `c520423` Add monitor window priority bias -- `838c941` Add window-based record/decode actions -- `962cf06` Add window zone biases for record/decode actions -- `402a772` Consolidate monitor window summary in debug outputs -- `8545b62` Add per-window outcome summaries for admission pressure -- `65b9845` test: cover overlapping monitor windows -- `efe3215` docs: capture Phase-4 monitor-window status - -### Phase 3 runtime intelligence milestone -- `4ebd51d` Add priority tiers and admission classes to pipeline -- `18b179b` Expose admission metadata in debug output and tests -- `ba9adca` Add budget preference and pressure modeling -- `7a75367` Expose arbitration pressure summary -- `592fa03` pipeline: deepen hold/displacement semantics -- `30a5d11` pipeline: apply intent holds and family tier floors -- `1f5d4ab` pipeline: add intent and family priority tests -- `822829c` Add conservative budget rebalance layer -- `da5fa22` Update Phase-3 Wave 3E status - -### Documentation / stable defaults -- `fd718d5` docs: finalize phase milestones and ukf test config - -If resuming after a long pause, inspect the current `git log` around these commits first. - ---- - -## Current Important Files / Subsystems - -### Long-term guidance -- `ROADMAP.md` - durable roadmap across phases -- `STATE.md` - practical resume/handoff state -- `PLAN.md` - project plan / narrative (may be less pristine than ROADMAP.md) -- `README.md` - user-facing/current feature status - -### Config / runtime surface -- `config.yaml` - current committed default config -- `config.autosave.yaml` - local autosave; intentionally not tracked in git -- `internal/config/config.go` -- `internal/runtime/runtime.go` - -### Phase 3 core runtime intelligence -- `internal/pipeline/arbiter.go` -- `internal/pipeline/arbitration.go` -- `internal/pipeline/arbitration_state.go` -- `internal/pipeline/priority.go` -- `internal/pipeline/budget.go` -- `internal/pipeline/pressure.go` -- `internal/pipeline/rebalance.go` -- `internal/pipeline/decision_queue.go` - -### Phase 2 surveillance/evidence model -- `internal/pipeline/types.go` -- `internal/pipeline/evidence.go` -- `internal/pipeline/candidate_fusion.go` -- `internal/pipeline/scheduler.go` -- `cmd/sdrd/pipeline_runtime.go` - -### Phase 4 monitor-window model -- `internal/pipeline/monitor_rules.go` -- `cmd/sdrd/window_summary.go` -- `cmd/sdrd/level_summary.go` -- `cmd/sdrd/http_handlers.go` -- `cmd/sdrd/decision_compact.go` -- `cmd/sdrd/dsp_loop.go` - ---- - -## Current Default Operator / Test Posture - -The repo was intentionally switched to an FM/UKW-friendly default test posture. - -### Current committed config defaults -- band: `87.5-108.0 MHz` -- center: `99.5 MHz` -- sample rate: `2.048 MHz` -- FFT: `4096` -- profile: `wideband-balanced` -- intent: `broadcast-monitoring` -- priorities include `wfm`, `rds`, `broadcast`, `digital` - -### Important config note -- `config.yaml` is committed and intended as the stable default reference -- `config.autosave.yaml` is **not** git-tracked and may diverge locally -- if behavior seems odd, compare the active runtime config against `config.yaml` - ---- - -## Working Conventions That Matter - -### Codex invocation on Windows -Preferred stable flow: -1. write prompt to `codex_prompt.txt` -2. create/use `run_codex.ps1` containing: - - read prompt file - - pipe to `codex exec --yolo` -3. run with PTY/background from the repo root -4. remove `codex_prompt.txt` and `run_codex.ps1` after the run - -This was adopted specifically to avoid PowerShell quoting failures. - -### Expectations for coding runs -- before every commit: `go test ./...` and `go build ./cmd/sdrd` -- commit in coherent blocks with clear messages -- push after successful validation -- avoid reopening already-closed phase work without a concrete reason - ---- - -## Known Practical Caveats - -- `PLAN.md` has had encoding/character issues in some reads; treat `ROADMAP.md` + `STATE.md` as the cleaner authoritative continuity docs. -- README is generally useful, but `ROADMAP.md`/`STATE.md` are better for architectural continuity. -- `config.autosave.yaml` can become misleading because it is local/autosaved and not tracked. - ---- - -## Recommended Next Entry Point - -If resuming technical work after this checkpoint: - -### Start with **Phase 5** -Do **not** reopen Phase 1-4 unless there is a concrete bug or regression. - -### Recommended Phase 5 direction -Move from monitor windows inside a single capture span toward richer span / operating orchestration: -- span / zone groups -- span-aware resource allocation -- stronger profile-driven operating modes -- retune / scan / dwell semantics where needed - -### Avoid jumping ahead prematurely to -- full adaptive QoS engine (Phase 6) -- major GPU/performance re-architecture (Phase 7) -- heavy UX/product polish (Phase 8) - -Those should build on Phase 5, not bypass it. - ---- - -## Resume Checklist For A Future Agent - -1. Read `ROADMAP.md` -2. Read `STATE.md` -3. Check current `git log` near the commits listed above -4. Inspect `config.yaml` -5. Confirm current repo state with: - - `go test ./...` - - `go build ./cmd/sdrd` -6. Then start Phase 5 planning from the actual repo state - -If these steps still match the repo, continuation should be seamless enough even after a hard context reset. diff --git a/TODO.md b/TODO.md deleted file mode 100644 index eb3a9ca..0000000 --- a/TODO.md +++ /dev/null @@ -1,23 +0,0 @@ -# TODO — SDR Visual Suite - -## UI -- [ ] RDS RadioText (RT) Anzeige hinzufügen: - - Overlay: 1 Zeile, sanfter Fade bei Updates, Ellipsis bei Überlänge, optional kleines „RT“-Badge. - - Detail-Panel: 2 Zeilen Auto-Wrap; bei Überlänge Ellipsis + Expand (Modal/Zone) für Volltext. - - Update-Logik: RT nur bei stabilem Text (z. B. 2–3 identische Blöcke), optional „RT · HH:MM“ Timestamp. - -## Band Settings Profiles (v1.2) -- [ ] Backend: built-in Profile-Struktur + embedded JSON (6 Profile) -- [ ] Backend: Apply-Helper (shared mit /api/config) inkl. source/dsp/save -- [ ] Backend: Merge-Patch mit Feld-Präsenz (nur explizite Felder anwenden) -- [ ] Backend: DisallowUnknownFields + Config-Validierung → 400 -- [ ] Backend: Endpoints GET /api/profiles, POST /api/profiles/apply, POST /api/profiles/undo, GET /api/profiles/suggest -- [ ] Backend: Undo-Snapshot (1 Level) + Active Profile ID (Runtime-State) -- [ ] Optional: Active Profile ID über Neustart persistieren (falls gewünscht) -- [ ] UI: Dropdown + Split-Apply (full/dsp_only) + Undo + Active-Badge -- [ ] UI: Suggest-Toast bei center_hz Wechsel, Dismiss-Schutz (>5 MHz) -- [ ] UX: Loading-Indicator während Profilwechsel (1–3s Reset) -- [ ] Tests: Patch-Semantik, dsp_only (center_hz/gain_db bleiben), Unknown Fields, Suggest-Match - -## Notes -- Ab jetzt hier die Todo-Liste führen.