Measurement artifacts written during a session (ns_v3.json, energy.json, seams.json, dips.json) record their findings but not what they were measured on. No source path, no duration, no sha, no threshold used.
What it cost
A threshold calibrated on cueva-v4-limpio.wav (a file with pauses remaining) was applied to cueva-fix66-0.25.0-6m57.wav (silence pass already applied). The claim "the interior-energy floor kills 26 of 27 false positives" was true of the first file and false of the second, where it killed 6 of 30. The two files differ by 80 seconds and an entire editing pass, and nothing in the artifact said which one it came from.
The error surfaced only because a later run re-measured from scratch and got a different number.
What would prevent it
Every measurement artifact carries the source it describes:
{
"source": { "path": "...", "durationMs": 417029, "sha256": "..." },
"params": { "thresholdDb": -38.6, "windowMs": 30, "minDurationMs": 300 },
"findings": [ ... ]
}
The session already writes meta.json with vcutVersion for a round, so the precedent exists. The same discipline applied to per-instrument artifacts makes a transplanted calibration visible instead of silent.
Related in spirit: #68 (a round's pre-fold EDL is overwritten, so the pass's own effect cannot be audited afterward).
Measurement artifacts written during a session (
ns_v3.json,energy.json,seams.json,dips.json) record their findings but not what they were measured on. No source path, no duration, no sha, no threshold used.What it cost
A threshold calibrated on
cueva-v4-limpio.wav(a file with pauses remaining) was applied tocueva-fix66-0.25.0-6m57.wav(silence pass already applied). The claim "the interior-energy floor kills 26 of 27 false positives" was true of the first file and false of the second, where it killed 6 of 30. The two files differ by 80 seconds and an entire editing pass, and nothing in the artifact said which one it came from.The error surfaced only because a later run re-measured from scratch and got a different number.
What would prevent it
Every measurement artifact carries the source it describes:
{ "source": { "path": "...", "durationMs": 417029, "sha256": "..." }, "params": { "thresholdDb": -38.6, "windowMs": 30, "minDurationMs": 300 }, "findings": [ ... ] }The session already writes
meta.jsonwithvcutVersionfor a round, so the precedent exists. The same discipline applied to per-instrument artifacts makes a transplanted calibration visible instead of silent.Related in spirit: #68 (a round's pre-fold EDL is overwritten, so the pass's own effect cannot be audited afterward).