docs: refresh stale references and archive completed plans - #38
Conversation
Cross-checked repo documentation against current code; the staleness
that mattered was concentrated in a few places:
apps/backend/README.md
- Tech Stack: Python 3.10+ -> 3.11.x (matches every other doc and
scripts/bootstrap.sh; Essentia 2.1b6 wheels are 3.11-only).
- CLI flags table now lists --standard, --pitch-note-only, --stem-dir,
--stem-output-dir (already in analyze.py main()).
- phase1 normalized-scalar list expanded to match _build_phase1 in
server_phase1.py (added plr, bpmDoubletime, bpmSource, bpmRawOriginal,
lufsCurve, dynamicCharacter, textureCharacter, monoCompatible, ...).
apps/ui/README.md
- Removed the 'backend omits raw analyzer fields' note. server_phase1.py
now forwards bpmPercival, bpmAgreement, dynamicCharacter, segmentStereo,
and essentiaFeatures; the README claimed the opposite.
- Phase1 sections list expanded to match Phase1Result in
apps/ui/src/types/measurement.ts (added stemAnalysis, transientDensity,
saturation, snare, hihat, acid, reverb, vocal, supersaw, bass, kick,
genre, pitch, ...).
apps/backend/ARCHITECTURE.md
- Added POST /api/analysis-runs/{run_id}/interrupt (real route at
server.py:2131, not previously listed).
- phase1 success-envelope field lists rewritten to match _build_phase1.
Archived to docs/history/archive/ with archive notes:
- docs/acid-detection-implementation.md (impl record from 2026-03-18;
references pre-split analyze.py and a 'What's Next' list that all
shipped).
- apps/ui/UI_UX_IMPROVEMENTS.md (all three tiers shipped; living app
directory should not host completed plans).
Fixed broken cross-doc links:
- docs/history/archive/phase1-hardening-plan-alt.md pointed at a
non-existent PLAN-phase1-hardening.md at repo root; now points at
the sibling docs/history/phase1-hardening-plan.md.
- docs/history/phase1-hardening-plan.md and optimization-plan.md
CHANGELOG links corrected to ../../CHANGELOG.md.
- BACKLOG.md acidDetection link points at the new archive path.
- apps/ui/CHANGELOG.md UI/UX-plan reference points at the archive path.
- docs/history/archive/README.md index includes the two new entries.
https://claude.ai/code/session_018QzzaW7NMzDdB3k9sYLFMb
slittycode
left a comment
There was a problem hiding this comment.
Verdict: APPROVE
Summary
Docs-only housekeeping: stale field lists in the backend and UI READMEs updated against the live _build_phase1 / Phase1Result code, four broken cross-doc links fixed, and two completed-plan files archived with archive notes matching the established pattern. No code paths touched. No tests needed or expected.
Spot-checked all the headline accuracy claims against the actual source:
- Python 3.11.x constraint: matches every other reference and
bootstrap.sh. ✓ - CLI flags
--standard,--pitch-note-only,--stem-dir,--stem-output-dir: all present atanalyze.py:1297. ✓ POST /api/analysis-runs/{run_id}/interrupt: decorator atserver.py:2131. ✓_build_phase1scalar and forwarded-section lists: verified againstserver_phase1.py:126+. ✓_normalize_spectral_detail/_normalize_stem_analysiscallout inARCHITECTURE.md: functions exist. ✓- Link fixes (
phase1-hardening-plan-alt.md → ../phase1-hardening-plan.md, bothCHANGELOG.mdrelative paths): all targets exist on disk. ✓
Findings
Worth considering:
docs/history/optimization-plan.md — while fixing the CHANGELOG.md relative path, _structure was dropped from the module list. The line now reads analyze_core/_detection/_rhythm/_segments/_transcription.py; analyze_structure.py exists in apps/backend/. The doc is a retired historical reference and already warns that line numbers are invalid, so this won't mislead anyone into doing something wrong — but it's a factual error introduced by the edit.
Test results
N/A — docs-only.
Phase boundary check
Clean. Zero code files changed.
Generated by Claude Code
Reviewer caught a typo I introduced in the previous commit: while fixing the CHANGELOG link, _structure was dropped from the post-split module list. analyze_structure.py exists in apps/backend/, so the correct path slug is analyze_core/_detection/_rhythm/_segments/_structure/_transcription.py. https://claude.ai/code/session_018QzzaW7NMzDdB3k9sYLFMb
slittycode
left a comment
There was a problem hiding this comment.
Verdict: APPROVE
Summary
Docs-only cleanup: corrects the Python version constraint (3.10+ → 3.11.x) in apps/backend/README.md, expands the phase1 field lists in both READMEs and ARCHITECTURE.md to match _build_phase1 in server_phase1.py, fixes five broken cross-doc relative links, and moves two completed plan documents into docs/history/archive/ with archive notices. No code paths touched; CI passes on both sides.
Findings
None.
Test results
N/A — docs-only. CI: Backend ✅ Frontend ✅.
Phase boundary check
N/A — no code changes.
Generated by Claude Code
* docs: sync architecture docs with current code Phase 3 audition samples, URL ingestion, CSV export, publicStatus, and the shared DSP primitives shipped after the last doc refresh (#38) but weren't reflected in the canonical docs. Update CLAUDE.md, the backend ARCHITECTURE.md / AGENTS.md / README.md, the frontend AGENTS.md / README.md, BACKLOG.md, and the docs/ index so the file maps, route lists, and module inventories match the tree. https://claude.ai/code/session_01MajhpbrcKaAoZiuCqwFDH8 * docs: correct types barrel re-export list in apps/ui/AGENTS.md src/types.ts re-exports only measurement, interpretation, and backend. samples.ts is imported directly, not through the barrel. https://claude.ai/code/session_01MajhpbrcKaAoZiuCqwFDH8 --------- Co-authored-by: Claude <noreply@anthropic.com>
Cross-checked repo documentation against the current code structure. The staleness that mattered was concentrated in a few places — most docs are already accurate or carry explicit "archived/historical" notes.
What changed
Living docs corrected against current code
apps/backend/README.mdPython 3.10+→Python 3.11.x(matches every other doc andscripts/bootstrap.sh; Essentia 2.1b6 wheels are 3.11-only).--standard,--pitch-note-only,--stem-dir,--stem-output-dir— already inanalyze.py:1297, previously undocumented.phase1normalized-scalar list expanded to match_build_phase1inserver_phase1.py(addedplr,bpmDoubletime,bpmSource,bpmRawOriginal,lufsCurve,dynamicCharacter,textureCharacter,monoCompatible, …).apps/ui/README.mdbpmPercival,bpmAgreement,dynamicCharacter,segmentStereo, andessentiaFeatures" note.server_phase1.pyforwards all of these now; the README claimed the opposite.Phase1Resultinapps/ui/src/types/measurement.ts(addedstemAnalysis,transientDensityDetail,saturationDetail,snareDetail,hihatDetail,acidDetail,reverbDetail,vocalDetail,supersawDetail,bassDetail,kickDetail,genreDetail,pitchDetail, …).apps/backend/ARCHITECTURE.mdPOST /api/analysis-runs/{run_id}/interruptto the route list (real route atserver.py:2131, previously omitted).phase1success-envelope field lists rewritten to match_build_phase1— same expansion as the backend README.Archived completed plans
Two completion records moved into
docs/history/archive/(the conventional resting place perdocs/history/README.md):docs/acid-detection-implementation.md— 2026-03-18 implementation record. Referenced pre-splitanalyze.py(acid detection now lives inanalyze_detection.py), used the obsoleteEXPECTED_OUTPUT_KEYSname, and its "What's Next" detector list has fully shipped perBACKLOG.md.apps/ui/UI_UX_IMPROVEMENTS.md— three-tier UI/UX polish plan; all tiers shipped. The verification numbers (33 smoke / 73 unit) are also out of date (the suite has grown to 137+ unit tests perapps/ui/CHANGELOG.md).Both files now carry archive notes at the top explaining their status, matching the existing pattern from other archived files.
Broken cross-doc links fixed
docs/history/archive/phase1-hardening-plan-alt.mdpointed at a non-existentPLAN-phase1-hardening.mdat repo root. Now points at the siblingdocs/history/phase1-hardening-plan.md.docs/history/phase1-hardening-plan.mdanddocs/history/optimization-plan.mdhadCHANGELOG.mdrelative paths that resolved to the wrong directory. Both now correctly target../../CHANGELOG.md.BACKLOG.mdacid-detection link updated to the archived path.apps/ui/CHANGELOG.mdUI/UX-plan reference updated to the archived path.docs/history/archive/README.mdindex expanded to include the two newly archived entries.Verification
git statusclean after commit; 11 files changed (2 renames + 9 modifications), +84/-59 lines.grep -rnforUI_UX_IMPROVEMENTS,docs/acid-detection-implementation,PLAN-phase1-hardeningreturns only the one explanatory mention inside the archive note itself.https://claude.ai/code/session_018QzzaW7NMzDdB3k9sYLFMb
Generated by Claude Code