core/evals/rate_oracle
Shay 4c271f5e9f feat(rate): R3 RateProblem model + rate gold + setup oracle (R3b)
generate/rate_comprehension/model.py: RateProblem (quantity = rate × time, exactly one unknown == query; rate_unit fixes all three units by construction; structural guard refuses zero/two unknowns). evals/rate_oracle/: span-free signature, a 12-fixture gold (6 solved / 2 solver_refuses / 2... reader_refuses), closed expect+reason taxonomy, gold-validation runner + CLI. No reader yet — proves the ruler (12/12 valid).

Gold shape gives the 6/0/6 target: 6 single-rate solved (forward + both inverses, non-temporal 'per box' included), 2 non-integer-inverse solver refusals, 4 reader refusals (unit mismatch minutes-vs-hour, missing time, combined rates, clock-time temporal). Off-serving. 9 oracle + 10 unit tests; per-branch meaningful-fail.
2026-06-07 23:01:25 -07:00
..
__init__.py feat(rate): R3 RateProblem model + rate gold + setup oracle (R3b) 2026-06-07 23:01:25 -07:00
__main__.py feat(rate): R3 RateProblem model + rate gold + setup oracle (R3b) 2026-06-07 23:01:25 -07:00
rate_gold.jsonl feat(rate): R3 RateProblem model + rate gold + setup oracle (R3b) 2026-06-07 23:01:25 -07:00
runner.py feat(rate): R3 RateProblem model + rate gold + setup oracle (R3b) 2026-06-07 23:01:25 -07:00
signature.py feat(rate): R3 RateProblem model + rate gold + setup oracle (R3b) 2026-06-07 23:01:25 -07:00