diff --git a/docs/audit/r3-pb0-non-test-retirement-class-taxonomy-2026-05-13.md b/docs/audit/r3-pb0-non-test-retirement-class-taxonomy-2026-05-13.md new file mode 100644 index 00000000000..3bfd4f61483 --- /dev/null +++ b/docs/audit/r3-pb0-non-test-retirement-class-taxonomy-2026-05-13.md @@ -0,0 +1,119 @@ +# PB-0 — `EXPECTED_HAND_AUTHORED_NON_TEST` retirement-class taxonomy + +**Authority:** R3 Debt-Paydown Mgr (`zesty-boar-261`) — Director dispatch **msg_84abadad-35fd-4c92-8db3-0e7737adfa4f** (operator-ratified); **scope correction** **msg_dda96d21-b937-448c-a72d-f7c8a44b691c** (PM awk-range verification **msg_bda6867a**). +**Procedure:** `docs/audit/r3-sg0-trajectory-tracker.md` §2 (`awk` window on `sg0_census_test.rs`). +**Snapshot:** `main` after **PR #3046** + **PR #3048** (2026-05-14); counts from per-const `awk` windows on `sg0_census_test.rs` (tracker §2 — **only** lines between the const opener and `];` that match `^\s*"src/v3/`). + +## §0. Count discipline vs close-plan narrative + +- **Live `EXPECTED_HAND_AUTHORED_NON_TEST` paths:** **43** (this table has one row per path) — **Gap 1 / Debt-Paydown lane** scope per Director **msg_dda96d21** (awk-range extraction; PM **msg_bda6867a**). +- **Live `EXPECTED_HAND_AUTHORED_TEST` paths:** **122** — **Gap 5 / Verification lane** (`bright-bee-903` / `still-moth-538`); **not** classified here. +- **Combined `NON_TEST` + `TEST`:** **165** (`43 + 122`) — matches close-plan Σ narrative **excluding** fragments. +- **Live Σ (`NON_TEST` + `TEST` + `FRAGMENTS`):** **168** (`43 + 122 + 3`). +- **Earlier relay inflation:** loose `grep -c` over the whole `sg0_census_test.rs` file inflated a **non-test-only** headline count; **authoritative** counts are always the **per-const `awk` windows** (tracker §2). + +## §1. Classification legend + +- **(a) RETIREABLE NOW** — no named structural blocker in §3 (**NON_TEST**) or §4 (**FRAGMENTS**); suitable for near-term cycle worker PRs under `docs/briefs/r3-pb0-non-test-retirement-worker-cycle2.md` (still subject to P5 / same-PR dissolution receipts). +- **(b) BLOCKED ON NAMED PREREQ** — cite §1.8 row, Gap id, or audit doc anchor. +- **(c) BLOCKED ON NEW CANVAS** — needs new or expanded Mgr canvas before census line can drop (or first-pass taxonomy bucket pending refinement). + +## §1.1 Bootstrap / regen `(b)` cluster — canonical ownership anchors + +Several §3 rows share the same **substrate class**: `build.rs`, `src/.../bin/regen_*`, `src/.../bin/{gunbc_ci,r1c_e_emit_gates,self_host_fixed_point}.rs`, `bootstrap*.rs`, `regen_*emit.rs`, and `src/v3/compiler/src/regen_tokenize.rs` — **P5 atomic migration** + **Cluster M**–sequenced regen/bootstrap authority (not opportunistic single-PR census drops). + +**Program / gap hooks** + +- `docs/r3-program-plan.md` §1.8 — **T-Tests-As-Data-Completeness** rows **#84–#87** (bulk-port, cementing harness, `regen.dag` corpus where cited). +- `docs/r3-actual-close-plan.md` — **Gap 5** (Cluster M Phase **3** bulk-port + generator-manifest narrative). + +**Sequencing + lane ownership** + +- `docs/audit/r3-cluster-m-sequencing-plan-2026-05-09.md` — Cluster **M** phase ordering vs gate **#84/#85/#87** work. + +**Regen / lens-producer retirement briefs (artifact-specific entry points)** + +- `docs/briefs/r3-pb-t-lensproducer-sub3-regen-lens-retirement.md` — `regen_lens` / gate **#7** retirement thread. +- `docs/briefs/r3-pb-regen-lens-first-binshim-target-retirement-readiness.md` + `docs/briefs/r3-pb-regen-lens-consumer-audit.md` — regen_lens readiness + consumer audit. +- `docs/briefs/pb1-e-parse-surface-free-bootstrap-regen-p5-receipt.md` — parse-surface / bootstrap regen **P5** receipt discipline. + +**Census authority note:** SG-6 `regen_lens.rs` consolidation + `REGEN_OUTPUTS` / `regen.dag` pairing is documented in the preamble above `EXPECTED_HAND_AUTHORED_NON_TEST` in `src/v3/compiler/tests/integration/sg0_census_test.rs` (line numbers drift; grep the const). + +In §3, rows that reference **§1.1** inherit this anchor set instead of repeating a generic “Cluster M + `regen_*` briefs” sentence per line. + +## §2. Track A — Cycle-2 named scope (**landed** PR #3046) + +Director **msg_84abadad** Track A named **six** surfaces; **PR #3046** (swift-bee-15) **merged 2026-05-14**. **Five** former `NON_TEST` `.rs` census lines (`gunbc_ci.rs`, `integration_rs_wiring_scan.rs`, `lens_declaration_apply.rs`, `lens_t_las_carrier.rs`, `r3_gate_87_cementing_regen_runner_suites.rs`) **retired from** `EXPECTED_HAND_AUTHORED_NON_TEST` **with same-PR receipts** — nested `pub mod` / API surfaces folded under `cementing_dispatch.rs`, bounded lens application body recorded under `EXPECTED_HAND_AUTHORED_FRAGMENTS` as `lens_declaration_apply_body.txt` (see census comments on `main`). **`cementing_dispatch.rs`** remains a **single** `NON_TEST` hub row until gate **#87** / substrate dissolution completes. + +**PR #3048** (bright-seal-412, Director **msg_5d7f3491** cycle-4) **merged same window**: **seven** additional `NON_TEST` paths retired (see [`r3-pb0-non-test-retirement-worker-cycle4.md`](../briefs/r3-pb0-non-test-retirement-worker-cycle4.md) §0.1 historical table). Row-85 read surface moved to generated `pb_method_template_projection_generated.rs` + `REGEN_OUTPUTS` receipt — not a silent census orphan. + +## §3. Per-path taxonomy (all `NON_TEST` rows) + +Rows follow **`EXPECTED_HAND_AUTHORED_NON_TEST`** declaration order on `main` (post–**#3046**, **#3048**). **Seven** paths retired in **PR #3048** (bright-seal-412 cycle-4) are **historical** — see §5 changelog; they must **not** reappear here unless the census regresses. + +| Path | Class | Blocker / rationale | +|------|-------|---------------------| +| `src/v3/compiler/benches/tier3_mirror_perf.rs` | **(b)** | §1.8 #2 `tier3_computation_mirror_dissolved` PASSING + Evaluator/`std.computation`; see `docs/audit/r3-tier3-computation-mirror-consumer-prestage-2026-05-13.md`. | +| `src/v3/compiler/build.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/bin/gunbc_ci.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/bin/r1c_e_emit_gates.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/bin/regen_bootstrap.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/bin/regen_lens.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/bin/regen_parse.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/bin/regen_parse_tables.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/bin/regen_tokenize.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/bin/regen_v3.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/bin/self_host_fixed_point.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/bootstrap.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/bootstrap_regen_fresh.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/cementing_dispatch.rs` | **(a)** | Post–PR #3046 **hub**: gate **#87** `CementingDispatchMatchesProjection` host + nested former cycle-2 surfaces (census comment block); retire when predicate substrate owns the walk / T-WAD + PB-Runtime arcs close — not an orphan drop. | +| `src/v3/compiler/src/dag.rs` | **(b)** | Core compiler host; dissolution bundles multiple §1.8 / substrate gates — needs sequenced program, not opportunistic census drop. | +| `src/v3/compiler/src/dag/builder.rs` | **(b)** | DAG substrate modules; tied to Tier3 + effects + cardinality program rows — retire with owning substrate move, not isolated. | +| `src/v3/compiler/src/dag/cardinality_payload.rs` | **(b)** | DAG substrate modules; tied to Tier3 + effects + cardinality program rows — retire with owning substrate move, not isolated. | +| `src/v3/compiler/src/dag/effects.rs` | **(b)** | DAG substrate modules; tied to Tier3 + effects + cardinality program rows — retire with owning substrate move, not isolated. | +| `src/v3/compiler/src/dag/ports.rs` | **(b)** | DAG substrate modules; tied to Tier3 + effects + cardinality program rows — retire with owning substrate move, not isolated. | +| `src/v3/compiler/src/diagnostics.rs` | **(b)** | Core compiler host; dissolution bundles multiple §1.8 / substrate gates — needs sequenced program, not opportunistic census drop. | +| `src/v3/compiler/src/dimension.rs` | **(b)** | Core compiler host; dissolution bundles multiple §1.8 / substrate gates — needs sequenced program, not opportunistic census drop. | +| `src/v3/compiler/src/emit.rs` | **(b)** | Core compiler host; dissolution bundles multiple §1.8 / substrate gates — needs sequenced program, not opportunistic census drop. | +| `src/v3/compiler/src/emit/python_target.rs` | **(b)** | Emit surface; Gap 13 / R2-Grounding + collection-ops identity gates per adjacent census comments. | +| `src/v3/compiler/src/emit/rust_target.rs` | **(b)** | Emit surface; Gap 13 / R2-Grounding + collection-ops identity gates per adjacent census comments. | +| `src/v3/compiler/src/emit_rust.rs` | **(b)** | R1C-E / emit-rust host harness; shared with `r1c_e_emit_gates` bin — dissolve with R1 close / `.dag` TestClaim migration per census notes. | +| `src/v3/compiler/src/emit_rust_roundtrip_fixtures.rs` | **(b)** | R1C-E / emit-rust host harness; shared with `r1c_e_emit_gates` bin — dissolve with R1 close / `.dag` TestClaim migration per census notes. | +| `src/v3/compiler/src/infer.rs` | **(b)** | Core compiler host; dissolution bundles multiple §1.8 / substrate gates — needs sequenced program, not opportunistic census drop. | +| `src/v3/compiler/src/lib.rs` | **(b)** | Core compiler host; dissolution bundles multiple §1.8 / substrate gates — needs sequenced program, not opportunistic census drop. | +| `src/v3/compiler/src/lower.rs` | **(b)** | Core compiler host; dissolution bundles multiple §1.8 / substrate gates — needs sequenced program, not opportunistic census drop. | +| `src/v3/compiler/src/memory_peak_cost.rs` | **(b)** | Gate #94 cost-lens memory-peak authority; dissolve with cost-lens substrate program. | +| `src/v3/compiler/src/omni_shape_b_openapi.rs` | **(b)** | Shape B OpenAPI transitional host; dissolve when `.dag` owns projection end-to-end per census comment. | +| `src/v3/compiler/src/pipeline_authority.rs` | **(b)** | Core compiler host; dissolution bundles multiple §1.8 / substrate gates — needs sequenced program, not opportunistic census drop. | +| `src/v3/compiler/src/post_emit_verifier.rs` | **(b)** | Core compiler host; dissolution bundles multiple §1.8 / substrate gates — needs sequenced program, not opportunistic census drop. | +| `src/v3/compiler/src/process_exit.rs` | **(b)** | PB-1 Item 5 host mirror of `dsl/std/process.dag` — dissolve with PB-1 bin-shim program. | +| `src/v3/compiler/src/r1c_e_gates.rs` | **(b)** | R1C-E shared check API; scaffold until R1 close per census comment. | +| `src/v3/compiler/src/r3_fc_lane2_loop_witness.rs` | **(a)** | Narrow T-Free-Consequences staging witness; candidate for cycle-3+ scoped dissolution once lowering owns lane2 text (Mgr provisional (a)). | +| `src/v3/compiler/src/regen_bootstrap_emit.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/regen_parse_emit.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/regen_parse_tables_emit.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/regen_tokenize.rs` | **(b)** | §**1.1** bootstrap/regen cluster — P5 atomic migration; not a single-PR retirement without Cluster M / regen brief canvas (anchors in §1.1). | +| `src/v3/compiler/src/self_host_receipt_p0.rs` | **(b)** | DB-8 receipt schema host mirror; dissolve when `.dag`/generated owns schema per census header comment. | +| `src/v3/compiler/src/test_runner.rs` | **(b)** | Core compiler host; dissolution bundles multiple §1.8 / substrate gates — needs sequenced program, not opportunistic census drop. | +| `src/v3/compiler/src/wall_clock_ratchet_manifest.rs` | **(a)** | Ratchet manifest host; candidate for batch with timing/WAD receipts (Mgr provisional (a)). | + +## §4. `EXPECTED_HAND_AUTHORED_FRAGMENTS` (T-PB-A / §1.8 gate **#8** companion) + +Same **(a)/(b)/(c)** lens as §3; **3** rows at this snapshot (`awk` window on `EXPECTED_HAND_AUTHORED_FRAGMENTS`). These are **non-`.rs` scaffolds** counted in Σ alongside `NON_TEST` for pure-bootstrap inventory (`project_r3_close_load_bearing_non_test_inventory` framing) — **not** the **122** `EXPECTED_HAND_AUTHORED_TEST` slice. + +| Path | Class | Blocker / rationale | +|------|-------|---------------------| +| `src/v3/compiler/lens_declaration_apply_body.txt` | **(b)** | **PB-0 cycle-2** (PR #3046): bounded lens application body split out of retired `lens_declaration_apply.rs`; dissolves with substrate-owned CI + cementing receipts / PB-Runtime lens surface (see adjacent `NON_TEST` comment on `cementing_dispatch.rs` on `main`). | +| `src/v3/compiler/parse_parser_body.txt` | **(b)** | **SG-2b / SG-3f** parser-body reflection follow-on; census header ties dissolution to the same trigger as this scaffold’s own header (`parse_parser_body.txt` — not an opportunistic delete without SG program). | +| `src/v3/compiler/src/lens_testgen_body.txt` | **(b)** | **Lens testgen** producer-body scaffold; dissolves when producer-owned/generated path owns the same surface (see census commentary on `lens_testgen` / gate **#6** retirement arc — not isolated fragment-only work). | + +**Director read (msg_5b04ea2c):** all three rows classify under **(b) named prereq**-shaped blockers (SG / lens-testgen / cementing programs), **same debt grammar** as the bulk of the 43-row `NON_TEST` table — they **fold into Gap 1 / gate #8** ratchet work rather than minting a **third** parallel “fragment-only” close program. No separate Director sub-program request from this pass. + +## §5. Changelog + +| Date | Change | +|------|--------| +| 2026-05-13 | Initial taxonomy + Track A six-path dispatch list (Director msg_84abadad). | +| 2026-05-13 | §4: `EXPECTED_HAND_AUTHORED_FRAGMENTS` (2) classified (Director msg_5b04ea2c). | +| 2026-05-14 | Reconcile §0/§2/§3/§4 with **PR #3046** landed on `main`: **50** `NON_TEST`, **3** `FRAGMENTS`; remove retired `.rs` rows; refresh `cementing_dispatch` + fragment rows. | +| 2026-05-14 | Reconcile §0/§3 with **PR #3048** (cycle-4 seven-path retirement): **43** `NON_TEST`; §3 rows match live `awk` window only (drop stale paths). | diff --git a/docs/briefs/r3-pb0-non-test-retirement-worker-cycle3.md b/docs/briefs/r3-pb0-non-test-retirement-worker-cycle3.md new file mode 100644 index 00000000000..04d9fc38df7 --- /dev/null +++ b/docs/briefs/r3-pb0-non-test-retirement-worker-cycle3.md @@ -0,0 +1,66 @@ +--- +status: "Mgr-authored worker brief (dispatch — PB-0 cycle 3, parallel with cycle 2)" +authority_parent: "R3 Debt-Paydown Mgr (zesty-boar-261)" +authoring_date: 2026-05-13 +director_dispatch: "msg_5d7f3491-889b-4342-bf9f-8a97b8e55431" +program_anchor: "PB-0 cycle 3 — sustained EXPECTED_HAND_AUTHORED_NON_TEST retirement (same bars as cycles 1–2)" +predecessor_brief: "docs/briefs/r3-pb0-non-test-retirement-worker-cycle2.md" +taxonomy_anchor: "docs/audit/r3-pb0-non-test-retirement-class-taxonomy-2026-05-13.md" +--- + +# PB-0 cycle 3 — SG-0 NON_TEST hand-Rust retirement worker brief + +## §0. Dispatch position (named scope) + +**Director:** `msg_5d7f3491-889b-4342-bf9f-8a97b8e55431` — **operator-ratified parallel cycle** with **swift-bee-15** (cycle 2 / PR #3046). **Capacity:** this is **one of three** concurrent PB-0 retirement cycles until a cycle merges and frees headroom. + +**Relationship to cycles 1–2:** Identical **acceptance geometry** and **retirement source priority** as [`r3-pb0-non-test-retirement-worker.md`](r3-pb0-non-test-retirement-worker.md) and [`r3-pb0-non-test-retirement-worker-cycle2.md`](r3-pb0-non-test-retirement-worker-cycle2.md). Cycle 3 is another **merged-PR slice** of the same standing program. + +**Classification trail:** Prefer taxonomy **(a)** rows where available; this batch leads with the two remaining taxonomy **(a)** rows not assigned to cycle 2, then adds **narrow receipt / scaffold** hosts from the live census comments (same dissolution discipline as cycle 2 — **P5 / same-PR receipts** per `INVARIANTS.md` Dispatch-Discipline **(b)**). + +### §0.1 Named `EXPECTED_HAND_AUTHORED_NON_TEST` paths (this worker only) + +**Disjoint from cycle-2’s six paths** (`integration_rs_wiring_scan.rs`, `cementing_dispatch.rs`, `r3_gate_87_cementing_regen_runner_suites.rs`, `gunbc_ci.rs`, `lens_declaration_apply.rs`, `lens_t_las_carrier.rs`). Retire **these eight** paths in **this** PR (or fewer only if P5 forces a split — then PR body **(i–iii)** + bound follow-up): + +| # | Path | +|---|------| +| 1 | `src/v3/compiler/src/r3_fc_lane2_loop_witness.rs` | +| 2 | `src/v3/compiler/src/wall_clock_ratchet_manifest.rs` | +| 3 | `src/v3/compiler/src/memory_peak_cost.rs` | +| 4 | `src/v3/compiler/src/omni_shape_b_openapi.rs` | +| 5 | `src/v3/compiler/src/process_exit.rs` | +| 6 | `src/v3/compiler/src/self_host_receipt_p0.rs` | +| 7 | `src/v3/compiler/src/r1c_e_gates.rs` | +| 8 | `src/v3/compiler/src/emit_rust_roundtrip_fixtures.rs` | + +**Live census anchor:** `src/v3/compiler/tests/integration/sg0_census_test.rs` — grep for `const EXPECTED_HAND_AUTHORED_NON_TEST`. + +--- + +**Dispatch.** Same **Dispatch** paragraph as cycle 2 brief (cadence **5–10** when **`before ≥ 5`**, tail bar, P5 **(i–iii)** split, `feedback_ratchet_only_down`). **This brief additionally pins** the eight paths in §0.1 as the **visible dependency tree** for operator accountability. + +**Closure alignment.** Same as cycle 2 — §1.8 gate **#8** `sg0_non_test_zero`; **NON_TEST** slice unless an explicit fragments row is separately justified. + +## Read first + +- [`docs/audit/r3-sg0-trajectory-tracker.md`](../audit/r3-sg0-trajectory-tracker.md) §2 + §4.1. +- [`docs/audit/r3-pb0-non-test-retirement-class-taxonomy-2026-05-13.md`](../audit/r3-pb0-non-test-retirement-class-taxonomy-2026-05-13.md) §0–§3 (classification; rows **(b)** in the table still require **named receipts** — do not orphan-drop). +- [`ROADMAP.md`](../../ROADMAP.md) T-PB-A row. +- [`INVARIANTS.md`](../../INVARIANTS.md) Dispatch-Discipline **(b)**. +- [`TESTING.md`](../../TESTING.md) gate **#87** context (distinguish transient cementing wiring vs authority retirement). + +## Retirement source priority (Director-ordered) + +Same ordered list as [`r3-pb0-non-test-retirement-worker-cycle2.md`](r3-pb0-non-test-retirement-worker-cycle2.md) §“Retirement source priority”. **Cycle-3 scope** is pre-filtered to §0.1; execute dissolution **in dependency order within the PR** when imports/call graphs demand it. + +## Per-PR acceptance checklist + +Same checklist as [`r3-pb0-non-test-retirement-worker-cycle2.md`](r3-pb0-non-test-retirement-worker-cycle2.md) §“Per-PR acceptance checklist”. + +## STOP / escalate + +Same as cycle 2 brief §“STOP / escalate”. + +## Deliverable + +One squash-ready PR: retire the §0.1 paths (count proof vs **all** `NON_TEST` lines, not only this batch), tests green, SG-0 discipline satisfied, each removed path paired with a **one-line dissolution receipt** in the PR body. diff --git a/docs/briefs/r3-pb0-non-test-retirement-worker-cycle4.md b/docs/briefs/r3-pb0-non-test-retirement-worker-cycle4.md new file mode 100644 index 00000000000..a3a6b575aab --- /dev/null +++ b/docs/briefs/r3-pb0-non-test-retirement-worker-cycle4.md @@ -0,0 +1,66 @@ +--- +status: "Mgr-authored worker brief (dispatch — PB-0 cycle 4; **landed** PR #3048)" +authority_parent: "R3 Debt-Paydown Mgr (zesty-boar-261)" +authoring_date: 2026-05-13 +director_dispatch: "msg_5d7f3491-889b-4342-bf9f-8a97b8e55431" +program_anchor: "PB-0 cycle 4 — sustained EXPECTED_HAND_AUTHORED_NON_TEST retirement (same bars as cycles 1–2)" +predecessor_brief: "docs/briefs/r3-pb0-non-test-retirement-worker-cycle2.md" +taxonomy_anchor: "docs/audit/r3-pb0-non-test-retirement-class-taxonomy-2026-05-13.md" +--- + +# PB-0 cycle 4 — SG-0 NON_TEST hand-Rust retirement worker brief + +## §0. Dispatch position (named scope) + +**Director:** `msg_5d7f3491-889b-4342-bf9f-8a97b8e55431` — **operator-ratified parallel cycle** with **swift-bee-15** (cycle 2 / PR #3046) and **cycle 3** (separate work item). **Capacity:** this is **one of three** concurrent PB-0 retirement cycles until a cycle merges and frees headroom. + +**Relationship to cycles 1–2:** Identical **acceptance geometry** and **retirement source priority** as [`r3-pb0-non-test-retirement-worker.md`](r3-pb0-non-test-retirement-worker.md) and [`r3-pb0-non-test-retirement-worker-cycle2.md`](r3-pb0-non-test-retirement-worker-cycle2.md). + +**Classification trail:** Taxonomy rows for several of these paths are **(b)** today — **named prereq / substrate bundles** in §3; this dispatch still **names** them for operator visibility. Workers **STOP** rather than orphan-drop if a path cannot lawfully retire in one PR under P5; use PR-body **(i–iii)** for a **largest strict subset** + bound follow-up when needed. + +### §0.1 Named scope (**landed** — PR #3048) + +**Bright-seal-412** merged **PR #3048** (2026-05-14). The **seven** paths below were the **dispatch-time** `NON_TEST` retirement targets (disjoint from cycle-2 + cycle-3 batches); they **no longer appear** in `EXPECTED_HAND_AUTHORED_NON_TEST` on `main`. Row-85 projection for method templates is now **`pb_method_template_projection_generated.rs`** (generated / `REGEN_OUTPUTS`); do **not** resurrect the deleted hand file name as a census path. + +| # | Path (historical) | +|---|-------------------| +| 1 | `src/v3/compiler/src/complexity_lattice.rs` | +| 2 | `src/v3/compiler/src/cost_basis_declaration.rs` | +| 3 | `src/v3/compiler/src/enforced_lens_application.rs` | +| 4 | `src/v3/compiler/src/int_literal_ranges.rs` | +| 5 | `src/v3/compiler/src/pb_method_template_projection.rs` | +| 6 | `src/v3/compiler/src/emit/collection_ops_method_contract.rs` | +| 7 | `src/v3/compiler/src/emit_rust_bin_shim.rs` | + +**Live census anchor:** `src/v3/compiler/tests/integration/sg0_census_test.rs` — grep for `const EXPECTED_HAND_AUTHORED_NON_TEST` (taxonomy §3 stays row-aligned with the **live** slice). + +--- + +**Dispatch.** Same **Dispatch** paragraph as cycle 2 brief (cadence **5–10** when **`before ≥ 5`**, tail bar, P5 **(i–iii)** split, `feedback_ratchet_only_down`). **This brief additionally pins** the seven paths in §0.1 as the **visible dependency tree** for operator accountability. + +**Closure alignment.** Same as cycle 2 — §1.8 gate **#8** `sg0_non_test_zero`; **NON_TEST** slice unless an explicit fragments row is separately justified. + +## Read first + +- [`docs/audit/r3-sg0-trajectory-tracker.md`](../audit/r3-sg0-trajectory-tracker.md) §2 + §4.1. +- [`docs/audit/r3-pb0-non-test-retirement-class-taxonomy-2026-05-13.md`](../audit/r3-pb0-non-test-retirement-class-taxonomy-2026-05-13.md) §0–§3. +- [`docs/decisions/r3-row85-method-template-read-surface.md`](../decisions/r3-row85-method-template-read-surface.md) — **pb_method_template_projection** authority context. +- [`ROADMAP.md`](../../ROADMAP.md) T-PB-A row. +- [`INVARIANTS.md`](../../INVARIANTS.md) Dispatch-Discipline **(b)**. +- [`TESTING.md`](../../TESTING.md) gate **#87** context. + +## Retirement source priority (Director-ordered) + +Same ordered list as [`r3-pb0-non-test-retirement-worker-cycle2.md`](r3-pb0-non-test-retirement-worker-cycle2.md) §“Retirement source priority”. **Cycle-4 scope** is pre-filtered to §0.1. + +## Per-PR acceptance checklist + +Same checklist as [`r3-pb0-non-test-retirement-worker-cycle2.md`](r3-pb0-non-test-retirement-worker-cycle2.md) §“Per-PR acceptance checklist”. + +## STOP / escalate + +Same as cycle 2 brief §“STOP / escalate”. + +## Deliverable + +One squash-ready PR: retire the §0.1 paths (count proof vs **all** `NON_TEST` lines), tests green, SG-0 discipline satisfied, each removed path paired with a **one-line dissolution receipt** in the PR body. diff --git a/src/v3/compiler/tests/integration/sg0_census_test.rs b/src/v3/compiler/tests/integration/sg0_census_test.rs index b63e03ee9cd..8db31527c3a 100644 --- a/src/v3/compiler/tests/integration/sg0_census_test.rs +++ b/src/v3/compiler/tests/integration/sg0_census_test.rs @@ -234,6 +234,13 @@ fn emit_production_code_has_no_declaration_by_name_calls() { // receipt-key surface (stable JSON field names for `self_host_fixed_point` trend reads), // not generated output. Dissolution: fold into a `.dag` or generated authority when one // owns receipt schema; until then this module + census line are the bounded ratchet receipt. +// +// PB-0 / Director **msg_84abadad** + scope correction **msg_dda96d21** (2026-05-13): **43-entry** +// `NON_TEST` + **3** `FRAGMENTS` taxonomy (§3 + §4) in +// `docs/audit/r3-pb0-non-test-retirement-class-taxonomy-2026-05-13.md` +// (substitute visibility for dependency tree; not enforcement — see INVARIANTS). Inline +// `// blocked: …` comments on individual census lines are deferred until taxonomy stabilizes +// across sibling merges. const EXPECTED_HAND_AUTHORED_NON_TEST: &[&str] = &[ // R3 C1 perf-budget bench skeleton: Phase-1 Criterion harness for // `tier3_mirror_dissolution_perf_within_budget` per