Commit graph

10 commits

Author SHA1 Message Date
Shay
57156857bd
chore(kernel): tighten construction_affordances catalog invariants (#930)
Some checks failed
full-pytest / full pytest (-m "not quarantine" -n 2) (push) Waiting to run
lane-shas / verify pinned lane SHAs (push) Failing after 5m48s
workbench-ui / build + vitest (push) Failing after 13s
workbench-ui / playwright smoke (push) Failing after 7s
* chore(kernel): tighten construction_affordances catalog invariants

- Delete stale make_proposal (deferred from PR #919; no live callers remain)
- Derive _PROPOSAL_FIRST_FAMILIES from _CATALOG keys to eliminate hidden
  sync obligation (was a manual restatement of all four catalog entries)
- Introduce _SERVING_AUTHORIZED_FAMILIES frozenset so the serving-allowed
  exemption in ConstructionFamily and ConstructionProposal __post_init__
  consults one central authority instead of two string-literal comparisons
- Pre-compute _SORTED_FAMILIES at module load so all_diagnostic_families()
  returns a constant rather than re-sorting on every call
- Remove _VALID_STATUS ClassVar from ConstructionProposal; the field is
  already typed Literal["proposed"] and the indirection adds no safety

No behavior change to serving, assessment, or proposal creation paths.
ADR-0236: small load-bearing PR, single-file, invariants as code.

* refactor(contemplation): unify organ pipelines in pass_manager

- Introduce OrganPipeline descriptor (organ, reader, solver, reason_adapter)
  so every routed solve path shares one _solve_and_verify implementation.
  Adding a new organ is now a single OrganPipeline(...) declaration.

- Extract _maybe_ask helper that collapses the triply-duplicated
  family_by_name / assess_from_family / exercise_ask inline block.

- Add _result() helper that appends the terminal Finding and constructs
  ContemplationResult in one call, enforcing terminal-is-last-finding
  by construction across every return site.

- Replace assert not isinstance(problem, Refusal) with
  InternalContemplationError so the routing invariant is enforceable
  under python -O and surfaces a named, debuggable exception.

No behavior change: all Terminal states, Finding sequences, family
resolution, CMB-over-R3 precedence, boundary-first ordering, and
ask/proposal emission logic are preserved exactly.
2026-07-06 08:38:23 -07:00
Shay
2e59434969 feat(evals): Author 200-case GSM8K math evaluation corpus and verification script 2026-07-04 16:03:51 -07:00
Shay
59a919e347 fix(kernel): complete unary-delta conformance alignment 2026-06-21 22:07:12 -07:00
Shay
61964c5cd4 fix(kernel): align unary-delta implementation with conformance decision 2026-06-21 20:19:53 -07:00
Shay
b6bde12e1e feat(kernel): introduce diagnostic unary-delta proposal seam 2026-06-21 05:39:38 -07:00
Shay
ca83d3846c
fix(kernel): harden quantity-entity proposal seam (#853) 2026-06-20 21:49:26 -07:00
Shay
5310bd6f3c
feat(kernel): introduce diagnostic quantity-entity proposal seam (#851) 2026-06-20 20:57:08 -07:00
Shay
a266324eea
refactor(kernel): fence legacy assessment-backed proposal adapter (#844)
* test(kernel): reject migrated proposal adapter paths

* refactor(kernel): fence legacy assessment-backed proposal adapter
2026-06-20 16:53:21 -07:00
Shay
955fec3bc3
feat(kernel): route proportional-decrease through proposal-first seam (#841) 2026-06-20 15:37:40 -07:00
Shay
ec579339ea
feat(kernel): introduce construction-affordance catalog skeleton (#836) 2026-06-20 11:32:43 -07:00