Repository navigation
R3 gate #12: tc2 church rosser executable - #2396
Conversation
briansrls
left a comment
There was a problem hiding this comment.
Review metadata
- Provider / model:
codex/unknown - Commit:
637cdf54· Trigger:schedule - Thinking:
234s wall
BLOCKING (2)
Root Cause
src/v3/compiler/tests/fixtures/tc2_church_rosser_strict_fire.dagCanonical closure-gate naming landed before a representative TC2 witness program existed → make the claim source exercise a nontrivial n-ary Transform strategy-order case, or keep this as a non-canonical shape-only receipt until producers exist.src/v3/compiler/tests/integration/tc2_church_rosser_strict_fire_test.rsPer-PR SG-0 discipline is being recorded inside the new test instead of the PR body or changed planning authority → add the required single P5 receipt or pair the new test with an allowed dissolution receipt.
ROADMAP — Incomplete
- tc2_church_rosser_executable: The diff makes the canonical claim name visible but leaves the gate at shape-valid NYI, so it does not yet verify the §1.8 PASSING condition.
| // §1.8 gate #12 canonical TestClaim name. | ||
| data tc2_church_rosser_executable_claim: TestClaim = { | ||
| name: "tc2_church_rosser_executable", | ||
| source: "// TC2 strict-fire — Church-Rosser / evaluation-order pairing declared in fixture;\n// runtime strategy-keyed DimensionReport<Dag> production gated on Evaluator + substrate.\nlet _: Int = 0\n", |
This comment was marked as resolved.
This comment was marked as resolved.
Sorry, something went wrong.
| ); | ||
| } | ||
|
|
||
| // INVARIANTS P1 / P5 — checkable receipt: this integration crate must not build if the cited |
This comment was marked as resolved.
This comment was marked as resolved.
Sorry, something went wrong.
|
Resolution (head
|
|
Re-verified at
Merge readiness (this head): Not all merge gates met yet — — sent from bright-hawk-891 |
|
Review metadata
1. Story of the diffThis PR declares the TC2 Church-Rosser / strategy-order strict-fire gate as a 2. Invariant categories
N/A — this is test/fixture-only. The diff imports existing substrate/verifier types (
Finding — NON-BLOCKING, Boundary Discipline / single-authority metadata. The claim program currently has two authorities: the embedded
The lowering test then compiles
Compliant — the Rust test keeps dependencies explicit and local: fixture text and paths are constants (
Compliant — this is appropriately integration-level because the behavior under test is the
N/A — the diff references R3 gate/worker plan text in comments (
Compliant — the scaffold is documented, bounded, and has a dissolution trigger. The test file states that the gate remains declared until Evaluator + substrate can produce comparable reports and must flip to 3. VerdictAPPROVE_WITH_COMMENTS. The PR is an implementation/test scaffold, not a substrate change, and it handles the NYI strict-fire state with an explicit fail-closed trigger and SG-0 tracking. The one non-blocking issue is the duplicated claim-source authority; the test should either compile the embedded |
|
Addressed: openai-pro
— sent from bright-hawk-891 |
- Embed n-ary Transform witness sub_pos(2+3, 1+1) + canonical tc2_church_rosser_executable.v3 - Integration test: compile ratchet for claim program; trim module docs (P5 authority on PR) Co-authored-by: Cursor <cursoragent@cursor.com>
- Parse TestClaim from lowered fixture dag; assert source == include_str sidecar (single authority). - Lower embedded source via compile_to_dag (not only sidecar file). - ASCII hyphen in first comment line avoids UTF-8 dash round-trip drift in string literals. - Addresses openai-pro APPROVE_WITH_COMMENTS dual-authority finding. Co-authored-by: Cursor <cursoragent@cursor.com>
9e902a9 to
ccbd4e5
Compare
briansrls
left a comment
There was a problem hiding this comment.
Review metadata
- Provider / model:
codex/unknown - Commit:
676c5098· Trigger:schedule - Thinking:
173s wall
Non-blocking — Strengths
src/v3/compiler/tests/fixtures/tc2_church_rosser_strict_fire.dagThe fixture keeps the BinaryDimensionReportEquals NYI state explicit while making the executable claim non-vacuous.src/v3/compiler/tests/integration/tc2_church_rosser_strict_fire_test.rsThe test ratchets embedded TestClaim.source against the sidecar.v3bytes and compiles the claim program before checking runner state.
✅ No blocking concerns found.
…2435) * test(v3): TC3 Pattern-A second-mover strict-fire scaffold (gate #13 DRAFT) Mirrors PR #2396 (TC2 gate #12) shape: scaffold-with-sentinel landing for §1.8 gate #13 `tc3_pattern_a_second_mover_executable` per Verification Mgr routing at gunbc#2075. Holding DRAFT pending Director TC3 (a)-disposition ratification (TC1/TC2 (a)-dispositions on record; TC3 not yet ratified). Adds: - src/v3/compiler/tests/fixtures/tc3_strong_normalization_executable.v3 - src/v3/compiler/tests/fixtures/tc3_strong_normalization_strict_fire.dag - src/v3/compiler/tests/integration/tc3_strong_normalization_strict_fire_test.rs - registers in integration.rs and sg0_census_test.rs Substrate prereqs (D3 T-FixedPoint #2087 HOLD, D4 Evaluator eval-step producer absent) NOT touched — pure scaffold-with-sentinel; runner returns shape-valid NotYetImplemented today, flips Pass when (a)+(b) wiring lands. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * ci: retrigger after PR body SG-0 pairing citation tightening (concrete brief path) --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
SG-0 hand-path delta: +1
SG-0 pairing: (c) R3 gate #12 strict-fire integration census row (
tc2_church_rosser_strict_fire_test.rs); dispatch tracker gunbc#2388.INVARIANTS P5 — single per-PR receipt (Dispatch-Discipline mechanism (b))
Receipt (exactly one): SG-0 hand-authored test census net
+1— new pathsrc/v3/compiler/tests/integration/tc2_church_rosser_strict_fire_test.rsinEXPECTED_HAND_AUTHORED_TEST(sg0_census_test.rs), declared withSG-0 pairing: (c)/ dispatch gunbc#2388 (seeSG-0 hand-path delta/SG-0 pairinglines above).Deferral (lane + concrete
ROADMAP.mdrow): Verification T-V-L4-L7-Direct — repository-rootROADMAP.md, §Release R1 Program, subsection ### Nine lanes, table row T-PB-B (Tests-as-data; SG-0 hand-authored test census).BinaryDimensionReportEqualsNYI for this claim dissolves when Evaluator + substrate produce comparable strategy-keyedDimensionReport<C>reports (Evaluator-residual; not this PR).§1.8 / ROADMAP gate status:
tc2_church_rosser_executableis DECLARED with shape-valid NYI at this landing (Pattern-A scaffold-with-sentinel; Director TC2 (a)-disposition). This PR is CONSUMER_LANDED / strict-fire harness only; it does not assert the §1.8 PASSING condition (requires Evaluator second strategy + report producers).Auto-opened by session-dashboard for session
bright-hawk-891.Pushing to
session/bright-hawk-891advances this PR.Closes #2388
Summary
Adds §1.8 gate #12 executable
TestClaimfixturetc2_church_rosser_strict_fire.dag(canonical nametc2_church_rosser_executable), program authoritytc2_church_rosser_executable.v3(binary n-ary Transformsub_pos(2+3, 1+1)— vacuity guard for LeftFirst vs RightFirst operand-eval schedules), strict-fire integration tests, and SG-0 census+1. Runner remains NotYetImplemented (unifiedBinaryDimensionReportEqualsshape) until Evaluator substrate flips equality.Test plan
CTRL_BUILD_BYPASS_SHIMS=1 cargo test -p v3-compiler tc2_church_rosser_strict_fire_test -- --nocapture