diff --git a/dag/extdeps/languages/rust/emit.dag b/dag/extdeps/languages/rust/emit.dag index 3e1d384bd5d..a80f4343b0f 100644 --- a/dag/extdeps/languages/rust/emit.dag +++ b/dag/extdeps/languages/rust/emit.dag @@ -291,7 +291,9 @@ fn rust_qualified_module_mod_filename(qualified_module: String) -> String { concat(rust_qualified_module_mod_basename(qualified_module: qualified_module), ".rs") } -data rust_repr_grounding_arm_b_dissolve_on: String = "Interim CommutativeSemiring carrier arithmetic stubs dissolve when GroupCompletion/Nat body lands (#7197); replace fail-closed unimplemented! stubs with grounded i64 newtype operations. Do not retain PartialEq cross-representation bridge — numeric-tower grounding replaces the straddle." +data rust_repr_grounding_arm_b_dissolve_on: String = "Interim CommutativeSemiring carrier arithmetic stubs dissolve when GroupCompletion pair arithmetic bodies land (#7197, eager-crane numeric-tower lane — NOT silent-badger-23); replace fail-closed unimplemented! stubs with grounded operations. Do not retain PartialEq cross-representation bridge — numeric-tower grounding replaces the straddle." + +data rust_repr_grounding_arm_b_stub_inventory: String = "MARKED scaffold (§6): four fail-closed unimplemented! bodies emitted into src/v1/stage0/src/std_algebra.rs from this authority — Add:91, Mul:97, Div:103, PartialEq:108 (line refs stable post-regen; probe via grep 'interim CommutativeSemiring'). Dissolve owner: #7197 eager-crane. std_types.rs From (real match body, not a stub) is out of scope for this inventory." fn rust_supplemental_impls_commutative_semiring_magnitude() -> String { concat( diff --git a/dag/std/trait_derive_shape.dag b/dag/std/trait_derive_shape.dag index f737fc8d304..64d0f025485 100644 --- a/dag/std/trait_derive_shape.dag +++ b/dag/std/trait_derive_shape.dag @@ -4,7 +4,7 @@ import std.algebra { Cons, Empty } data trait_derive_shape_note: String = "Target-agnostic authority for ReprGroundingDeriveTrait × ReprGroundingDeriveElemShape capability table and derive-trait list builders. Rust spellings: extdeps.languages.rust.emit. Consumed by v2.compiler.trait_derive_completeness and v1.compiler.trait_derive_emit. #7174 (operator 2026-07-25): v1 emit wires (a) clone bounds and (c) serde/Debug/Ord #[derive] on named structs/enums. Root-4 arm (b): predicate-gated supplemental impl { … } blocks for coproduct-native arithmetic carriers — see trait_derive_shape_grounding_lane_handoff; ReprDeriveAdd/Sub/… rows on KernelInt are capability-table authority for repr_grounding_derive_completeness_predicate, not spellings." -data trait_derive_shape_grounding_lane_handoff: String = "Root-4 arm (b): coproduct-native arithmetic + PartialOrd/PartialEq impl blocks for algebra carriers (GroupCompletion, Vector, CommutativeSemiring). Capability table + repr_grounding_derive_completeness_predicate remain the shared authority; v1.compiler.trait_derive_emit emits impl { … } from shape rows (not #[derive]) through the seed emitter. dissolve-on: GroupCompletion/FieldOfFractions body landing (#7197) replaces interim Magnitude-carrier stubs." +data trait_derive_shape_grounding_lane_handoff: String = "Root-4 arm (b): coproduct-native arithmetic + PartialOrd/PartialEq impl blocks for algebra carriers (GroupCompletion, Vector, CommutativeSemiring). Capability table + repr_grounding_derive_completeness_predicate remain the shared authority; v1.compiler.trait_derive_emit emits impl { … } from shape rows (not #[derive]) through the seed emitter. dissolve-on: four fail-closed unimplemented! stubs in extdeps.languages.rust.emit.rust_supplemental_impls_commutative_semiring_magnitude → std_algebra.rs (inventory: rust_repr_grounding_arm_b_stub_inventory); real bodies land via #7197 eager-crane numeric-tower lane." data trait_derive_shape_dissolve_on: String = "ReprGroundingDeriveTrait members that name Rust-specific authorities (ReprDeriveSerialize, ReprDeriveAdd, …) migrate beside each target's spelling table when a second consumer exists; until then capability roles stay in std/ with spellings in extdeps.languages.rust.emit." diff --git a/src/v1/stage0/src/extdeps_languages_rust_emit.rs b/src/v1/stage0/src/extdeps_languages_rust_emit.rs index cbe0721fe42..72a46225bbb 100644 --- a/src/v1/stage0/src/extdeps_languages_rust_emit.rs +++ b/src/v1/stage0/src/extdeps_languages_rust_emit.rs @@ -632,7 +632,16 @@ pub fn rust_qualified_module_mod_filename(qualified_module: String) -> String { pub fn rust_repr_grounding_arm_b_dissolve_on() -> String { thread_local! { static CACHED: String = { - "Interim CommutativeSemiring carrier arithmetic stubs dissolve when GroupCompletion/Nat body lands (#7197); replace fail-closed unimplemented! stubs with grounded i64 newtype operations. Do not retain PartialEq cross-representation bridge — numeric-tower grounding replaces the straddle.".to_string() + "Interim CommutativeSemiring carrier arithmetic stubs dissolve when GroupCompletion pair arithmetic bodies land (#7197, eager-crane numeric-tower lane — NOT silent-badger-23); replace fail-closed unimplemented! stubs with grounded operations. Do not retain PartialEq cross-representation bridge — numeric-tower grounding replaces the straddle.".to_string() + }; + } + CACHED.with(|c: &String| c.clone()) +} + +pub fn rust_repr_grounding_arm_b_stub_inventory() -> String { + thread_local! { + static CACHED: String = { + "MARKED scaffold (§6): four fail-closed unimplemented! bodies emitted into src/v1/stage0/src/std_algebra.rs from this authority — Add:91, Mul:97, Div:103, PartialEq:108 (line refs stable post-regen; probe via grep 'interim CommutativeSemiring'). Dissolve owner: #7197 eager-crane. std_types.rs From (real match body, not a stub) is out of scope for this inventory.".to_string() }; } CACHED.with(|c: &String| c.clone()) diff --git a/src/v1/stage0/src/std_algebra.rs b/src/v1/stage0/src/std_algebra.rs index 21284ec02e0..420a6629d0b 100644 --- a/src/v1/stage0/src/std_algebra.rs +++ b/src/v1/stage0/src/std_algebra.rs @@ -84,7 +84,7 @@ pub struct CommutativeSemiring { pub one: T, pub _phantom: std::marker::PhantomData, } -// repr-grounding arm (b): Nat carrier arithmetic (v1 seed emit; Interim CommutativeSemiring carrier arithmetic stubs dissolve when GroupCompletion/Nat body lands (#7197); replace fail-closed unimplemented! stubs with grounded i64 newtype operations. Do not retain PartialEq cross-representation bridge — numeric-tower grounding replaces the straddle.) +// repr-grounding arm (b): Nat carrier arithmetic (v1 seed emit; Interim CommutativeSemiring carrier arithmetic stubs dissolve when GroupCompletion pair arithmetic bodies land (#7197, eager-crane numeric-tower lane — NOT silent-badger-23); replace fail-closed unimplemented! stubs with grounded operations. Do not retain PartialEq cross-representation bridge — numeric-tower grounding replaces the straddle.) impl std::ops::Add for CommutativeSemiring { type Output = std::rc::Rc>; fn add(self, _rhs: Self) -> Self::Output { diff --git a/src/v1/stage0/src/std_trait_derive_shape.rs b/src/v1/stage0/src/std_trait_derive_shape.rs index 71fb9504618..9e4377b143f 100644 --- a/src/v1/stage0/src/std_trait_derive_shape.rs +++ b/src/v1/stage0/src/std_trait_derive_shape.rs @@ -25,7 +25,7 @@ pub fn trait_derive_shape_note() -> String { pub fn trait_derive_shape_grounding_lane_handoff() -> String { thread_local! { static CACHED: String = { - "Root-4 arm (b): coproduct-native arithmetic + PartialOrd/PartialEq impl blocks for algebra carriers (GroupCompletion, Vector, CommutativeSemiring). Capability table + repr_grounding_derive_completeness_predicate remain the shared authority; v1.compiler.trait_derive_emit emits impl { … } from shape rows (not #[derive]) through the seed emitter. dissolve-on: GroupCompletion/FieldOfFractions body landing (#7197) replaces interim Magnitude-carrier stubs.".to_string() + "Root-4 arm (b): coproduct-native arithmetic + PartialOrd/PartialEq impl blocks for algebra carriers (GroupCompletion, Vector, CommutativeSemiring). Capability table + repr_grounding_derive_completeness_predicate remain the shared authority; v1.compiler.trait_derive_emit emits impl { … } from shape rows (not #[derive]) through the seed emitter. dissolve-on: four fail-closed unimplemented! stubs in extdeps.languages.rust.emit.rust_supplemental_impls_commutative_semiring_magnitude → std_algebra.rs (inventory: rust_repr_grounding_arm_b_stub_inventory); real bodies land via #7197 eager-crane numeric-tower lane.".to_string() }; } CACHED.with(|c: &String| c.clone())