Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
d62837e
De-prose v4 language extdeps after canonical-B refresh
briansrls May 19, 2026
7208ebe
WIP: [Mode-1 MAX-PAR] De-prose #3266 redo: refresh branch/PR against …
briansrls May 19, 2026
d3f5b18
Merge remote-tracking branch 'origin/main' into session/nimble-wren-718
briansrls May 19, 2026
108369b
Merge remote-tracking branch 'origin/main' into session/nimble-wren-718
briansrls May 19, 2026
0b875c2
Merge remote-tracking branch 'origin/main' into session/nimble-wren-718
briansrls May 19, 2026
6149019
Merge remote-tracking branch 'origin/main' into session/nimble-wren-718
briansrls May 19, 2026
f456640
WIP: [Mode-1 MAX-PAR] De-prose #3266 redo: refresh branch/PR against …
briansrls May 19, 2026
186207e
WIP: [Mode-1 MAX-PAR] De-prose #3266 redo: refresh branch/PR against …
briansrls May 19, 2026
b65b685
WIP: [Mode-1 MAX-PAR] De-prose #3266 redo: refresh branch/PR against …
briansrls May 19, 2026
5ed8587
Add extdeps grounding anchors
briansrls May 19, 2026
5aac1a8
Fix extdeps grounding anchor receipts
briansrls May 19, 2026
480fec2
Drop structure manifest updates
briansrls May 19, 2026
a8e6be3
Drop decisions ledger updates
briansrls May 19, 2026
667d797
Split extdeps grounding anchors
briansrls May 19, 2026
a543d70
Merge remote-tracking branch 'origin/main' into session/nimble-wren-718
briansrls May 19, 2026
176bd91
Revert "Split extdeps grounding anchors"
briansrls May 19, 2026
7f391ee
WIP: [Mode-1 MAX-PAR] De-prose #3266 redo: refresh branch/PR against …
briansrls May 19, 2026
a129b16
WIP: [Mode-1 MAX-PAR] De-prose #3266 redo: refresh branch/PR against …
briansrls May 19, 2026
ddd9561
Fix stale extdeps ledger comments
briansrls May 19, 2026
be4aee0
Merge remote-tracking branch 'origin/main' into session/nimble-wren-718
briansrls May 19, 2026
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
2 changes: 1 addition & 1 deletion src/v4/DECISIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ remain boundary indexes until the named substrate support lands.
| `extdeps/coordination.dag` | `WireContractFacts.from/to` endpoint membership | Yellow deployment-membership scaffold | Documented: `WireContractFacts` carries `EndpointRef` values while `DeploymentUnit` owns `endpoints: List<Endpoint>`; current syntax does not encode a scoped membership-and-uniqueness witness tying those refs to exactly one endpoint in that list. Bounded use: producers must only emit contracts whose `from` and `to` refs each resolve to exactly one endpoint in the enclosing `DeploymentUnit.endpoints`; consumers that require closed-world endpoint membership must validate presence and uniqueness before treating the contract as deployment-complete. Gate: `consumer:T-16-deployment-endpoint-partition` plus `feature:T-25-core-validation-boundary` (`src/v4/TASKS.md` T-16/T-25-core). Dissolve-on-arrival: when the T-16 coordination consumer is implemented on the T-25-core fail-closed validation substrate, replace this row with a constructor-validated `WireContractFacts` or deployment-scoped membership/uniqueness witness so absent or multiply-owned endpoint targets are unrepresentable. |
| `extdeps/coordination.dag` | `LanguageRef` / `FrameworkRef` membership | Yellow registry-membership scaffold | Documented: `LanguageRef { identity: Symbol }` and `FrameworkRef { identity: Symbol }` are opaque refs embedded in `Endpoint.language` and `FrameworkBinding.HostedByFramework`, while current syntax does not encode a scoped membership-and-uniqueness witness tying those refs to declared language/framework models. Bounded use: producers must intern refs against declared T-4 language models and T-4.7 framework models; consumers may compare identity only and must validate presence and uniqueness before treating endpoint language/framework resolution as complete. Gate: `consumer:T-16-language-framework-reference-resolution` plus `feature:T-4-language-model-registry`, `feature:T-4.7-framework-model-registry`, and `feature:T-25-core-validation-boundary` (`src/v4/TASKS.md` T-16/T-4/T-4.7/T-25-core). Dissolve-on-arrival: when the T-16 coordination consumer is implemented on the T-4/T-4.7 registries and T-25-core fail-closed validation substrate, replace this row with resolved/validated language and framework references or scoped membership/uniqueness witnesses so dangling or multiply-owned refs are unrepresentable. |
| `extdeps/languages/go.dag` | (Practice-4 sum carriers + D2 partial) | Green coproduct family / records | Per merge-base `92cb26402` 🟢 blocks (see **Part 6 · CP-3229-GREEN-TERMINAL**). De-prose 2026-05-18: in-file prose removed; `GoCost` / `GoIntegerOverflowDisposition` / D2 deferrals indexed here, not in body comments. |
| `extdeps/languages/python.dag` | (Practice-4 sum carriers + cost record) | Green coproduct family / records | Same as go row; merge-base had three 🟢 sum ledgers (see **Part 6 · CP-3229-GREEN-TERMINAL**). **Heuristic vs content (Practice 9):** mechanical `//`-line share may sit modestly above the reviewer’s ~20% *heuristic* while the file still meets **content** compliance (mandated path + four-line header + `// Anchor:` + one-line 🟢 tag per coproduct only). That is not a license to pad with blank lines to game the ratio; additional non-`//` lines should come from real substrate (e.g. more carriers/imports), not whitespace inflation. |
| `extdeps/languages/python.dag` | (Practice-4 sum carriers + cost record) | Green coproduct family / records | Same as go row; merge-base had three 🟢 sum ledgers (see **Part 6 · CP-3229-GREEN-TERMINAL**). Post-#3338 de-prose keeps the canonical-B decl-ref surface and drops surplus header/body comments rather than adding false dependencies to satisfy Practice 9 ratio pressure. |
| `extdeps/languages/rust.dag` | (Practice-4 sum carriers + D2 resolver) | Green coproduct family / records | Same bulk **CP-3229-GREEN-TERMINAL** receipt; `PubInPath` semantic scaffold and `RustCost` raw-`Int` bridge remain producer obligations per Part 6 / substrate tables, not narration in the `.dag` body. |
| `extdeps/languages/typescript.dag` | `TsEcma262NumericPrimitiveKind`, `TsEcma262PrimitiveOperationSemantics`, D2 resolver scaffolds | Green coproduct family / yellow D2 deferrals | De-prose 2026-05-18: in-file prose removed; carrier declarations are byte-identical. `TsEcma262NumericPrimitiveKind` is 🟢 terminal because ECMA-262/TypeScript exposes exactly one numeric primitive kind per value: `number` or `bigint`; the partition is not a bool proxy, a dimensional product, or a parameterized width family, and algebraic facts land through future std numeric aliases rather than collapsing this boundary classifier. `TsEcma262PrimitiveOperationSemantics` is 🟢 terminal because resolver rows choose one ECMA primitive-semantics track among IEEE-754 `Number`, ToInt32/ToUint32 bitwise `Number`, and exact `BigInt`; this is not Rust overflow policy and not a width-indexed family. D2a(2): the `{spelling}` `GroundingMap` shape is **retired** under ruled-B — there is no "shared P2 home" pending because the shape is removed, not relocated (cf. INVARIANTS §P2; the `GroundingMap`→`resolver.dag` relocation obligation is obsolete for the removed twin). A local `GroundingMap` type and `{spelling}`-style `ts_*_grounding: GroundingMap{…}` rows remain **forbidden** (the hollow form). The **ruled-B decl-ref** `ts_bool_grounding: BooleanAlgebra<Bool> = bool_boolean_algebra` is a *different, sanctioned* shape (single std-authority reference, not a `GroundingMap` row) — declared this PR, **P2/E-6 staging** (consumer-gated); single-authority disposition is the **TS-D2 §** below. The Bool D2a(1) alias `TsBoolean = Bool` is **retired** (A-vs-B = B / ruled-B) — removed from `typescript.dag`, **not** in the remaining-scaffold set; single-authority disposition is the **TS-D2 §** below (machine-readable grounding *declaration* `ts_bool_grounding: BooleanAlgebra<Bool> = bool_boolean_algebra` — decl-ref shared-authority, present + v2-parse-verified; **P2/E-6 STAGING**, not landed authority — no same-PR consumer, canonical fold specified-not-realized; `grounding-worked-examples.md` §0). Non-Bool D2a(1) alias rows remain 🟡 tracked scaffolds: `TsNumber = Float64` waits on std/float `Float64` + `ApproximateField`, `TsBigInt = Int` waits on unbounded integer/BigInt alignment, `TsString = String` waits on UTF-16/std text refinement policy, and `symbol`/`null`/`undefined` wait on the LanguageModel/nominal-runtime substrate. D2a(3) per-primitive instance rows remain deferred only on top-level nullary sum-variant `data` body validation (Class-5-Gap-3); record-structural disposition rows are safe; the retired D2a(2) `{spelling}`-`GroundingMap` shape is superseded by the ruled-B decl-ref grounding above (no pending `GroundingMap` authority decision — the shape is removed). D2b IEEE-754 `number` Arrow bodies remain deferred to the bundled T-4 grammar and std/float ApproximateField lane. |

Expand Down
4 changes: 0 additions & 4 deletions src/v4/extdeps/languages/go.dag
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
// Consumes: v4.std.node.Symbol; v4.std.logic.Bool, bool_boolean_algebra; v4.std.algebra.BooleanAlgebra; kernel-ambient Int (STRUCTURE.md traceability).
// Status: extdeps go slice; bool canonical-B decl-ref grounding — 🟡 E-6(b) staging (scaffold at decl; ledger DECISIONS.md/§0); classifier = GoScalar.BoolScalar; numeric D2a rows deferred per DECISIONS.md D2-REV and resolver.dag; no D1 ops in-file.
// Anchor: https://go.dev/ref/spec
// Ledger: DECISIONS.md Part 6 (PR #3229): CP-3229-GREEN-TERMINAL.

module v4.extdeps.languages.go

Expand Down Expand Up @@ -93,8 +92,5 @@ type GoIntegerOverflowDisposition<IRCarrier> {
release_default: GoBuiltinIntegerArithmeticOverflow
}

// 🟢 GoNever / no GoScalar bottom — DECISIONS.md §PR-3252-extdeps-deferrals (Practice 9).

// Anchor: https://go.dev/ref/spec#Boolean_types
// 🟡 canonical-B decl-ref · E-6(b) bounded-exception · scaffold feature:canonical-b-grounding-consumer · dissolve-on: B1-CANON+zip-fold consume (ledger: DECISIONS.md B1·T-9/C1 · grounding-worked-examples.md §0)
data go_bool_grounding: BooleanAlgebra<Bool> = bool_boolean_algebra
34 changes: 19 additions & 15 deletions src/v4/extdeps/languages/python.dag
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,7 @@
// Scope: Python 3.14 Reference surface (flat scalar coproduct, singleton kinds, cost shape, partial D2 resolver).
// Owns: PythonSingletonKind, PythonScalar, PythonCost, py_bool_grounding.
// Consumes: Kernel-ambient Int; v4.std.logic.Bool, bool_boolean_algebra; v4.std.algebra.BooleanAlgebra; std/integer, std/float, std/cardinality when T-3 alias rows land (DECISIONS.md D2-REV).
// Bool: canonical-B decl-ref grounding (truth facet; int-subtype build-up = BoolScalar) — 🟡 E-6(b) staging (scaffold at decl; ledger DECISIONS.md/§0).
// Status: extdeps python slice; numeric overflow and resolver deferrals per DECISIONS.md D2-REV + Part 6 (PR #3229 · CP-3229-GREEN-TERMINAL); principal int unbounded—no overflow carrier in-file.
// Anchor: https://docs.python.org/3.14/reference/
// Status: extdeps python slice; bool canonical-B decl-ref grounding is 🟡 E-6(b) staging; numeric overflow/resolver deferrals per DECISIONS.md D2-REV + Part 6; principal int unbounded—no overflow carrier in-file.

