core/docs
Shay b891eb243c feat(ADR-0131.G.2): comparative operations (additive + multiplicative) — admission unchanged, comparative-clause refusals 2→1
Wire compare_additive / compare_multiplicative extractors into the
candidate-emitting sentence parser, closing the deferred phase flagged
at generate/math_candidate_parser.py:30.

Capability axis: comparatives (additive + multiplicative)
- generate/math_candidate_parser.py: new _compare_additive_candidates,
  _compare_multiplicative_candidates, _compare_nested_candidates
  emitting CandidateOperation records keyed to the four
  Comparison.direction literals registered in ADR-0123.
- Closed-set anchor alternation; 'less' admitted as surface synonym of
  'fewer'; reference slot widened to admit "the number/amount of <unit>"
  for nested forms.
- Nested 'A has N more <unit> than M times <REF>' emits two flat
  candidates (additive + multiplicative); binding-graph picks the
  admissible composition or refuses (no solver stub).

Curated axis lane (24 cases)
- evals/math_capability_axes/G2_comparatives/v1/cases.jsonl:
  8 additive / 8 multiplicative / 3 nested / 5 refusal
- evals/math_capability_axes/G2_comparatives/v1/runner.py +
  report.json: deterministic, wrong==0 gate, byte-equal across runs.

Tests (21 new)
- tests/test_adr_0131_G2_comparatives.py: per-direction at-least-one
  passing, nested-both-emitted, closed-set refusal, runner
  byte-equality, GSM8K-probe gate (comparative-clause refusals
  strictly decrease).

GSM8K-probe gate (chosen: comparative-clause refusals ↓)
- evals/gsm8k_math/train_sample/v1/report.json (candidate-graph
  probe): comparative-clause refusal count 2 → 1 (case 0009 'Jen has
  10 more ducks than four times the number of chickens' moves from
  statement-clause refusal to question-layer refusal). admitted_wrong
  remains 0; admission_rate unchanged (downstream composition is a
  follow-up ADR).
- evals/gsm8k_math/train_sample/v1/train_sample_coverage_report.json
  (legacy probe): refreshed, byte-identical (legacy parser untouched).

B3 + candidate-graph + GSM8K probe lanes all pass (90/90). Direction
vocab stays closed to {more, fewer, times, fraction}; wrong==0
preserved everywhere.
2026-05-23 14:15:25 -07:00
..
adr feat(runtime): opt-in unified-ingest path (ADR-0090, audit Findings 6+7) (#95) 2026-05-20 21:00:27 -07:00
architecture
curriculum docs(adr-0087): rhetorical style as selection axis + writing-chain harvester spec (#72) 2026-05-20 16:09:16 -07:00
decisions feat(ADR-0131.G.2): comparative operations (additive + multiplicative) — admission unchanged, comparative-clause refusals 2→1 2026-05-23 14:15:25 -07:00
evals
handoff docs(handoff): two Codex briefs — domain-pack closure cleanup + grc/he content phase II (#98) 2026-05-20 23:12:15 -07:00
implementation docs: propose semantic-symbolic binding graph layer (#170) 2026-05-23 09:58:39 -07:00
sessions docs: pedagogy research review + 2 deferred teaching-loop ADRs 2026-05-23 07:01:55 -07:00
capability_roadmap.md docs: Phase 5 GSM8K-math substrate completion sweep (ADR-0119 + sub-phases + ADR-0114a 10/10) 2026-05-22 20:39:24 -07:00
ethics_packs.md
EVAL_AUDIT_2026-05-20.md chore(evals): contracts + bench json + Lane B viewer + chart + audit + demo schema (#62) 2026-05-20 13:53:13 -07:00
eval_methodology.md feat: ADR-0113 rename expert-demoaudit-passed; reserve expert namespace (ADR-0114 GSM8K roadmap) 2026-05-22 15:36:10 -07:00
formation_pipeline_plan.md
frontier_baselines.md
gaps.md Add chain-first capability ledger and domain seeds (#97) 2026-05-20 21:33:24 -07:00
holdout_recipients.txt feat: ADR-0119.1 — seal fabrication_control holdout with age encryption (Obligation #1) 2026-05-22 17:22:46 -07:00
identity_packs.md
pack_inventory_2026-05-21.md docs: pack inventory 2026-05-21 — strengths, weaknesses, leverage gaps (#84) 2026-05-20 19:59:18 -07:00
PROGRESS.md docs: Phase 5 GSM8K-math substrate completion sweep (ADR-0119 + sub-phases + ADR-0114a 10/10) 2026-05-22 20:39:24 -07:00
reviewers.yaml feat: ADR-0124 — systems_software audit-passed promotion (third successful) 2026-05-22 16:55:41 -07:00
runtime_contracts.md docs: Phase 5 GSM8K-math substrate completion sweep (ADR-0119 + sub-phases + ADR-0114a 10/10) 2026-05-22 20:39:24 -07:00
RUST.md
safety_packs.md
teaching_order.md
truth_seeking_schema.md
Whitepaper.md docs: Phase 5 GSM8K-math substrate completion sweep (ADR-0119 + sub-phases + ADR-0114a 10/10) 2026-05-22 20:39:24 -07:00
Yellowpaper.md docs: Phase 5 GSM8K-math substrate completion sweep (ADR-0119 + sub-phases + ADR-0114a 10/10) 2026-05-22 20:39:24 -07:00