Stage 8b contract: typed claim roles, required slot, diff-carrying bounces
Typed claim roles (schema-shared, all structured arms): claims gain kind = quotation | conclusion | premise_correction; premise corrections carry premise_source (question | prior_answer) + premise_text, enforced as a verbatim substring of the named source - the schema-level premise distinction. Verified corrections are exempt from the conclusion allowance and the lint bounce (novel by design), but never from the stands-for bar (no laundering). H15 required_slot arm: every cited case's characterization slot must be filled by an attested-verbatim quote (citator receipt) or the exact typed refusal sentence; free paraphrase is not a slot value. H16' diff-carrying rejections: quoteRepair.ts ports the ALR-Quote- Verifier alignment approach (token-level longest common run) narrowed to Beaver's contiguous-substring tier - failed quotations bounce WITH the cited span's closest verbatim excerpt, which clears the tier by construction when requoted (round-trip proven in tests). H17 prompt factorization: one base composition prompt shared verbatim by every structured arm; mechanisms ride as named modules injected only on applicable cells (attested/slot text only on case-law cells), recorded per-cell as prompt_modules (runner receipt schema v2). Instrumentation: every typed rejection archives pre-bounce claims + rejection text into the receipt event (schema v6), closing the Stage 7 gap. 13 new unit vectors; 40/40 pass. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012AgUm5EcRKbT3duVFMbrQD
| Repository | eliziff/Beaver |
|---|---|
| Author | Eli Ziff <eliasziff@gmail.com> |
| Authored | |
| Parents | 3e3d134c |
| Stats | 6 files changed , +958 , -65 |
| Part of | Legal grounding and retrieval research |
Capture this commit into my fork
Download a Markdown prompt that tells Claude how to port this
exact commit into your working tree. Run it via
claude -p < capture-commit-0c2e4adf.md
from inside the repo you want the change in.