core/CLAIMS.md
Shay 11c91581e8
fix(W-015): replace _slerp_toward with rotor-geodesic anchor pull (#255)
Closes W-015 wiring debt. Per Sonnet's investigation (PR #252,
verdict (c)): _slerp_toward interpolates on S^31 but the versor
manifold (Spin sub-group in Cl(4,1)) is a proper subset. Slerp's
geodesic doesn't stay on the manifold, producing systematic
off-manifold state that the post-hoc unitize_versor was repairing.

Fix replaces _slerp_toward with the proper rotor-geodesic path:
    R      = word_transition_rotor(field_state.F, anchor_field)
    R_step = rotor_power(R, _ANCHOR_PULL_ALPHA)
    pulled_F = versor_apply(R_step, field_state.F)

rotor_power stays on the manifold by construction (same principle
as generate/stream.py:220). versor_apply closes via algebra/
versor.py — an already-sanctioned site. The unsanctioned
unitize_versor call in _anchor_pull and the entire _slerp_toward
function are removed.

CLAUDE.md normalization-site discipline is now restored:
session/context.py:_anchor_pull no longer performs normalization.

Changes:
- session/context.py: import rotor_power + word_transition_rotor,
  remove _slerp_toward (34 lines), rewrite _anchor_pull to use
  rotor-geodesic (15 lines net change).
- tests/test_session_coherence.py: new test pins the manifold
  invariant — after anchor pull, versor_condition stays < 1e-6
  without any unitize call (32 lines).

Intentional lane re-pins (audit-trail per #229 discipline):
- demo_composition: 403be13b → 3a3d09f3 (anchor pull now produces
  correct on-manifold fields; demo output shifts as expected).
- public_demo: acd51d0c → 888ddd0d (same cause).

CLAIMS.md regenerated to reflect new pins (per #239 lesson).

Verification:
- tests/test_session_coherence.py: 3 passed
- core test --suite smoke: 67 passed
- scripts/verify_lane_shas.py: 7/7 match (post-re-pin)
- Manifold invariant test pinned: anchor pull preserves
  versor_condition < 1e-6 by construction (no repair).

Investigation source: PR #252 (Sonnet). 4,138-sample bimodal
distribution confirmed _slerp_toward as the sole drift source.
2026-05-24 20:05:25 -07:00

3.1 KiB

CLAIMS

Every row below is mechanically derived from in-tree state and verified by CI. Tier 1 rows come from core.capability.ledger_report; Tier 2 rows come from scripts/verify_lane_shas.py's pinned SHAs.

Tier 1 — Ratified domains

Each row asserts: the domain's packs pass all nine ADR-0091 contract predicates, declared operator chains meet the ≥8 / ≥3-intent floor, the reviewer registry resolves the primary reviewer, and the ledger status predicate evaluates to reasoning-capable with no open gaps.

Domain Status ADR Packs Open gaps
philosophy_theology reasoning-capable ADR-0085 2 0
mathematics_logic expert ADR-0097 1 0
physics audit-passed ADR-0100 1 0
systems_software audit-passed ADR-0101 1 0
hebrew_greek_textual_reasoning reasoning-capable ADR-0102 4 0

Tier 2 — Pinned lane reports

Each row asserts: running the lane's runner produces a JSON report whose SHA-256 matches the pinned value below. Mismatch is a CI failure (.github/workflows/lane-shas.yml).

ADR Lane Purpose Report path Pinned SHA-256
ADR-0092 reviewer_registry Reviewer registry schema validates + bootstrap entry self-seals evals/reviewer_registry/results/v1_dev.json 681a2aab5aa4ffd58cd837ce5673c8b2a9545b570117aec3c02726a12f6876e6
ADR-0093 domain_contract_validation All ratified packs satisfy the 9 ADR-0091 contract predicates evals/domain_contract_validation/results/v1_dev.json 98ace04e3f02bbc5a8ad655bb6593c3f1ee64cb67014f1122fe6c3c85f48d22f
ADR-0095 miner_loop_closure Miner-sourced proposals route through single reviewed teaching path evals/miner_loop_closure/results/v1_dev.json 9f071733abe7dcacf759f928548ce738fb639af3fd6e4c621a651b306d7e77ce
ADR-0096 fabrication_control_summary Phantom endpoints / cross-pack non-bridges / sibling collapses refuse evals/fabrication_control/results/v1_summary.json 01e1b6b711141f2b4a14551d7df3ea482d8d6dd7b364a25c509f4f8d08cda8a8
ADR-0098 demo_composition Demos compose from shipped modules; no parallel mechanism evals/demo_composition/results/v1_dev.json 3a3d09f3a87462737e615c2dd3481b9e13e5ff8fadee0043c37873494ded556d
ADR-0099 public_demo Public showcase runs deterministically under 30s; all claims supported evals/public_demo/results/v1_dev.json 888ddd0d12635d709f91898cf06601062168694d870f776d2b0b7710e5d68cbd
ADR-0104 curriculum_loop_closure Curriculum-sourced proposals route through single reviewed teaching path evals/curriculum_loop_closure/results/v1_dev.json b46d56b2d209172cc3ffaf3776dc8dcfe55093f13587c5cb67372be6dfa23e8d

Verification

python3 scripts/verify_lane_shas.py    # verify all Tier 2 SHAs
core test --suite full -q              # exercises Tier 1 invariants