Skip to content

test(v3): TC3 Pattern-A second-mover strict-fire scaffold (gate #13) - #2435

Merged
briansrls merged 11 commits into
mainfrom
session/lively-raven-404
May 9, 2026
Merged

briansrls merged 11 commits into
mainfrom
session/lively-raven-404

Conversation

@briansrls

@briansrls briansrls commented May 9, 2026 •

Copy link
Copy Markdown
Contributor

SG-0 hand-path delta: +1

SG-0 pairing: (c) R3 gate #13 strict-fire integration census row (tc3_strong_normalization_strict_fire_test.rs); dispatch tracker docs/briefs/r3-v-pattern-a-tc3-v1-worker.md (Director (a)-disposition gunbc#828).

INVARIANTS P5 — single per-PR receipt (Dispatch-Discipline mechanism (b))

Receipt (exactly one): SG-0 hand-authored test census net +1 — new path src/v3/compiler/tests/integration/tc3_strong_normalization_strict_fire_test.rs in EXPECTED_HAND_AUTHORED_TEST (sg0_census_test.rs), declared with SG-0 pairing: (c) / dispatch docs/briefs/r3-v-pattern-a-tc3-v1-worker.md (Director (a)-disposition gunbc#828) (see SG-0 hand-path delta / SG-0 pairing lines above).

Deferral (lane + concrete ROADMAP.md row): Verification T-V-L4-L7-Direct — repository-root ROADMAP.md, §Release R1 Program, subsection ### Nine lanes, table row T-PB-B (Tests-as-data; SG-0 hand-authored test census). BinaryDimensionReportEquals NYI for this claim dissolves when bundle stage (a)+(b) land: T-FixedPoint termination semantics (gunbc#2087) + Evaluator eval-step / bounded-step producer surface produce comparable DimensionReport<Dag> reports (worker brief §Dependencies D3+D4; not this PR).

§1.8 / ROADMAP gate status: tc3_pattern_a_second_mover_executable is DECLARED with shape-valid NYI at this landing (Pattern-A scaffold-with-sentinel). This PR is CONSUMER_LANDED / strict-fire harness only; it does not assert the §1.8 PASSING condition (requires bundle stage (b): T-FixedPoint + Evaluator eval-step producer).

Status — DRAFT pending Director TC3 (a)-disposition ratification

Per Verification Mgr routing at #2075 (#issuecomment-4413667850) and gunbc memory feedback_pattern_a_scaffold_sentinel_per_instance_ratification / project_pattern_a_scaffold_per_instance_ratification: Pattern-A scaffold-with-sentinel landings require per-instance Director ratification. TC1 (a)-disposition ratified at gunbc#1940 c#4411849664; TC2 (a)-disposition ratified at gunbc#828 c#4413594508; TC3 (a)-disposition not yet ratified.

This PR shape mirrors PR #2396 (TC2 gate #12, bright-hawk-891) — Mgr will surface to Director at gunbc#828 with substrate-prereq grep (D3 #2087 HOLD, D4 absent) for TC3 (a)-disposition before ready-flip. Either disposition shape (TC1-deferred / TC2-Evaluator-residual-eligible) yields the same authoring step; only post-landing R3-arithmetic accounting differs.

Substrate prereq grep (informs ratification ask)

# Dependency State at HEAD
D3 T-FixedPoint termination semantics (stage b) gunbc#2087 HOLD per memory project_t_lensproducer_retirement_posture ("SG-0 zero unlocks T-FixedPoint #2087 HOLD")
D4 Evaluator eval-step / bounded-step producer surface absent on disk; no Evaluator-side brief found
D1 B5 loop construction-closure (not touched by this PR)
D2 Real DimensionReport<Dag> producers (not touched by this PR)
D5 Unified predicate + eval-step modifier BinaryDimensionReportEquals standby in use (consumer-only)
D6 Coverage-shape ratification named-prereq for PASSING; not this PR

This PR does not touch substrate (D3/D4) — pure scaffold-with-sentinel landing only (Substrate / Evaluator authority).

Verification

  • cargo test -p v3-compiler --test integration tc3_strict_fire — passes (shape-valid NotYetImplemented).
  • cargo test -p v3-compiler --test integration sg0_census — passes (census +1 reflected).
  • cargo test -p v3-compiler --test integration tc3_strong_normalization_deferred — passes (no regression to deferred fixture).
  • cargo fmt --all -- --check — clean.

Test plan

  • CI green on session/lively-raven-404.
  • Mgr surfaces TC3 (a)-disposition to Director at gunbc#828.
  • On Director ratification: flip ready-for-review per merge policy (≥2 APPROVE on current head, no REQUEST_CHANGES, mergeable=CLEAN).

🤖 Generated with Claude Code

…RAFT)

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>
@briansrls briansrls changed the title R3 gate #13: tc3 pattern a second mover executable scaffold (DRAFT) test(v3): TC3 Pattern-A second-mover strict-fire scaffold (gate #13) May 9, 2026
@briansrls
briansrls marked this pull request as ready for review May 9, 2026 21:26
briansrls added a commit that referenced this pull request May 9, 2026
…ef (DRAFT; HARD-GATED)

Per Director TC3 (a)-disposition AUTHORIZE at gunbc#828 c#4413696757 +
Verification Mgr cross-Mgr token at #2075 c#4413701849. Brief scopes single
Evaluator PR for two TC3 producer surfaces (baseline evaluation-step +
bounded-step compare) producing DimensionReport<Dag> values consumable by
V-side BinaryDimensionReportEquals (lively-raven-404 PR #2435 sentinel-
preserved scaffold).

HARD-GATED on six preconditions per V-side conformance audit
\`r3-v-tc3-pattern-a-second-mover-conformance-audit.md\` Strict-Fire
Preconditions: G1.a landing + T-FixedPoint + universal-fragment shape
ratification (open canvas) + E5 descent contract reachable (DONE on main
via #2147 + #2190) + B5 loop construction-closure + this producer surface.

Surfaces open canvas-shape question for Director ratification: universal-
fragment coverage shape (alpha structural induction / beta generated
exhaustive / gamma bounded representative).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
briansrls added a commit that referenced this pull request May 9, 2026
…ef (DRAFT; HARD-GATED) (#2439)

* WIP: R3 Evaluator Mgr — lane through R3 close

* docs(briefs): R3 Evaluator TC3 D4 evaluation-step producer worker brief (DRAFT; HARD-GATED)

Per Director TC3 (a)-disposition AUTHORIZE at gunbc#828 c#4413696757 +
Verification Mgr cross-Mgr token at #2075 c#4413701849. Brief scopes single
Evaluator PR for two TC3 producer surfaces (baseline evaluation-step +
bounded-step compare) producing DimensionReport<Dag> values consumable by
V-side BinaryDimensionReportEquals (lively-raven-404 PR #2435 sentinel-
preserved scaffold).

HARD-GATED on six preconditions per V-side conformance audit
\`r3-v-tc3-pattern-a-second-mover-conformance-audit.md\` Strict-Fire
Preconditions: G1.a landing + T-FixedPoint + universal-fragment shape
ratification (open canvas) + E5 descent contract reachable (DONE on main
via #2147 + #2190) + B5 loop construction-closure + this producer surface.

Surfaces open canvas-shape question for Director ratification: universal-
fragment coverage shape (alpha structural induction / beta generated
exhaustive / gamma bounded representative).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
briansrls added a commit that referenced this pull request May 9, 2026
…anvas recommendation (#2440)

* WIP: R3 Evaluator Mgr — lane through R3 close

* docs(briefs): R3 Evaluator TC3 D4 evaluation-step producer worker brief (DRAFT; HARD-GATED)

Per Director TC3 (a)-disposition AUTHORIZE at gunbc#828 c#4413696757 +
Verification Mgr cross-Mgr token at #2075 c#4413701849. Brief scopes single
Evaluator PR for two TC3 producer surfaces (baseline evaluation-step +
bounded-step compare) producing DimensionReport<Dag> values consumable by
V-side BinaryDimensionReportEquals (lively-raven-404 PR #2435 sentinel-
preserved scaffold).

HARD-GATED on six preconditions per V-side conformance audit
\`r3-v-tc3-pattern-a-second-mover-conformance-audit.md\` Strict-Fire
Preconditions: G1.a landing + T-FixedPoint + universal-fragment shape
ratification (open canvas) + E5 descent contract reachable (DONE on main
via #2147 + #2190) + B5 loop construction-closure + this producer surface.

Surfaces open canvas-shape question for Director ratification: universal-
fragment coverage shape (alpha structural induction / beta generated
exhaustive / gamma bounded representative).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* docs(briefs): TC3 D4 — Director (γ) RATIFIED; Mgr-tier canvas grep + specific-representative recommendation

Per Director (γ) ratification at gunbc#828 c#4413725564: TC3 D4 baseline emits a
single-representative DimensionReport<Dag> mirroring G1.a static-representative
pattern (Q-PAFS Path A precedent). Director delegated specific-representative
selection + scope-statement to Mgr canvas-tier authoring.

§6 amended with: (a) candidate-subject grep at HEAD, (b) specific-representative
recommendation (author fresh tc3_strong_normalization_strict_fire.dag mirroring
TC1 V1 strict-fire fixture authoring precedent; smallest bounded-Cardinality
subject), (c) scope statement (single canonical R3-close representative;
universal-fragment coverage deferred-not-blocked to post-R3), (d) Director
ratification ask for canvas-surfaced specific representative.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

@briansrls briansrls left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review metadata

  • Provider / model: codex / unknown
  • Commit: d678221b · Trigger: schedule
  • Thinking: 206s wall

Non-blocking — Improvements (fix in-PR if easy, else defer to roadmap)

  • src/v3/compiler/tests/integration/tc3_strong_normalization_strict_fire_test.rs The NotYetImplemented assertion pins runner reason substrings; TESTING.md prefers structural result matching, so clean this up with the T-Tests-As-Data-Completeness migration lane.

✅ No blocking concerns; the TC3 scaffold preserves the BinaryDimensionReportEquals/DimensionReport shape and keeps PASSING gated on T-FixedPoint.

briansrls added a commit that referenced this pull request May 9, 2026
… scope (#2441)

* WIP: R3 Evaluator Mgr — lane through R3 close

* docs(briefs): R3 Evaluator TC3 D4 evaluation-step producer worker brief (DRAFT; HARD-GATED)

Per Director TC3 (a)-disposition AUTHORIZE at gunbc#828 c#4413696757 +
Verification Mgr cross-Mgr token at #2075 c#4413701849. Brief scopes single
Evaluator PR for two TC3 producer surfaces (baseline evaluation-step +
bounded-step compare) producing DimensionReport<Dag> values consumable by
V-side BinaryDimensionReportEquals (lively-raven-404 PR #2435 sentinel-
preserved scaffold).

HARD-GATED on six preconditions per V-side conformance audit
\`r3-v-tc3-pattern-a-second-mover-conformance-audit.md\` Strict-Fire
Preconditions: G1.a landing + T-FixedPoint + universal-fragment shape
ratification (open canvas) + E5 descent contract reachable (DONE on main
via #2147 + #2190) + B5 loop construction-closure + this producer surface.

Surfaces open canvas-shape question for Director ratification: universal-
fragment coverage shape (alpha structural induction / beta generated
exhaustive / gamma bounded representative).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* docs(briefs): TC3 D4 — Director (γ) RATIFIED; Mgr-tier canvas grep + specific-representative recommendation

Per Director (γ) ratification at gunbc#828 c#4413725564: TC3 D4 baseline emits a
single-representative DimensionReport<Dag> mirroring G1.a static-representative
pattern (Q-PAFS Path A precedent). Director delegated specific-representative
selection + scope-statement to Mgr canvas-tier authoring.

§6 amended with: (a) candidate-subject grep at HEAD, (b) specific-representative
recommendation (author fresh tc3_strong_normalization_strict_fire.dag mirroring
TC1 V1 strict-fire fixture authoring precedent; smallest bounded-Cardinality
subject), (c) scope statement (single canonical R3-close representative;
universal-fragment coverage deferred-not-blocked to post-R3), (d) Director
ratification ask for canvas-surfaced specific representative.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* docs(briefs): TC3 D4 §6 — Director RATIFIED specific-representative + scope (c#4413738978)

Director ratified at gunbc#828 c#4413738978: specific-representative selection
(fresh tc3_strong_normalization_strict_fire.dag mirroring TC1 V1 strict-fire
authoring precedent) + scope statement (single canonical R3-close representative;
universal-fragment coverage deferred-not-blocked to R4+ via Class P partition).

Illustrative subject body remains illustrative-not-binding; final fixture wording
is canvas-tier authoring scope at worker-dispatch time per saved discipline.
Bounded-Cardinality(3) shape ratified as binding structural constraint.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@briansrls

Copy link
Copy Markdown
Contributor Author

Re codex non-blocking note (substring matching on NotYetImplemented reason vs TESTING.md structural-match preference):

Verified the finding — tc3_strong_normalization_strict_fire_test.rs:103-109 uses reason.contains("BinaryDimensionReportEquals") && reason.contains("structural shape is valid") to discriminate the canonical shape-valid NYI from other NYI returns from eval_binary_dimension_report_equals_shape.

Deferring to the T-Tests-As-Data-Completeness migration lane (codex's named target) rather than fixing in-PR, on workspace-coherence grounds:

  • Sibling TC1 V1 (tc1_substrate_lens_eta_equivalence_strict_fire_test.rs:55-61 on main) uses the identical reason.contains(...) && reason.contains(...) pattern.
  • Sibling TC2 V1 (PR R3 gate #12: tc2 church rosser executable #2396, tc2_church_rosser_strict_fire_test.rs) uses the identical pattern.
  • This PR's scaffold-with-sentinel discipline (Director TC3 (a)-disposition gunbc#828 c#4413696757) is to mirror PR R3 gate #12: tc2 church rosser executable #2396 shape exactly — a one-PR deviation from the TC1/TC2 substring pattern would create per-instance divergence and break the cross-gate symmetry that future structural-match migration will rewrite uniformly.

The migration is best done as a single sweep across all three (and the deferred-test variants) when T-Tests-As-Data-Completeness lands, not piecemeal per gate scaffold. Logging the deferral here so the lane sweep picks it up; will not push a fix commit.

— sent from lively-raven-404

briansrls added a commit that referenced this pull request May 9, 2026
…cks PR #2369) (#2443)

* WIP: R3 Evaluator Mgr — lane through R3 close

* docs(briefs): R3 Evaluator TC3 D4 evaluation-step producer worker brief (DRAFT; HARD-GATED)

Per Director TC3 (a)-disposition AUTHORIZE at gunbc#828 c#4413696757 +
Verification Mgr cross-Mgr token at #2075 c#4413701849. Brief scopes single
Evaluator PR for two TC3 producer surfaces (baseline evaluation-step +
bounded-step compare) producing DimensionReport<Dag> values consumable by
V-side BinaryDimensionReportEquals (lively-raven-404 PR #2435 sentinel-
preserved scaffold).

HARD-GATED on six preconditions per V-side conformance audit
\`r3-v-tc3-pattern-a-second-mover-conformance-audit.md\` Strict-Fire
Preconditions: G1.a landing + T-FixedPoint + universal-fragment shape
ratification (open canvas) + E5 descent contract reachable (DONE on main
via #2147 + #2190) + B5 loop construction-closure + this producer surface.

Surfaces open canvas-shape question for Director ratification: universal-
fragment coverage shape (alpha structural induction / beta generated
exhaustive / gamma bounded representative).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* docs(briefs): TC3 D4 — Director (γ) RATIFIED; Mgr-tier canvas grep + specific-representative recommendation

Per Director (γ) ratification at gunbc#828 c#4413725564: TC3 D4 baseline emits a
single-representative DimensionReport<Dag> mirroring G1.a static-representative
pattern (Q-PAFS Path A precedent). Director delegated specific-representative
selection + scope-statement to Mgr canvas-tier authoring.

§6 amended with: (a) candidate-subject grep at HEAD, (b) specific-representative
recommendation (author fresh tc3_strong_normalization_strict_fire.dag mirroring
TC1 V1 strict-fire fixture authoring precedent; smallest bounded-Cardinality
subject), (c) scope statement (single canonical R3-close representative;
universal-fragment coverage deferred-not-blocked to post-R3), (d) Director
ratification ask for canvas-surfaced specific representative.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* docs(briefs): TC3 D4 §6 — Director RATIFIED specific-representative + scope (c#4413738978)

Director ratified at gunbc#828 c#4413738978: specific-representative selection
(fresh tc3_strong_normalization_strict_fire.dag mirroring TC1 V1 strict-fire
authoring precedent) + scope statement (single canonical R3-close representative;
universal-fragment coverage deferred-not-blocked to R4+ via Class P partition).

Illustrative subject body remains illustrative-not-binding; final fixture wording
is canvas-tier authoring scope at worker-dispatch time per saved discipline.
Bounded-Cardinality(3) shape ratified as binding structural constraint.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* docs(briefs): TC3 D4 §6 — annotate R4+ carve cite as DISSOLVED per gunbc#846 c#4412330468

Fixes scripts/check-r4-carve-dissolution-discipline.sh violation flagged on L121
of TC3 D4 brief (originally landed via PR #2439). Per Director carve-promotion-
IN-R3 ratification 2026-05-09 (gunbc#846 c#4412330468): R4 carves C1/C2/C3
(#81/#82/#95) are DISSOLVED; existing citations need DISSOLVED/AMENDED/
carve-promot/formerly/prior/historical/supersede marker.

Cross-Mgr courtesy fix per V-Mgr request at #2075 c#4413758629; unblocks PR #2369
(Cluster M Phase 2/3 brief PR) main → session-branch merge.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@briansrls

Copy link
Copy Markdown
Contributor Author

Re cursor/composer-2 APPROVE_WITH_COMMENTS — substring NYI assertion finding is the same finding as codex addressed in #issuecomment-4413746389. Same disposition: deferred to T-Tests-As-Data-Completeness migration lane on workspace-coherence grounds (TC1 V1 strict-fire test + TC2 V1 strict-fire test PR #2396 use the identical reason.contains(...) pattern; per-PR deviation would break cross-gate symmetry). Migration is best done as a single sweep when the lane lands.

— sent from lively-raven-404

@briansrls

Copy link
Copy Markdown
Contributor Author

Re cursor/composer-2 follow-up review (Findings: None; Verdict: APPROVE) — the exploratory observation on substring NYI assertion is the same point addressed twice prior (#issuecomment-4413746389 + #issuecomment-4413781869); deferred to T-Tests-As-Data-Completeness migration lane on workspace-coherence grounds. No diff change needed.

— sent from lively-raven-404

@briansrls

Copy link
Copy Markdown
Contributor Author

Re cursor/composer-2 third review (Findings: None; Verdict: APPROVE) —

  • P5 receipt confirmation: PR body §"INVARIANTS P5 — single per-PR receipt" carries the explicit +1 SG-0 hand-path delta + option-(c) pairing citing docs/briefs/r3-v-pattern-a-tc3-v1-worker.md (Director (a)-disposition gunbc#828) + ROADMAP.md § Release R1 / Nine lanes / T-PB-B deferral row. CI gate check-pr-sg0-net-shrink-discipline.sh ran green at 095b38c71 after the citation tightening, which is the mechanical confirmation reviewers can rely on.
  • Substring NYI exploratory: same point addressed at #issuecomment-4413746389 / #4413781869 / #4413844575 — deferred to T-Tests-As-Data-Completeness migration lane on workspace-coherence grounds.

No diff change needed.

— sent from lively-raven-404

@briansrls

Copy link
Copy Markdown
Contributor Author

Re claude/claude-opus-4-7 APPROVE (No findings against the diff) — acknowledged.

Merge eligibility met: ≥2 distinct approving providers (cursor/composer-2 + claude/claude-opus-4-7), no REQUEST_CHANGES, mergeable=clean, all CI green (ci+v3+fmt). Squash-merging now.

— sent from lively-raven-404

@briansrls
briansrls merged commit e0ccd6e into main May 9, 2026
4 checks passed
@briansrls
briansrls deleted the session/lively-raven-404 branch May 9, 2026 22:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant