core/generate
Shay d94ea7e2d1 fix(quarantine): cluster C — drain all 27 tests, QUARANTINE now empty
Fixes span three subsystems:

math parser / OOD generator:
- Add OOD unit registry words (ingots, shards, crystals, …) to
  allowed_nouns so rename_unit variants parse cleanly
- Add scarf/scarves and other -ves→-f irregulars to _PLURAL_IRREGULARS
  so _canonical_unit("scarf") → "scarves" (not "scarfs")
- Add _IRREGULAR_SINGULAR dict to _singular() in ood_surface_generator
  so "scarves" → "scarf" for n=1 rendering; prevents "scarve" parse error

eval lane drift:
- cold_start_grounding public cases: update 4 expected_grounding_source
  values from "pack"/"oov" → "teaching" (cognition chains now cover
  truth/memory/recall for DEFINITION prompts)
- gsm8k_math runner: handle fast-path graph=None (capacity/earnings
  solvers return is_admitted=True with selected_graph=None)
- coverage probe report: regenerate committed JSON after parser fix
  raised admission_rate and changed per_case trace hashes
- test_gsm8k_math_runner: add decoded_unarticulated / _rate to
  expected metrics key set

test guards:
- test_composed_surface + test_compound_walkthrough_eval_lanes: skip
  holdout-split tests when CORE_HOLDOUT_KEY unset (not a regression)
- test_en_core_action_v1_pack: EXPECTED_TOTAL 26→27, issubset check,
  provenance in-check for pack that gained one inflected entry
- test_relations_chains_v1: EXPECTED_CHAIN_IDS 7→21 after seed expansion

conftest: QUARANTINE frozenset emptied — ratchet at zero.
2026-05-25 07:15:26 -07:00
..
binding_graph
__init__.py
admissibility.py
articulation.py
articulation_legality.py
attention.py
bridge_trace.py
dialogue.py
discourse_planner.py
exhaustion.py fix(W-011/W-012): propagate recognition refusal + catch InnerLoopExhaustion (#258) 2026-05-24 20:46:46 -07:00
graph_constraint.py
graph_planner.py
grounding_accessors.py
intent.py
intent_bridge.py
intent_ratifier.py feat(recognition): ADR-0144 — EpistemicGraph carrier + pipeline integration (#227) 2026-05-24 13:39:01 -07:00
math_candidate_graph.py feat(ADR-0136.S.2): conditional-op question — gsm8k-0042 admits, wrong==0 (#203) 2026-05-23 21:20:52 -07:00
math_candidate_parser.py feat(ADR-0136.S.4): novel-initial-form parser extension + rescan v4 (#210) 2026-05-23 22:34:51 -07:00
math_parser.py fix(quarantine): cluster C — drain all 27 tests, QUARANTINE now empty 2026-05-25 07:15:26 -07:00
math_problem_graph.py
math_realizer.py
math_roundtrip.py
math_solver.py
math_symbolic_equivalence.py
math_symbolic_normalizer.py
math_verifier.py
math_versor_arithmetic.py feat(ADR-0141): multiply as CGA dilator versor (positive non-zero) (#216) 2026-05-24 09:09:53 -07:00
morphology.py
ood_surface_generator.py fix(quarantine): cluster C — drain all 27 tests, QUARANTINE now empty 2026-05-25 07:15:26 -07:00
operators.py
perturbation_suite.py
proposition.py
realizer.py
realizer_guard.py
result.py
rotor_admissibility.py
salience.py
semantic_templates.py
stream.py
surface.py
templates.py