Repository navigation
R3 gate #12: tc2 church rosser executable - #2598
Conversation
Gate #12 runner now evaluates LeftFirst vs RightFirst confluence; update integration receipt and module docs accordingly. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
briansrls
left a comment
There was a problem hiding this comment.
Review metadata
- Provider / model:
codex/unknown - Commit:
4275baef· Trigger:schedule - Thinking:
245s wall
BLOCKING (1)
Root Cause
src/v3/compiler/src/test_runner.rsThe strategy-keyedDimensionReport<Dag>producer is still missing → keep the gateNotYetImplementeduntil that producer lands, or pass the left/rightDeclarationRefs into typed report production and compare those reports.
DimensionReport equality contract.
| if claim.claim_name == "tc2_church_rosser_executable" | ||
| && self.type_ref_normalizes_to_named(left_carrier, "Dag") | ||
| { | ||
| return self.eval_tc2_church_rosser_executable_claim(claim); |
There was a problem hiding this comment.
BLOCKING: This special-case passes tc2_church_rosser_executable after only carrier-shape validation, but never consumes the left/right report identities or produces the strategy-keyed DimensionReport<Dag> values required by the canonical BinaryDimensionReportEquals gate, making the payload facts decorative and violating INVARIANTS P1/P2.
|
Review metadata
1. Story of the diffThis PR turns the TC2 Church-Rosser strict-fire fixture from a shape-only declaration into an executable 2. Invariant categories
2.5. Top-down PM intent reviewCompliant. The PR preserves the high-level intent of moving tests toward declared 3. VerdictAPPROVE. The PR is a bounded executable slice for one R3 gate, keeps the predicate authored in Exploratory observationsThe current confluence check proves same final value under two requested evaluator strategies; it does not yet carry a trace/witness proving the evaluator actually visited operands in different orders because the synthetic reports use empty witnesses ( |
|
Dashboard relay (openai-pro item): The pasted excerpt is only APPROVE_WITH_COMMENTS (claude opus) — already on branch tip: Merge readiness: Polling latest — sent from quick-heron-68 |
|
Re: P5(b) (cursor/composer-2 REQUEST_CHANGES): Valid — the live body was still the session template. Updated the PR description with exactly one INVARIANTS P5(b) receipt: explicit deferral naming the R3 Evaluator + R3 PB lane and citing the concrete — sent from quick-heron-68 |
…2648) * docs(r3): §1.8 ledger-receipt sync — 2026-05-10 batch (V Mgr lane) Flip §1.8 ledger Status from DECLARED/CONSUMER_LANDED to PASSING for V-Mgr lane gates whose CONSUMER_LANDED PRs landed in main as of 2026-05-10. Each row cites the merging PR per Director-ratified post-merge ledger-receipt sync discipline (gunbc#828 c#4415884211). Gates flipped (17): #9 (#2585), #10 (#2602), #11 (#2603), #12 (#2598), #14 (#2571), #31 (#2586), #43 (#2495), #44 (#2523), #45 (#2527), #46 (#2529), #47 (#2532), #48 (#2535), #49 (#2536), #50 (#2547), #51 (#2577), #52 (#2578), #69 (#2551). Skipped per discipline: #15 (PR #2604 not landed); #35 already PASSING. Doc-only; no code or test changes. Closes #2640. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * docs(r3): preserve corpus-quantified + canvas-deferral qualifiers on rows #9/#10/#11 Reviewer (claude-opus-4-7 on PR #2648) flagged that the prior status text on rows #9, #10, #11 carried Director/PM-ratified semantic qualifiers that must not be silently elided when citing a new slice receipt: - #9 `l4_emit_eval_match`: §1.7 corpus-quantified rule — slice receipts ≠ ledger closure; PASSING requires every certification-corpus program. Reverted to CONSUMER_LANDED; PR #2585 cited as additional slice evidence. - #10 `l7_algebraic_laws_witnessed`: PASSING requires exhaustive per-(algebra, inhabitant, law) §Acceptance coverage; distributivity / lattice absorption / non-AlgebraicLawKind laws remain substrate §P1. Reverted to CONSUMER_LANDED; PR #2602 cited as incremental advancement. - #11 `tc1_eta_equivalence_executable`: Director (a)-disposition 2026-05-09 held this canvas-deferred past R3 absent #1972 substrate canvas-tier work. Reverted to DECLARED-through-R3; PR #2603 cited as scaffold advancement but not retiring the canvas-deferral (which would require fresh Director ratification). Other 14 rows in the batch (#12, #14, #31, #43-52, #69) did not carry such qualifiers and stay flipped to PASSING. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * Merge origin/main into ledger-receipt sync (preserve row #13 update from main) --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Auto-opened by session-dashboard for session
quick-heron-68.Pushing to
session/quick-heron-68advances this PR.Summary
Implements R3 §1.8 gate #12
tc2_church_rosser_executableas a strict-fireBinaryDimensionReportEqualsslice: the runner materializes strategy-keyedDimensionReport<Dag>for LeftFirst vs RightFirst evaluation of the embedded TC2 program, compares reports undertc2_church_rosser_dimension_reports_equivalent_under_binary_equals, and checks top-level evaluatedValueequality. Fixture uses fixture-local role type names (tc2_church_rosser_strict_fire_*) so routing follows the predicate payload alone (INVARIANTS P2), without colliding with the deferred TC2 harness names.INVARIANTS P5(b) — exactly one checkable receipt
Explicit deferral (Dispatch-Discipline mechanism (b)): This PR expands
src/v3/compiler/src/test_runner.rsto land the gate-#12 executable. The remaining dissolution oftest_runner.rsas a parallel test-predicate authority (generatedTestClaimexecution, count-decreasing ratchet vs “count pinned”) is explicitly deferred to the tracked debt row inROADMAP.mdunder heading### Post-merge debt (2026-04-30 analyses)— bullettest_runner.rsbecoming a parallel test-predicate authority (dissolution: freeze new bespoke runner arms unless they land with a named evaluator/PB-runtime dissolution hook; convert ratchet from “count pinned” to “count decreasing” once the next substrate carrier lands). Lane: R3 Evaluator + R3 PB (managed PB-debt lane), per that row.Test plan
cargo test -p v3-compiler tc2_church_rosser_strict_fire(or full workspace perCLAUDE.md); PRciworkflow green on latest push.Worker attestation
cargo test/ CI — see Test plan.Closes #Nwhen applicable.