Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions docs/briefs/r3-cementing-discipline-pattern-2026-05-12.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,16 +67,16 @@ The rows below are the complete Gate #87 `.dag` `Compiles` placeholder set at th

## §3. Known Hand-Rust Cementing Dispositions

These are not a frozen dispatch inventory; the authoritative list is `EXPECTED_HAND_AUTHORED_TEST` in `src/v3/compiler/tests/integration/sg0_census_test.rs`. The table below records the disposition the #84 cementing-class worker must check before selecting pilots — predicate class (§2), blocker if any with owning lane, and the SG-0 hand-path census delta on a successful port. Refresh date: 2026-05-13 (G87-D5 handoff alignment). On disposition change, update this table together with the live census comment above the same row.
These are not a frozen dispatch inventory; the authoritative list is `EXPECTED_HAND_AUTHORED_TEST` in `src/v3/compiler/tests/integration/sg0_census_test.rs`. The table below records the disposition the #84 cementing-class worker must check before selecting pilots — handoff class (gate-87 residual, #84 bulk-port candidate, host-wrapper retirement, or T-LAS demonstration scope), predicate class (§2), blocker if any with owning lane, and the SG-0 hand-path census delta on a successful port. Refresh date: 2026-05-13 (G87-D5 handoff alignment). On disposition change, update this table together with the live census comment above the same row.

Census coverage check (G87-D5, refresh 2026-05-13): the four rows below are the complete set of paths under `src/v3/compiler/tests/integration/cementing/` that appear in `EXPECTED_HAND_AUTHORED_TEST` at HEAD. No new cementing-test residual rows have landed since the prior refresh; no row in this table has been ported away from Rust since the prior refresh, so the §3 dispositions stand. This brief makes no census-delta claim — it is docs-only.

