Skip to content
Merged
Show file tree
Hide file tree
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
20 changes: 10 additions & 10 deletions docs/briefs/r2-grounding-manager.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,11 +62,11 @@ The 8-question design dialogue resolved into a cadence whose merge gates worker
| T-Ground-Python | L | **PARTIALLY LANDED** — `dsl/extdeps/languages/python/primitives.dag` landed via #1080 (lively-wolf-462); remainder fill queue / gated on PR-G | Python primitive declarations |
| T-Ground-Go | L | **PARTIALLY LANDED** — `go/primitives.dag` spec tranche 1 landed (`ac765ce10`); additional Go primitives via #1046 (bright-otter-594); remainder fill queue / gated on PR-H | Go primitive declarations |
| **T-Ground-Coercion-Fold** *(NEW; replaces engine framing)* | S | **PRE-CASCADE FOOTPRINT LANDED** via PR #989 + commit `c0cc8b260` (Phase 2 pilot-list enumeration slice 1; mirror-consistency probe). Per `design-emission-model.md` §"Affected lanes" option (c): hold further engine-framed slices + queue cleanup wave once LanguageSpec lands. Future slices gated on PR-F + Substrate ValueBody-list/sum | Refinement composition as structural fold over substrate facts |
| **T-Ground-LanguageSpec** *(NEW)* | M | NOT YET AUTHORED — **gated on PR-I merge** | Structured language-spec substrate; absorbs Reflective Pattern E retirement; per-primitive `RealizationCost` |
| **T-Ground-Lifetime-Analyzer** *(NEW; no annotations)* | M | NOT YET AUTHORED | Structural ownership/lifetime derivation from program use |
| **T-Ground-Diagnostic** *(NEW)* | S | **BRIEF LANDED** — [`t-ground-diagnostic.md`](t-ground-diagnostic.md) | Declared structural ordering for diagnostic enumeration; `EmissionDiagnostic` carrier (implementation pending) |
| **T-Ground-CrossTarget-Meta** *(NEW)* | S | **BRIEF LANDED** — [`t-ground-cross-target-meta.md`](t-ground-cross-target-meta.md); **implementation gated on PR-J merge (likely no-op)** | Cross-target uniformity meta-spec; owns L6 per-(form × target) load-completeness check |
| T-Ground-Tests | S | NOT YET AUTHORED | L4 routing correctness verification |
| **T-Ground-LanguageSpec** *(NEW)* | M | **BRIEF LANDED** — [`t-ground-languagespec.md`](t-ground-languagespec.md) (#1168 + nits #1172 + rename #1174); **PHASE 1 LANDED** (registry-backed row population — Rust 9 + Python 18 + Go 13 rows via #1195 + hot-fix #1196); **PHASE 2 PARTIAL** (dead `MethodTranslation` × 3 retired via #1210 + ROADMAP closure #1213); remaining emit-side authorities (`*_method_templates`, `rust_simple_method_specs`, `rust_method_wraps_result`) deferred to Pure-Bootstrap-Zero / v2 retirement per audit. Phase 1.5 (Rust higher-order rows; gated on Substrate `MethodEmitTemplate` sum) + B (`RealizationCost` per-primitive; gated on PR-I) outstanding. | Structured language-spec substrate; absorbs Reflective Pattern E retirement; per-primitive `RealizationCost` |

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.

BLOCKING: The new LanguageSpec status names MethodEmitTemplate as the Phase 1.5 substrate gate, but that type appears nowhere else in the PR context while the lane brief still uses MethodTemplateContract, leaving the gate ungrounded against THESIS epistemic stacking / P2 single authority.

| **T-Ground-Lifetime-Analyzer** *(NEW; no annotations)* | M | **BRIEF LANDED** — [`t-ground-lifetime-analyzer.md`](t-ground-lifetime-analyzer.md) (#1177); **IMPL LANDED** — R2 scope (a)/(b)/(c) (#1206) + fail-closed Dag-extraction fix (#1218) + path-prefix authority transitional-staging note (#1220) | Structural ownership/lifetime derivation from program use |
| **T-Ground-Diagnostic** *(NEW)* | S | **BRIEF LANDED** — [`t-ground-diagnostic.md`](t-ground-diagnostic.md) (#1216); implementation pending | Declared structural ordering for diagnostic enumeration; `EmissionDiagnostic` carrier |
| **T-Ground-CrossTarget-Meta** *(NEW)* | S | **BRIEF LANDED** — [`t-ground-cross-target-meta.md`](t-ground-cross-target-meta.md) (#1224 + L6 form-axis anchor #1229); **implementation gated on PR-J merge (likely no-op)** | Cross-target uniformity meta-spec; owns L6 per-(form × target) load-completeness check |
| T-Ground-Tests | S | **BRIEF LANDED** — [`t-ground-tests.md`](t-ground-tests.md) (#1223); implementation pending — gated on Q4 lock (PR-I) + Coercion-Fold body | L4 routing correctness verification |
| T-Ground-Dissolve | S | NOT YET AUTHORED | Track-13 dissolution: delete `TypeCheckpoint` / `InhabitantDecl` / `carrier: String` |

## Cross-program dependencies
Expand Down Expand Up @@ -140,11 +140,11 @@ Authored:
Pending — post-spawn manager-authored autonomously:
- T-Ground-Rust full implementation (gated on PR-F)
- T-Ground-Coercion-Fold Phase 2 implementation (gated on PR-F + Substrate ValueBody-list/sum)
- T-Ground-LanguageSpec (gated on PR-I; absorbs target primitive/range duplication retirement)
- T-Ground-Lifetime-Analyzer (M; structural ownership/lifetime derivation)
- T-Ground-Diagnostic (S) — brief [`t-ground-diagnostic.md`](t-ground-diagnostic.md)
- T-Ground-CrossTarget-Meta (S; gated on PR-J no-op confirmation) — brief [`t-ground-cross-target-meta.md`](t-ground-cross-target-meta.md)
- T-Ground-Tests
- T-Ground-LanguageSpec brief + Phase 1 + Phase 2 partial — **LANDED** (#1168 + #1172 + #1174 + #1195 + #1196 + #1210 + #1213); Phase 1.5 (Rust higher-order; gated on Substrate `MethodEmitTemplate` sum) + B (`RealizationCost` per-primitive; gated on PR-I) outstanding
- T-Ground-Lifetime-Analyzer brief + R2 scope (a)/(b)/(c) impl — **LANDED** (#1177 + #1206 + #1218 + #1220); R3 scope (d)/(e)/(f) closures/async/Pin folds into R3 `T-LensProducer-Retirement`
- T-Ground-Diagnostic (S) — brief [`t-ground-diagnostic.md`](t-ground-diagnostic.md) **LANDED** (#1216); implementation pending
- T-Ground-CrossTarget-Meta (S; gated on PR-J no-op confirmation) — brief [`t-ground-cross-target-meta.md`](t-ground-cross-target-meta.md) **LANDED** (#1224 + #1229); implementation pending
- T-Ground-Tests (S) — brief [`t-ground-tests.md`](t-ground-tests.md) **LANDED** (#1223); implementation pending — gated on Q4 (PR-I) + Coercion-Fold body
- T-Ground-Dissolve (Track-13 cleanup)
- T-Ground-Python
- T-Ground-Go
Expand Down
4 changes: 2 additions & 2 deletions docs/briefs/t-ground-cross-target-meta.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@

**Status:** PROPOSAL — **brief authoring dispatchable now** (per R2 Grounding Manager inbox #1203 / #1133, 2026-04-29). **Implementation gated** on **PR-J** merge with **Q5 no-op confirmation** (cardinality-as-connectives axis already collapsed via PR-PreF `Interval<Cardinal>`; PR-J is the single cadence trigger before worker impl dispatch).

**Lane:** T-Ground-CrossTarget-Meta (S) — item **9** of 11 in [`r2-grounding-manager.md`](r2-grounding-manager.md) (lane description line 35, lane row line 68, pending list line 145).
**Lane:** T-Ground-CrossTarget-Meta (S) — item **9** of 11 in [`r2-grounding-manager.md`](r2-grounding-manager.md) (lane description line 35, lane row line 68, pending list line 146).

**Manager:** R2 Grounding Manager ([`r2-grounding-manager.md`](r2-grounding-manager.md)).

**Lineage / authorities consumed (no re-litigation):**
- R2 manager lane row + cadence row + acceptance gate: [`r2-grounding-manager.md`](r2-grounding-manager.md) lines 35, 52 (PR-J → this lane), 68, 128 (`cross_target_meta_l6_load_completeness_landed`), 145.
- R2 manager lane row + cadence row + acceptance gate: [`r2-grounding-manager.md`](r2-grounding-manager.md) lines 35, 52 (PR-J → this lane), 68, 128 (`cross_target_meta_l6_load_completeness_landed`), 146.
- Modeling problem 7 + L6 placement + cross-product shape: [`docs/design-emission-model.md`](../design-emission-model.md) — search **Cross-target uniformity**, **Modeling problem 7**, **L6**, **`l6_structural_form_coverage`**, **Shape A**, **connectives × behaviors × targets**, Q5 / cardinality-as-connectives (lines ~1243–1280, ~408–410, ~818–833, ~959).
- **Not-a-lens authority:** [`docs/design-lens-framework.md`](../design-lens-framework.md) §**D3 / I6** — L6 is **not** a `Lens<C>` instance; input space is **per-(substrate form cell × Shape A target)**, not `Lens<C>.read: (Dag, Behavior) → Witness<C>`.
- Q1 / PR-PreF consolidation: `Interval<D>` parent; cardinality on connectives as `Interval<Cardinal>` (`design-emission-model.md` ~1019–1024, ~1038, ~1265–1268). **L6 row/column substrate authority** (P2): **`TypeConnective`** + **`Behavior`** in [`src/v3/std/substrate.dag`](../../src/v3/std/substrate.dag) — see §Scope (six + five variants).
Expand Down
4 changes: 2 additions & 2 deletions docs/briefs/t-ground-diagnostic.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@

**Status:** PROPOSAL — dispatchable now. Q6.5 two-layer diagnostic authority is **LIVE** on main via PR [#1129](https://github.com/gunb-ai/gunbc/pull/1129); this lane is a **Layer-1 consumer** of `CompilerDiagnosticKind` and does **not** widen that closed sum. Authored 2026-04-29 (R2 Grounding Manager redirect from sibling dispatch).

**Lane:** T-Ground-Diagnostic (S) — item **8** of 11 in [`r2-grounding-manager.md`](r2-grounding-manager.md) (lane description line 34, lane row line 67, pending list line 144).
**Lane:** T-Ground-Diagnostic (S) — item **8** of 11 in [`r2-grounding-manager.md`](r2-grounding-manager.md) (lane description line 34, lane row line 67, pending list line 145).

**Manager:** R2 Grounding Manager ([`r2-grounding-manager.md`](r2-grounding-manager.md)).

**Lineage / authorities consumed (no re-litigation):**
- R2 manager lane row + acceptance gate: [`r2-grounding-manager.md`](r2-grounding-manager.md) lines 34, 67, 127 (`diagnostic_structural_ordering_landed`), 144.
- R2 manager lane row + acceptance gate: [`r2-grounding-manager.md`](r2-grounding-manager.md) lines 34, 67, 127 (`diagnostic_structural_ordering_landed`), 145.
- Q6.5 two-layer authority: [`docs/design-lens-framework.md`](../design-lens-framework.md) §**"Q6.5 — Two-layer authority for diagnostic kinds"** — Layer 1 `CompilerDiagnosticKind` is Substrate-owned; **this lane consumes; does NOT extend**; anti-bridge: lens-instance kinds never enter `CompilerDiagnosticKind`.
- Engine-reframe + fold failures: [`docs/design-emission-model.md`](../design-emission-model.md) — Modeling problems **4** (ordering is diagnostic-only; lines ~152–164) and **5** (fail-closed diagnostic surface; lines ~165–188); `EmissionDiagnostic` worked shapes (e.g. `UnderRefined`, `NoInhabitant`; search **EmissionDiagnostic** in that doc); lane table row ~386 (`T-Ground-Diagnostic` owns carrier + resolution-hint structure); **UnderRefined** worked receipts **Example 1** (bound / unrefined `Int`, lines ~417–464) **and Example 5** (algebra ambiguity, `unspecified_axis: "algebra"`, lines ~639–680) **plus** Example 6 as lifted test targets.
- Fail-closed compilation: [`INVARIANTS.md`](../../INVARIANTS.md) **C-8** (P3) + C-series sentinels — no silent fabrication when the fold cannot determine.
Expand Down
10 changes: 5 additions & 5 deletions docs/briefs/t-ground-languagespec.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ Author the `LanguageSpec` schema as `.dag` substrate. Per Modeling problem 6 (`d
- **External-realization shape** — `Arrow.body` per E-9.
- **Per-primitive `RealizationCost`** — see B below.

**Canonical home — existing type (P1-Step-1 DAG-ancestor receipt landed at brief-author time):** `LanguageSpec` is **already declared** at `src/v3/std/emit_model.dag:302` (12-field record carrying per-area `DeclarationRef` slots: statements / expressions / control_flow / literals / modules / functions / type_applications / type_definitions / record_derive_templates / patterns / collection_ops / values). A second declaration at `dsl/std/languages.dag:438` is a parallel-authority artifact predating the engine-reframe — its dissolution path is named below. **This lane EXTENDS the existing `src/v3/std/emit_model.dag` type; it does NOT author a new `language_spec.dag` file.** Author a new file only if Step 1 surfaces a structural reason the existing 12-field shape cannot host the engine-reframe additions; that decision escalates to manager (#1133) before any new file lands.
**Canonical home — existing type (P1-Step-1 DAG-ancestor receipt landed at brief-author time):** `LanguageSpec` is **already declared** at `src/v3/std/emit_model.dag:303` (12-field record carrying per-area `DeclarationRef` slots: statements / expressions / control_flow / literals / modules / functions / type_applications / type_definitions / record_derive_templates / patterns / collection_ops / values). A second declaration at `dsl/std/languages.dag:438` is a parallel-authority artifact predating the engine-reframe — its dissolution path is named below. **This lane EXTENDS the existing `src/v3/std/emit_model.dag` type; it does NOT author a new `language_spec.dag` file.** Author a new file only if Step 1 surfaces a structural reason the existing 12-field shape cannot host the engine-reframe additions; that decision escalates to manager (#1133) before any new file lands.

**Extensions this lane lands on the existing type** (per Modeling problem 6, `design-emission-model.md:198-206`):
- Primitive set with refinement-bound shape (Q1 `BoundDeclaration` consumer).
Expand All @@ -52,9 +52,9 @@ Author the `LanguageSpec` schema as `.dag` substrate. Per Modeling problem 6 (`d
- Per-primitive `RealizationCost` (B below; Q3 lock).
- Consumer of Substrate-owned `MethodTemplateContract` (E below; rows attach to the LanguageSpec). Sibling to the existing cost/complexity `MethodContract` at `src/v3/std/algebra.dag:127` (independent authority; the two attach to method declarations as separate facts).

**Parallel-authority dissolution:** `dsl/std/languages.dag:438`'s `LanguageSpec` declaration + its `rust_spec` / `go_spec` / `python_spec` data items (lines 1244 / 1268 / 1292) converge with `src/v3/std/emit_model.dag:302` under one authority. If the two shapes have already drifted, this lane resolves the drift explicitly (no silent reconciliation) and lands the dissolution receipt in the PR body. If the shapes are reconcilable, T-Ground-Dissolve retires the duplicate; if they are not (i.e., `dsl/std/languages.dag` carries a structural fact `emit_model.dag` cannot absorb), escalate to manager (#1133) — that is itself a substrate-modeling call.
**Parallel-authority dissolution:** `dsl/std/languages.dag:438`'s `LanguageSpec` declaration + its `rust_spec` / `go_spec` / `python_spec` data items (lines 1244 / 1268 / 1292) converge with `src/v3/std/emit_model.dag:303` under one authority. If the two shapes have already drifted, this lane resolves the drift explicitly (no silent reconciliation) and lands the dissolution receipt in the PR body. If the shapes are reconcilable, T-Ground-Dissolve retires the duplicate; if they are not (i.e., `dsl/std/languages.dag` carries a structural fact `emit_model.dag` cannot absorb), escalate to manager (#1133) — that is itself a substrate-modeling call.

**P1 procedure receipts** (`INVARIANTS.md:86-123`): worker MUST cite which steps resolved each *new* field added to the existing type, in the PR body. Step 1 (DAG-ancestor) for the type itself is landed by this brief — the parent is `emit_model.dag`'s existing `LanguageSpec`.
**P1 procedure receipts** (`INVARIANTS.md:94-129`): worker MUST cite which steps resolved each *new* field added to the existing type, in the PR body. Step 1 (DAG-ancestor) for the type itself is landed by this brief — the parent is `emit_model.dag`'s existing `LanguageSpec`.

### B. Per-primitive `RealizationCost` (Q3 lock — `design-emission-model.md:1143-1208`)

Expand Down Expand Up @@ -130,7 +130,7 @@ This is the load-bearing consequence of Q4's universal four-property gate (Faith

### G. Substrate-fact-introduction P1 procedure (per `INVARIANTS.md` §P1)

Worker MUST run the 3-step procedure (`INVARIANTS.md:86-123`) for every new substrate type / variant / field introduced under this lane and cite the receipts in the PR body:
Worker MUST run the 3-step procedure (`INVARIANTS.md:94-129`) for every new substrate type / variant / field introduced under this lane and cite the receipts in the PR body:
- **Step 1 (DAG-ancestor):** which existing parent does the new fact attach to? (Worked example: `LanguageSpec` itself — does an ancestor target-spec carrier exist already?)
- **Step 2 (Coproduct-vs-coordinate):** for each new sum, do all variants ever co-inhabit (→ record) or alternate (→ sum)? (`RealizationCost` is correctly a record — Q3 lock receipt; `BoundDeclaration` is correctly a sum — Q1 lock receipt.)
- **Step 3 (Primitive-vs-lens-extensible):** for new leaves introduced under *this* lane's scope (e.g., `PlaceholderConvention` instances populated against the Substrate-owned `MethodTemplateContract` type), are they substrate primitives or lens-extensible labels? (Type-shape Step 1+2 receipts for `MethodTemplateContract` itself land on Substrate's PR per E above.)
Expand Down Expand Up @@ -213,7 +213,7 @@ When this lane lands:
- Heterogeneous per-target method authorities collapse to single `MethodTemplateContract` row per `(target, dag_method)`: Rust `SimpleMethodSpec` (record-list) + Python `python_method_templates` (map) + Go `go_method_templates` (map) on the emit side; `MethodTranslation` × 3 on the runtime side. `wraps_result` semantics resolved explicitly per target (not inherited from Rust).
- Slice-1 mirror-consistency probe re-homes from `grounding_engine` to LanguageSpec's structural authority.
- `extdeps/languages/{rust,python,go}/types.dag` table shape converges with `LanguageSpec` reflection (specifics depend on what schema authoring surfaces; if the table shape IS the LanguageSpec realization, the dissolution is in-place renaming + extension, not a separate file delete).
- **Parallel `LanguageSpec` authority retires:** `dsl/std/languages.dag:438`'s `LanguageSpec` declaration + its `rust_spec` / `go_spec` / `python_spec` data items (lines 1244 / 1268 / 1292) converge under the `src/v3/std/emit_model.dag:302` authority. Drift between the two shapes is resolved explicitly in this lane's PR (no silent reconciliation); structural facts not absorbable by the v3 shape escalate to manager (#1133) before any new file or split lands.
- **Parallel `LanguageSpec` authority retires:** `dsl/std/languages.dag:438`'s `LanguageSpec` declaration + its `rust_spec` / `go_spec` / `python_spec` data items (lines 1244 / 1268 / 1292) converge under the `src/v3/std/emit_model.dag:303` authority. Drift between the two shapes is resolved explicitly in this lane's PR (no silent reconciliation); structural facts not absorbable by the v3 shape escalate to manager (#1133) before any new file or split lands.

The `coercion.dag` shape that retires is named per the receipt landed on PR — worker MUST cite the specific declarations dissolved (so the dissolution claim is verifiable, not aspirational, per `feedback_holistic_over_patches.md` + `feedback_root_causes_over_quick_fixes.md`).

Expand Down
Loading
Loading