feat(tide-table): finder recall harness + honest result (#7) — 0.27, below target
build_finder_eval.py measures whether the loop finder surfaces the windows PLN actually cut, using the correlation engine's provenance map (#12) as ground truth at scale. Metric v2: dedup GT into distinct sampled windows (PLN cuts many overlapping loops per stem), give the finder N≥#distinct candidates so recall isn't candidate-capped, and also report precision. Result on the 8 most-cut stems: recall 0.27 (45/169 distinct windows), precision 0.24 — BELOW the 0.70 v1 target. Honest and diagnostic, not a pass: - The eval picked the hardest stems by design (ranked by #cuts) — CHOP-HEAVY sources (14–42 distinct cuts each: Doors, Xxplosive, MC Fioti, Brubeck). PLN chops them into short, often sub-bar pieces; the finder targets 2/4/8-bar LOOPS, so it can't reproduce sub-bar chops. - Vocal stems worst (Doors/vocals 0.06) vs rhythmic best (Gil Scott-Heron 0.56): the per-stem PLP beat grid is weak on sparse-onset vocals → poor candidate windows. - Loop choice is taste-driven anyway (house rule: finder suggests, human picks). Next steps surfaced (new task): (1) borrow the beat grid from drums/full-mix for all stems; (2) add a sub-bar onset-driven "chop mode". The harness is the katana for both.
Showing
armada/tide-table/build_finder_eval.py
0 → 100644
armada/tide-table/finder_eval.json
0 → 100644
Please
register
or
sign in
to comment