#000046 Phase 1 — HARD live-path Falsification tier (first below-ceiling pack)
Closes the "everything is at rate 1.0 so fork_score's bench-Δ terms are inert" gap the #000025 §10.14 calibration surfaced — at least on the 5F/falsification axis. bench/fixtures/5f/falsification-hard-v1.jsonl — 12 near-misses, each a FALSE/unsupported claim whose correct verdict is UNGROUNDED (recorded in expected_reason). 8 of 12 are over-grounded by arborist.qa.verify.verify_quotes at HEAD — its paraphrase token-coverage strategy returns STRICT_PARAPHRASE, its entity-proximity strategy returns HYBRID_ENTITY, both matching on incidental overlap (shared entities/numbers, the same key terms stated in the opposite direction) — so those tasks fail by design; the other 4 the verifier handles correctly. Rate at HEAD = 4/12 = 0.333, stable (verify_quotes is pure-lexical / deterministic). Built around the pre-documented gap 5f-fal-live-003. make bench-5f-falsification-hard runs the pack; make bench-fork-baseline-hard pins it to bench/results/baseline-falsification-hard.json. Both targets `|| true` past the runner's nonzero-on-failures exit (8 fixtures fail by design; the JSON is still written). tests/test_bench_batteries.py — test_5f_falsification_hard_pack_below_ceiling (pins rate 4/12, source=live, every fixture asserts UNGROUNDED, the 8 fails are over-grounds not abstentions) + test_fork_score_positive_gamma_5f_on_hard_falsification_improvement (the worked example: fork_score(parent={5f/falsification: 1/3}, child={5f/falsification: 1.0}) → gamma*Delta5f ≈ +0.133 > 0, verdict ACCEPT, no regression flags — the bench Δ-rate carrying signal it can't carry while every canonical pack is at ceiling). NOT in `make bench-5f` / `make bench-5s5t5f` / `make bench-fork-baseline` / `runner --all` — the hard pack is a separate, deliberately-failing artifact pinned on its own. #000046 flipped to "in progress · Phase 1 landed"; closure pending an actual verify_quotes tightening that lifts the rate (a separate, larger task). ticket-000012 §8 §4 + TICKETS.md row updated. Full suite: 2314 passed, 28 skipped.
This commit is contained in:
parent
a53afa6148
commit
01d697f961
7 changed files with 333 additions and 16 deletions
|
|
@ -567,7 +567,13 @@ protocol must account for:
|
|||
is carried by the efficiency bonuses (`adaptation_efficiency` /
|
||||
`feedback_efficiency`) + the non-bench terms
|
||||
(`selfmodel_calibration_gain`, `audit_completeness`,
|
||||
`validator_diversity`, …), not by bench Δ-rate. Adding the
|
||||
harder tier is tracked as **#000046** (a #000025 follow-up,
|
||||
recommends a narrow live-path hard tier starting with 5F
|
||||
Falsification), not a #000012 blocker.
|
||||
`validator_diversity`, …), not by bench Δ-rate. The harder tier
|
||||
is tracked as **#000046** (a #000025 follow-up); its **Phase 1
|
||||
landed 2026-05-11** — `bench/fixtures/5f/falsification-hard-v1.jsonl`
|
||||
(12 near-misses, rate 4/12 ≈ 0.333 at HEAD, `verify_quotes`
|
||||
over-grounds 8) is the first below-ceiling pack, with a
|
||||
worked-example test showing `fork_score`'s `γ·Δ5f` going positive
|
||||
on a lift to 1.0. So the bench Δ-rate *can* now carry signal on
|
||||
the 5F/falsification axis; closing #000046 needs an actual
|
||||
`verify_quotes` tightening to lift the rate. Not a #000012
|
||||
blocker either way.
|
||||
|
|
|
|||
|
|
@ -1,6 +1,12 @@
|
|||
# Ticket #000046 — Harder 5S/5T/5F fixture tier (below-ceiling baselines)
|
||||
|
||||
**Status:** open · awaiting go/no-go
|
||||
**Status:** in progress · **Phase 1 landed 2026-05-11** (Option A,
|
||||
narrow start — 5F Falsification hard pack: `bench/fixtures/5f/
|
||||
falsification-hard-v1.jsonl`, rate 4/12 ≈ 0.333 at HEAD, stable;
|
||||
`make bench-5f-falsification-hard` / `make bench-fork-baseline-hard`;
|
||||
worked-example test shows `fork_score`'s γ·Δ5f going positive on a
|
||||
lift to 1.0). Closure pending an actual `verify_quotes` tightening
|
||||
that lifts the rate (a separate, larger task) — see §5 + §7.
|
||||
**Opened:** 2026-05-11
|
||||
**Scope:** Give the 5S/5T/5F bench packs *headroom* — a fixture tier
|
||||
the runtime does **not** pass at rate 1.0 — so the ForkScore Δ-rate
|
||||
|
|
@ -155,21 +161,62 @@ testable only once there's a below-ceiling baseline to bench against.
|
|||
|
||||
## 5. Status
|
||||
|
||||
**Open · awaiting go/no-go.** Doc-only proposal. Opens when fox picks
|
||||
a strategy (recommendation: Option A / Falsification first). The
|
||||
implementation commit chain it gates: (1) author the first hard pack,
|
||||
(2) confirm rate < 1.0 and stable + add the pinning test, (3) `make
|
||||
bench-fork-baseline-hard`, (4) demonstrate a planted surface
|
||||
improvement lifting the rate + a positive ForkScore Δ term, (5)
|
||||
extend to the next sub-battery if the loop holds. Closure: ≥ 1 hard
|
||||
pack live with a below-ceiling stable rate AND a worked example
|
||||
showing the ForkScore bench-Δ term going positive on a real
|
||||
improvement.
|
||||
**In progress — Phase 1 landed 2026-05-11 (Option A, 5F Falsification
|
||||
hard pack).** Receipt:
|
||||
|
||||
- **Hard pack:** `bench/fixtures/5f/falsification-hard-v1.jsonl` — 12
|
||||
near-misses, each a *false / unsupported* claim whose correct
|
||||
verdict is `UNGROUNDED` (recorded in `expected_reason`). 8 of 12
|
||||
are over-grounded by `arborist.qa.verify.verify_quotes` at HEAD
|
||||
(paraphrase token-coverage → `STRICT_PARAPHRASE`, entity-proximity →
|
||||
`HYBRID_ENTITY`, on incidental overlap) so those tasks fail by
|
||||
design; 4 the verifier handles correctly. **Rate at HEAD = 4/12 =
|
||||
0.333…** — a stable below-ceiling baseline (`verify_quotes` is
|
||||
pure-lexical / deterministic). Built around the pre-documented gap
|
||||
`5f-fal-live-003`.
|
||||
- **Make targets:** `make bench-5f-falsification-hard` (runs the pack;
|
||||
the runner exits 1 because 8 fixtures fail by design — the targets
|
||||
`|| true` past that, the JSON is still written), `make
|
||||
bench-fork-baseline-hard` → `bench/results/baseline-falsification-hard.json`
|
||||
(pins the below-ceiling rate as a ForkScore parent artifact).
|
||||
- **Tests:** `tests/test_bench_batteries.py` —
|
||||
`test_5f_falsification_hard_pack_below_ceiling` (pins rate 4/12,
|
||||
source=live, every fixture asserts `UNGROUNDED`, the 8 fails are
|
||||
over-grounds not abstentions) + `test_fork_score_positive_gamma_5f_on_hard_falsification_improvement`
|
||||
(the worked example: `fork_score(parent={5f/falsification: 1/3},
|
||||
child={5f/falsification: 1.0})` → `γ·Δ5f ≈ +0.133 > 0`, verdict
|
||||
ACCEPT, no regression flags — the bench Δ-rate carrying signal it
|
||||
can't carry while every canonical pack is at ceiling).
|
||||
- **Not in** `make bench-5f` / `make bench-5s5t5f` / `make
|
||||
bench-fork-baseline` / `runner --all` — the hard pack is a
|
||||
separate, deliberately-failing artifact pinned on its own.
|
||||
|
||||
**Still open (the actual closure):** Phase 1 *proved the loop* with a
|
||||
synthetic child at rate 1.0. Closing the ticket needs a **real
|
||||
`verify_quotes` tightening** that lifts the hard-pack rate above
|
||||
0.333 (stricter entity strategy / higher paraphrase coverage
|
||||
threshold / wider title-relevance check) — a separate, larger task
|
||||
(it touches the live verifier surface, not the bench). When that
|
||||
lands, this ticket closes with the rate-improvement → ForkScore Δ
|
||||
demonstrated on an *actual* change, and Phase 2 (extend the hard
|
||||
tier to Formulate / a retrieval-backed 5S/5T sub) opens if the loop
|
||||
holds. Until then: Phase 1 stands, the hard pack pins the gap, and
|
||||
the next-step menu is (a) tighten `verify_quotes`, or (b) extend the
|
||||
hard tier to Formulate now without waiting for the verifier work.
|
||||
|
||||
---
|
||||
|
||||
## 6. References
|
||||
|
||||
- `bench/fixtures/5f/falsification-hard-v1.jsonl` — the Phase-1 hard
|
||||
pack (12 near-misses, rate 4/12 at HEAD). `make
|
||||
bench-5f-falsification-hard` runs it; `make bench-fork-baseline-hard`
|
||||
pins it to `bench/results/baseline-falsification-hard.json`.
|
||||
- `tests/test_bench_batteries.py` —
|
||||
`test_5f_falsification_hard_pack_below_ceiling` (pins the rate +
|
||||
the over-ground/abstention distinction) +
|
||||
`test_fork_score_positive_gamma_5f_on_hard_falsification_improvement`
|
||||
(the worked example).
|
||||
- `bench/scripts/fivef_threshold_calibration.py` +
|
||||
`bench/results/5f-threshold-calibration-2026-05-11.md` — the
|
||||
calibration that surfaced the ceiling-saturation problem.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue