fix(analysis): score C major acceptance from decoded WAV bytes - #892
fix(analysis): score C major acceptance from decoded WAV bytes#892cursor[bot] wants to merge 87 commits into
Conversation
Prove a decoded C major WAV recovers C and a 120 BPM click WAV passes tempo Acc1, with checksum-fail-closed case reports. Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com>
The headline Tier 1 case wrote a fixture then scored the pre-write array. Checksum the file, decode those bytes, and fail closed through both file evaluators so a tampered WAV cannot pass. Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com>
|
Exact-head maintenance update for fa2abea:
No dependency, workflow, model, network, filesystem, IPC, or reviewer-credential authority changed. Keep Draft; predecessor evidence does not transfer. |
|
Current-head review note for fa2abea:\n\nThe acceptance code writes/decodes WAV bytes, but the fixture itself is generated in-process (C-major sines and a click track), so this proves PCM round-trip and metric wiring—not a real musical recording's production accuracy. I ran the current engine against a licensed public-domain piano recording separately: TemporalAnalyzer returned 147.7 BPM over 176.59 seconds, but chord output was 261 low-confidence time segments and the production API returned no tempo. Please keep the claim boundary explicit or add a licensed, annotated recording fixture before calling this a real-audio accuracy gate. |
|
@opencode-agent review\n\nReview only current PR head fa2abea against protected develop base 749511c. Validate the decoded-WAV accuracy framework, exact-version/provenance and finite-real input contracts, metric behavior, and documentation claim boundary. Treat the generated in-process C-major fixture as PCM/metric wiring evidence, not real-recording production accuracy; do not reuse predecessor-head or provider-failure evidence. |
|
Queued @opencode-agent for PR #892 at head |
|
Real-file connectivity evidence for exact head fa2abea: a locally materialized, uncommitted M4A was decoded to a temporary mono 22050 Hz WAV and passed through the production TemporalAnalyzer and ChordRecognizer. Output was duration 253.5467 s, 78.3026 BPM, 313 beats, 79 downbeats, tempo stability loose with no detected tempo changes, and 125 chord segments; the first segments were N, D, A, D, Bm, E, A, D, G, D, A, Em. The temporary source path and waveform bytes were not committed or logged. This is real-audio runtime evidence only: the recording has no registered chord ground truth, so it does not satisfy the Tier-1/P0 accuracy acceptance gate. |
…2-be2cddbcd28e-bb43' into codex/accuracy-bounds-20260830
…ds-20260830 fix(accuracy): bound fixture decode resources
|
@opencode-agent review Review only exact current head |
Summary
Tier 1 real-audio acceptance writes license-clean C-major and 120 BPM click WAVs, verifies and decodes the on-disk bytes, then scores the production
ChordRecognizerandTemporalAnalyzer. The branch fails closed on malformed metric, timing, fixture-generation, decoded-PCM, digest, and report-provenance evidence.Compatibility repair
The locked
numba 0.62.1plusllvmlite 0.45.1runtime reproducibly crashed inside librosa's Numba beat-tracking gufunc on macOS arm64 / Python 3.12 during the decoded 120 BPM acceptance case.numba 0.63.1reproduced the same crash in the full and single-case regressions, whilenumba 0.66.0plusllvmlite 0.48.0completed the production path and full engine suite.The dependency is target-specific: ARM64 selects
numba==0.66.0; non-ARM targets retainnumba==0.62.1plusllvmlite==0.45.1because 0.66.0 has no macOS Intel wheel. The complete lock was regenerated by uv. This is a compatibility repair for an existing dependency, not a new dependency or a security exception.Current exact-head evidence
e11a0e3738e864372abe30a87b94e29c33a41895develop@749511c3ad4000090048718f685c6bee6b3d2c25e11a0e3738e864372abe30a87b94e29c33a41895; no protecteddevelopmerge is claimed.numba 0.66.0,llvmlite 0.48.0; 83 real-audio accuracy tests passed; 21 temporal/pipeline tests passed; full engine suite762 passed, 24 skippedwith 100% statement and branch coverage.768 passed, 24 skipped, 100% production statements/branches/functions/lines, plus43targeted accuracy tests.uv lock --check, documentation, security-note, supply-chain, andgit diff --checkpassed. The x86_64 macOS dry-run selectsnumba 0.62.1plusllvmlite 0.45.1. The aarch64 macOS 13 dry-run remains blocked by the pre-existingtorch==2.12.1macOS 14-only wheel constraint, unrelated to this Numba change.develop; current-head Noema/Strix/OpenCode and independent approval evidence must be re-queried after this merge.Security Notes
The acceptance path remains local-only: generated WAV bytes, decoded PCM, fixture inputs, report provenance, and production analyzer outputs are untrusted evidence. Checksum-before-score, finite/non-Boolean numeric admission, bounded fixtures, exact lockfile consumption, and fail-closed report validation remain in force. No network, shell, IPC, model, export, or credential boundary was added.
Merge gate
Keep Draft and unmerged until this exact HEAD has terminal-success repository and central security/SBOM/supply-chain/package/release/platform gates, realistic audio acceptance, zero valid unresolved findings, and a qualifying independent non-author approval. Do not count queued, pending, skipped-required, cancelled, failed, predecessor-head, protected-base, model-only, self/author, or bypass evidence as success. Normal branch protection remains required.