core/teaching
Shay a0a8c4d029 feat(curriculum): query-scoped premise compilation (ADR-0264 R5-R7)
compile_premises emitted every chain in a family, and read_verb_argument
refuses past MAX_PREMISE_SENTENCES=16 — a 17-chain family answered nothing
at all, which meant no curriculum band could ever earn a license regardless
of corpus size (ADR-0264 §4.1).

compile_premises now accepts an optional query=(subject, connective, obj)
and scopes compilation to it: the default is term incidence (chains whose
subject or object is one of the query's two terms), narrowing further to
the exact query-atom rows only if term incidence would still exceed the
cap. Both scopes are verdict-identical to full-family compilation, because
every compiled premise mints one independent propositional atom that no
other atom in the argument can constrain (ADR-0264 R5) — verified over all
8,520 routable questions in the four served domains: 0 mismatches, 4,494
empty scopes all confirmed `unknown` under full-family compilation.

decide_curriculum_question (the only production caller) now distinguishes
an empty SCOPE (open-world UNKNOWN, R6) from an empty FAMILY (the existing
`empty_curriculum` refusal) — getting this wrong would have flipped most
of the question space from unknown to declined. premise_count keeps
reporting family size for the user-visible surface (R7); the compiled
scope size is carried separately on a new `scope_size` field.

Physics gold is unchanged: entailed 14 / unknown 12 / declined 6, lane
report byte-identical, SHA pin unchanged.

[Verification]: smoke suite 569 passed (140.5s), deductive suite 291
passed (50.5s, +6 new tests in tests/test_curriculum_serve.py), warmed_session
lane 10 passed (146.0s), curriculum_serve lane wrong=0 (n=32), all on
canonical Python 3.12.13 with uv sync --locked.
2026-07-25 17:02:36 -07:00
..
admissibility_exemplars Fix admissibility exemplars data and test script for geometric engine updates 2026-07-04 15:25:45 -07:00
cognition_chains feat(gsm8k): Gate A1 multiplicative comparative recognizer injection (#805) 2026-06-17 14:05:06 -07:00
cross_pack_chains
domain_chains
math_corpora
math_proposals
proposals feat(evals): Author 200-case GSM8K math evaluation corpus and verification script 2026-07-04 16:03:51 -07:00
relations_chains
relations_chains_v2
__init__.py
audit.py
contemplation.py feat: 3lang depth PropGraph unification - phase refinements, wiring, tests + session pickup cleanups/governance 2026-07-08 07:07:11 -07:00
correction.py
coverage.py
cross_pack_supersede.py
curriculum_premises.py feat(curriculum): query-scoped premise compilation (ADR-0264 R5-R7) 2026-07-25 17:02:36 -07:00
discovery.py feat(third-door): wire high surprise to DiscoveryCandidate (#20 follow-up) 2026-07-13 17:25:17 -07:00
discovery_sink.py
discovery_yield.py feat(telemetry): discovery-yield-per-served-turn baseline (ADR-0255) 2026-07-23 07:27:00 -07:00
epistemic.py
exemplar_ingest.py feat(derivation): Gate A2a unit partition injection (#809) 2026-06-17 18:14:24 -07:00
from_curriculum.py
from_miner.py
gaps.py
math_claim_signature.py
math_composition_proposal.py
math_composition_ratification.py Lane 4: Registry Consolidation (language_packs to packs) 2026-07-04 15:11:28 -07:00
math_contemplation.py
math_contemplation_proposal.py
math_evidence.py
math_frame_proposal.py
math_frame_ratification.py Lane 4: Registry Consolidation (language_packs to packs) 2026-07-04 15:11:28 -07:00
math_inference_proposal.py
math_lexical_ratification.py Lane 4: Registry Consolidation (language_packs to packs) 2026-07-04 15:11:28 -07:00
math_reasoning_trace.py
metric_set.py
migrate_proposals_source_field.py
oov_gaps.py
oov_promotion.py
oov_sink.py
promotion.py
proof_promotion.py
proposals.py
provenance.py
queue.py
ratification.py feat(provenance,teaching): close the lateral gaps the assessment actually found 2026-07-25 04:51:15 +00:00
recognizer_synthesis.py feat(derivation): Gate A2a unit partition injection (#809) 2026-06-17 18:14:24 -07:00
relation_parse.py Lane 4: Registry Consolidation (language_packs to packs) 2026-07-04 15:11:28 -07:00
replay.py
review.py
source.py
store.py feat(logos): bulk live morph authority on turn + teaching seams 2026-07-20 16:35:04 -07:00
supersede.py