| Rust module | Predicate class (§2) | Blocker / owning lane | SG-0 census delta on port |
|---|---|---|---|
| `tests/integration/cementing/cementing_provenance_origin_integration_test.rs` | C-LensOutEq once unblocked; C-HandRustBlocker today. | Expected-carrier authoring for the `Origin` sum (`NoProducer` / `MissingPort` / `MissingBehavior` / `Source(NodeId)` / `Computed(NodeId)` / `Selected(NodeId)` / `Accumulated(NodeId)`) in `.dag` `TestPredicate` expected values. Owning lane: tests-as-data carrier completeness for sum-typed lens outputs (`docs/design-tests-as-data-completeness.md` §C5). Target `.dag`: `tests/dag/t_r3_gate_87_cementing_regen_provenance.dag` already cements the seam projection; this Rust module pins the per-`Behavior` mirror that the `.dag` receipt cannot yet express. | -1 when the per-`Behavior` mirror moves into the existing `.dag`. |
| `tests/integration/cementing/complexity_lens_behavioral_completion.rs` | C-HandRustBlocker today; C-LensOutEq on unblock. | `Gate73_ReportPredicateCarriers` — `.dag` `TestClaim` predicates cannot yet consume the published `ComplexitySummary` report carrier. Owning lane: T-LBP / `docs/r3-program-plan.md` gate #73 report-predicate carrier authoring. No `.dag` target yet (waiting on the carrier). | -1 on Gate-73 unblock + same-PR move into a new `tests/dag/t_r3_*_complexity_*.dag` receipt. |
| `tests/integration/cementing/cost_lens_symbolic_consumer_test.rs` | NOT a Band-C lens-cementing row — do not select for #84 cementing-class bulk-port. | `cost_symbolic` COMPLETE-row cementing already landed as data at `tests/dag/t_r3_gate_87_cementing_regen_cost_symbolic.dag` (PR #2769 dissolved `M1_2_8_STRUCTURAL_SYMBOLIC_COST_DATA`). The residual is gate #78 `per_call_pattern_at` / `symbolic_cost_of` host-wrapper pin — owning lane: gate #78 host-wrapper retirement, NOT cementing. | 0 from this class. Census decrement happens with the gate #78 host-wrapper retirement, not by reclassifying this row as cementing. |
| `tests/integration/cementing/memory_peak_cost_basis_demo.rs` | C-HandRustBlocker today; C-LensOutEq or C-CompilesHelper on unblock depending on demonstration shape. | Parser-level `apply_lens(cost, DeclarationScope, Enforce { budget: SymbolicCost { dimension: Memory, … } })` consumer. Owning lane: T-LAS Slice B lens-fold consumer, `docs/r3-program-plan.md` gate #91; gate #94 (`memory_peak_cost_basis_demonstrated`) is the consumer-side gate this receipt evidences. No `.dag` target yet (waiting on the parser-level consumer). | -1 on gate #91 unblock + same-PR move into a new `tests/dag/t_r3_*_memory_peak_*.dag` receipt that preserves max-dominance composition and `LensEnforcement` orientation semantics. |
| Rust module | G87-D5 handoff class | Predicate class (§2) | Blocker / owning lane | SG-0 census delta on port |
|---|---|---|---|---|
| `tests/integration/cementing/cementing_provenance_origin_integration_test.rs` | Gate-87 residual, not a free #84 bulk-port pilot. | C-LensOutEq once unblocked; C-HandRustBlocker today. | Expected-carrier authoring for the `Origin` sum (`NoProducer` / `MissingPort` / `MissingBehavior` / `Source(NodeId)` / `Computed(NodeId)` / `Selected(NodeId)` / `Accumulated(NodeId)`) in `.dag` `TestPredicate` expected values. Owning lane: tests-as-data carrier completeness for sum-typed lens outputs (`docs/design-tests-as-data-completeness.md` §C5). Target `.dag`: `tests/dag/t_r3_gate_87_cementing_regen_provenance.dag` already cements the seam projection; this Rust module pins the per-`Behavior` mirror that the `.dag` receipt cannot yet express. | -1 when the per-`Behavior` mirror moves into the existing `.dag`. |
| `tests/integration/cementing/complexity_lens_behavioral_completion.rs` | #84 Band-C bulk-port candidate once the named T-LBP carrier blocker clears. | C-HandRustBlocker today; C-LensOutEq on unblock. | `Gate73_ReportPredicateCarriers` — `.dag` `TestClaim` predicates cannot yet consume the published `ComplexitySummary` report carrier. Owning lane: T-LBP / `docs/r3-program-plan.md` gate #73 report-predicate carrier authoring. No `.dag` target yet (waiting on the carrier). | -1 on Gate-73 unblock + same-PR move into a new `tests/dag/t_r3_*_complexity_*.dag` receipt. |
| `tests/integration/cementing/cost_lens_symbolic_consumer_test.rs` | Host-wrapper retirement, not Band-C / #84 cementing-class scope. | NOT a Band-C lens-cementing row — do not select for #84 cementing-class bulk-port. | `cost_symbolic` COMPLETE-row cementing already landed as data at `tests/dag/t_r3_gate_87_cementing_regen_cost_symbolic.dag` (PR #2769 dissolved `M1_2_8_STRUCTURAL_SYMBOLIC_COST_DATA`). The residual is gate #78 `per_call_pattern_at` / `symbolic_cost_of` host-wrapper pin — owning lane: gate #78 host-wrapper retirement, NOT cementing. | 0 from this class. Census decrement happens with the gate #78 host-wrapper retirement, not by reclassifying this row as cementing. |
| `tests/integration/cementing/memory_peak_cost_basis_demo.rs` | T-LAS demonstration scope, not Band-C / #84 cementing-class scope until the apply-lens consumer lands. | C-HandRustBlocker today; C-LensOutEq or C-CompilesHelper on unblock depending on demonstration shape. | Parser-level `apply_lens(cost, DeclarationScope, Enforce { budget: SymbolicCost { dimension: Memory, … } })` consumer. Owning lane: T-LAS Slice B lens-fold consumer, `docs/r3-program-plan.md` gate #91; gate #94 (`memory_peak_cost_basis_demonstrated`) is the consumer-side gate this receipt evidences. No `.dag` target yet (waiting on the parser-level consumer). | -1 on gate #91 unblock + same-PR move into a new `tests/dag/t_r3_*_memory_peak_*.dag` receipt that preserves max-dominance composition and `LensEnforcement` orientation semantics. |

Rows that remain blocked after this check route to D2 with the named blocker. Rows unblocked by later substrate/compiler work hand back to V2 for same-PR replacement artifact plus census decrement under §4. This table is the only hand-maintained disposition surface for these rows; #84 cementing-class workers must not create a parallel inventory.

Expand Down
Loading