This comment was marked as resolved.


module v4.extdeps.languages.python

Expand All @@ -13,25 +11,31 @@ import v4.std.algebra { BooleanAlgebra }

// 🟢 coproduct dissolution — DECISIONS.md Part 6 · CP-3229-GREEN-TERMINAL.
type PythonSingletonKind
= NoneT
| NotImplementedT
| EllipsisT
=
NoneT
|
NotImplementedT
|
EllipsisT

// 🟢 coproduct dissolution — DECISIONS.md Part 6 · SL-3309-PYTHON-SCALAR-RESEED.
type PythonScalar
= IntScalar
| FloatScalar
| ComplexScalar
| BoolScalar
| Singleton { kind: PythonSingletonKind }
=
IntScalar
|
FloatScalar
|
ComplexScalar
|
BoolScalar
|
Singleton { kind: PythonSingletonKind }

type PythonCost {
type PythonCost
{
operation_cost: Int
allocation_cost: Int
}

// 🟢 Singleton / `Unit` D2a slice — DECISIONS.md §PR-3252-extdeps-deferrals + §PR-3252-cardinality-std (Practice 9).

// Anchor: https://docs.python.org/3.14/library/stdtypes.html#boolean-type-bool
// 🟡 canonical-B decl-ref (truth facet; int-subtype build-up = BoolScalar) · E-6(b) bounded-exception · scaffold feature:canonical-b-grounding-consumer · dissolve-on: B1-CANON+zip-fold consume (ledger: DECISIONS.md B1·T-9/C1 · grounding-worked-examples.md §0)
data py_bool_grounding: BooleanAlgebra<Bool> = bool_boolean_algebra
6 changes: 0 additions & 6 deletions src/v4/extdeps/languages/rust.dag
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
// Consumes: v4.std.node.Node, Symbol; v4.std.logic.Bool, bool_boolean_algebra; v4.std.algebra.BooleanAlgebra; v4.std.cardinality.Never; kernel-ambient Int, List.
// Status: extdeps rust slice; bool/`!` canonical-B decl-ref grounding — 🟡 E-6(b) staging (scaffold at decl; ledger DECISIONS.md/§0). PubInPath path semantics producer-obligation per DECISIONS.md Part 6 + D2-REV; D2b Arrow bodies deferred to bundled LanguageModel work.
// Anchor: https://doc.rust-lang.org/reference/
// Ledger: DECISIONS.md Part 6 (PR #3229): CP-3229-GREEN-TERMINAL.

module v4.extdeps.languages.rust

Expand Down Expand Up @@ -81,12 +80,7 @@ type OverflowDisposition<IRCarrier>
= MustPanicOnOverflow
| MayPanicOrTwoComplementWrap

// Anchor: https://doc.rust-lang.org/reference/types/boolean.html
// 🟡 canonical-B decl-ref · E-6(b) bounded-exception · scaffold feature:canonical-b-grounding-consumer · dissolve-on: B1-CANON+zip-fold consume (ledger: DECISIONS.md B1·T-9/C1 · grounding-worked-examples.md §0)
data rust_bool_grounding: BooleanAlgebra<Bool> = bool_boolean_algebra

// Anchor: https://doc.rust-lang.org/reference/types/never.html
// `!` is the uninhabited type: zero inhabitants, no operations — it *is*
// the std `Never` primitive. Nothing above the primitive to model, so the
// grounding is the direct primitive identity (the degenerate base case).
type RustNever = Never
Loading