From 3bbb4dfa7ac871c6914d835bb1eb049117d85c93 Mon Sep 17 00:00:00 2001 From: gunbc-ci-auto-heal Date: Sat, 1 Aug 2026 22:57:36 +0000 Subject: [PATCH 1/2] Repair the derived stage0 partition: five unrostered modules; retire the extdeps-base tier the chain could not express v1-stage0-std-core has been red on main (6 E0432/E0433) with no CI visibility: four flat-crate modules gained partitioned consumers without roster rows (std_occurrence_identity, the three extdeps_units_* rows, plus latent std_trait_derive_shape and v1_compiler_infer_occurrence_binding found by a full reference sweep), and the units trio exposed a chain-order defect: std_measure (std-core) consumes extdeps.units.*, whose deps sat in stage0_extdeps_base above std-core - a sanctioned std-cites-extdeps grounding (DESIGN 3, 2026-07-24) the linear hand chain could not express. The grounding cluster (extdeps_uri, extdeps_external_authority, three units modules) moves into std-core by its actual dependency tier; the emptied extdeps-base crate row retires (declared targets 8->7 / 7->6 in the same authority); std_trait_derive_shape -> std_surface; v1_compiler_infer_occurrence_binding -> v1-infer (witness member pin 6->7). Authority edit + main_wet + two-generation regen_stage0; no generated file hand-edited; regen --verify divergence 0. cargo check -p v1-stage0-std-core and --workspace green; fmt clean; partition + drift witnesses 26/26 PASS by execution. CI compile-gate enrollment for partition crates stays an operator decision - nothing enrolled here. Co-Authored-By: Claude Fable 5 --- Cargo.lock | 19 ------ Cargo.toml | 1 - .../stage0_crate_partition_generated.dag | 30 +++------ .../gunbc_stage0_crate_partition_generated.rs | 19 ++---- src/v1/stage0_emit_core/Cargo.toml | 1 - src/v1/stage0_extdeps_base/Cargo.toml | 15 ----- src/v1/stage0_extdeps_base/src/lib.rs | 30 --------- src/v1/stage0_extdeps_languages/Cargo.toml | 1 - src/v1/stage0_extdeps_languages/src/lib.rs | 1 - src/v1/stage0_std_core/src/lib.rs | 18 +++++ src/v1/stage0_std_surface/src/lib.rs | 3 + src/v1/stage0_v1_artifact/Cargo.toml | 1 - src/v1/stage0_v1_artifact/src/lib.rs | 1 - src/v1/stage0_v1_infer/Cargo.toml | 1 - src/v1/stage0_v1_infer/src/lib.rs | 4 +- .../rust_crate_partition_witness_test.dag | 2 +- src/v2/workflow/rust_crate_partition.dag | 66 ++++++++----------- 17 files changed, 68 insertions(+), 145 deletions(-) delete mode 100644 src/v1/stage0_extdeps_base/Cargo.toml delete mode 100644 src/v1/stage0_extdeps_base/src/lib.rs diff --git a/Cargo.lock b/Cargo.lock index 82b6da508b2..f0bd2ca5e81 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -873,7 +873,6 @@ dependencies = [ "stacker", "unicode-ident", "unicode-properties", - "v1-stage0-extdeps-base", "v1-stage0-extdeps-languages", "v1-stage0-runtime", "v1-stage0-std-core", @@ -882,21 +881,6 @@ dependencies = [ "v1-stage0-v1-infer", ] -[[package]] -name = "v1-stage0-extdeps-base" -version = "0.1.0" -dependencies = [ - "im", - "serde", - "serde_json", - "stacker", - "unicode-ident", - "unicode-properties", - "v1-stage0-runtime", - "v1-stage0-std-core", - "v1-stage0-std-surface", -] - [[package]] name = "v1-stage0-extdeps-languages" version = "0.1.0" @@ -907,7 +891,6 @@ dependencies = [ "stacker", "unicode-ident", "unicode-properties", - "v1-stage0-extdeps-base", "v1-stage0-runtime", "v1-stage0-std-core", "v1-stage0-std-surface", @@ -962,7 +945,6 @@ dependencies = [ "stacker", "unicode-ident", "unicode-properties", - "v1-stage0-extdeps-base", "v1-stage0-extdeps-languages", "v1-stage0-runtime", "v1-stage0-std-core", @@ -980,7 +962,6 @@ dependencies = [ "stacker", "unicode-ident", "unicode-properties", - "v1-stage0-extdeps-base", "v1-stage0-extdeps-languages", "v1-stage0-runtime", "v1-stage0-std-core", diff --git a/Cargo.toml b/Cargo.toml index 1c025b41e56..26c137814f0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -7,7 +7,6 @@ members = [ "src/v1/stage0_runtime", "src/v1/stage0_std_core", "src/v1/stage0_std_surface", - "src/v1/stage0_extdeps_base", "src/v1/stage0_extdeps_languages", "src/v1/stage0_v1_infer", "src/v1/stage0_v1_artifact", diff --git a/dag/gunbc/stage0_crate_partition_generated.dag b/dag/gunbc/stage0_crate_partition_generated.dag index ef2189a8170..d2a69dc0b13 100644 --- a/dag/gunbc/stage0_crate_partition_generated.dag +++ b/dag/gunbc/stage0_crate_partition_generated.dag @@ -58,6 +58,12 @@ data generated_partition_crate_rows: List = [ "std_induction", "std_iteration", "std_graph", + "extdeps_uri", + "extdeps_external_authority", + "extdeps_units_dimensionless", + "extdeps_units_iec_80000_13", + "extdeps_units_iso8601", + "std_occurrence_identity", "v1_std_core" ], reexport_packages: [ @@ -74,7 +80,8 @@ data generated_partition_crate_rows: List = [ "std_execution_mode", "std_interface_summary", "std_pareto", - "std_realization_schedule" + "std_realization_schedule", + "std_trait_derive_shape" ], reexport_packages: [ "v1-stage0-runtime", @@ -82,21 +89,6 @@ data generated_partition_crate_rows: List = [ ], carries_non_empty_wrappers: false }, - GeneratedPartitionCrateRow { - package_name: "v1-stage0-extdeps-base", - crate_dir: "src/v1/stage0_extdeps_base", - kind: GeneratedLayeredCoreCrate, - modules: [ - "extdeps_external_authority", - "extdeps_uri" - ], - reexport_packages: [ - "v1-stage0-runtime", - "v1-stage0-std-core", - "v1-stage0-std-surface" - ], - carries_non_empty_wrappers: false - }, GeneratedPartitionCrateRow { package_name: "v1-stage0-extdeps-languages", crate_dir: "src/v1/stage0_extdeps_languages", @@ -118,8 +110,7 @@ data generated_partition_crate_rows: List = [ reexport_packages: [ "v1-stage0-runtime", "v1-stage0-std-core", - "v1-stage0-std-surface", - "v1-stage0-extdeps-base" + "v1-stage0-std-surface" ], carries_non_empty_wrappers: false }, @@ -131,6 +122,7 @@ data generated_partition_crate_rows: List = [ "v1_compiler_infer_emit_info", "v1_compiler_infer_env", "v1_compiler_infer_items", + "v1_compiler_infer_occurrence_binding", "v1_compiler_infer_service", "v1_compiler_infer_sigs", "v1_compiler_infer_types" @@ -139,7 +131,6 @@ data generated_partition_crate_rows: List = [ "v1-stage0-runtime", "v1-stage0-std-core", "v1-stage0-std-surface", - "v1-stage0-extdeps-base", "v1-stage0-extdeps-languages" ], carries_non_empty_wrappers: false @@ -156,7 +147,6 @@ data generated_partition_crate_rows: List = [ "v1-stage0-runtime", "v1-stage0-std-core", "v1-stage0-std-surface", - "v1-stage0-extdeps-base", "v1-stage0-extdeps-languages", "v1-stage0-v1-infer" ], diff --git a/src/v1/stage0/src/gunbc_stage0_crate_partition_generated.rs b/src/v1/stage0/src/gunbc_stage0_crate_partition_generated.rs index 8f663abc782..1c25799bcf7 100644 --- a/src/v1/stage0/src/gunbc_stage0_crate_partition_generated.rs +++ b/src/v1/stage0/src/gunbc_stage0_crate_partition_generated.rs @@ -54,43 +54,36 @@ pub fn generated_partition_crate_rows() -> Rc package_name: "v1-stage0-std-core".to_string(), crate_dir: "src/v1/stage0_std_core".to_string(), kind: GeneratedPartitionCrateKind::GeneratedLayeredCoreCrate, - modules: Rc::new(vec!["std_content_hash".to_string(), "std_coercion".to_string(), "std_currency".to_string(), "std_decl_ref".to_string(), "std_roster_frontier".to_string(), "std_disposition".to_string(), "std_error_primitives".to_string(), "std_http_path".to_string(), "std_emit_model".to_string(), "std_magnitude".to_string(), "std_measure".to_string(), "std_types".to_string(), "std_lens_verdict".to_string(), "std_algebra".to_string(), "std_nat".to_string(), "std_node".to_string(), "std_syntax".to_string(), "std_computation".to_string(), "std_termination".to_string(), "std_induction".to_string(), "std_iteration".to_string(), "std_graph".to_string(), "v1_std_core".to_string()]), + modules: Rc::new(vec!["std_content_hash".to_string(), "std_coercion".to_string(), "std_currency".to_string(), "std_decl_ref".to_string(), "std_roster_frontier".to_string(), "std_disposition".to_string(), "std_error_primitives".to_string(), "std_http_path".to_string(), "std_emit_model".to_string(), "std_magnitude".to_string(), "std_measure".to_string(), "std_types".to_string(), "std_lens_verdict".to_string(), "std_algebra".to_string(), "std_nat".to_string(), "std_node".to_string(), "std_syntax".to_string(), "std_computation".to_string(), "std_termination".to_string(), "std_induction".to_string(), "std_iteration".to_string(), "std_graph".to_string(), "extdeps_uri".to_string(), "extdeps_external_authority".to_string(), "extdeps_units_dimensionless".to_string(), "extdeps_units_iec_80000_13".to_string(), "extdeps_units_iso8601".to_string(), "std_occurrence_identity".to_string(), "v1_std_core".to_string()]), reexport_packages: Rc::new(vec!["v1-stage0-runtime".to_string()]), carries_non_empty_wrappers: false, }), Rc::new(GeneratedPartitionCrateRow { package_name: "v1-stage0-std-surface".to_string(), crate_dir: "src/v1/stage0_std_surface".to_string(), kind: GeneratedPartitionCrateKind::GeneratedLayeredCoreCrate, - modules: Rc::new(vec!["std_effects".to_string(), "std_execution_mode".to_string(), "std_interface_summary".to_string(), "std_pareto".to_string(), "std_realization_schedule".to_string()]), + modules: Rc::new(vec!["std_effects".to_string(), "std_execution_mode".to_string(), "std_interface_summary".to_string(), "std_pareto".to_string(), "std_realization_schedule".to_string(), "std_trait_derive_shape".to_string()]), reexport_packages: Rc::new(vec!["v1-stage0-runtime".to_string(), "v1-stage0-std-core".to_string()]), carries_non_empty_wrappers: false, - }), Rc::new(GeneratedPartitionCrateRow { - package_name: "v1-stage0-extdeps-base".to_string(), - crate_dir: "src/v1/stage0_extdeps_base".to_string(), - kind: GeneratedPartitionCrateKind::GeneratedLayeredCoreCrate, - modules: Rc::new(vec!["extdeps_external_authority".to_string(), "extdeps_uri".to_string()]), - reexport_packages: Rc::new(vec!["v1-stage0-runtime".to_string(), "v1-stage0-std-core".to_string(), "v1-stage0-std-surface".to_string()]), - carries_non_empty_wrappers: false, }), Rc::new(GeneratedPartitionCrateRow { package_name: "v1-stage0-extdeps-languages".to_string(), crate_dir: "src/v1/stage0_extdeps_languages".to_string(), kind: GeneratedPartitionCrateKind::GeneratedLayeredCoreCrate, modules: Rc::new(vec!["extdeps_languages_dag_emit".to_string(), "extdeps_languages_dag_syntax".to_string(), "extdeps_languages_dag_types".to_string(), "extdeps_languages_go_emit".to_string(), "extdeps_languages_go_syntax".to_string(), "extdeps_languages_go_types".to_string(), "extdeps_languages_python_emit".to_string(), "extdeps_languages_python_syntax".to_string(), "extdeps_languages_python_types".to_string(), "extdeps_languages_rust_emit".to_string(), "extdeps_languages_rust_syntax".to_string(), "extdeps_languages_rust_types".to_string()]), - reexport_packages: Rc::new(vec!["v1-stage0-runtime".to_string(), "v1-stage0-std-core".to_string(), "v1-stage0-std-surface".to_string(), "v1-stage0-extdeps-base".to_string()]), + reexport_packages: Rc::new(vec!["v1-stage0-runtime".to_string(), "v1-stage0-std-core".to_string(), "v1-stage0-std-surface".to_string()]), carries_non_empty_wrappers: false, }), Rc::new(GeneratedPartitionCrateRow { package_name: "v1-stage0-v1-infer".to_string(), crate_dir: "src/v1/stage0_v1_infer".to_string(), kind: GeneratedPartitionCrateKind::GeneratedLayeredCoreCrate, - modules: Rc::new(vec!["v1_compiler_infer_emit_info".to_string(), "v1_compiler_infer_env".to_string(), "v1_compiler_infer_items".to_string(), "v1_compiler_infer_service".to_string(), "v1_compiler_infer_sigs".to_string(), "v1_compiler_infer_types".to_string()]), - reexport_packages: Rc::new(vec!["v1-stage0-runtime".to_string(), "v1-stage0-std-core".to_string(), "v1-stage0-std-surface".to_string(), "v1-stage0-extdeps-base".to_string(), "v1-stage0-extdeps-languages".to_string()]), + modules: Rc::new(vec!["v1_compiler_infer_emit_info".to_string(), "v1_compiler_infer_env".to_string(), "v1_compiler_infer_items".to_string(), "v1_compiler_infer_occurrence_binding".to_string(), "v1_compiler_infer_service".to_string(), "v1_compiler_infer_sigs".to_string(), "v1_compiler_infer_types".to_string()]), + reexport_packages: Rc::new(vec!["v1-stage0-runtime".to_string(), "v1-stage0-std-core".to_string(), "v1-stage0-std-surface".to_string(), "v1-stage0-extdeps-languages".to_string()]), carries_non_empty_wrappers: false, }), Rc::new(GeneratedPartitionCrateRow { package_name: "v1-stage0-v1-artifact".to_string(), crate_dir: "src/v1/stage0_v1_artifact".to_string(), kind: GeneratedPartitionCrateKind::GeneratedLayeredCoreCrate, modules: Rc::new(vec!["v1_compiler_artifact".to_string(), "v1_compiler_languages".to_string()]), - reexport_packages: Rc::new(vec!["v1-stage0-runtime".to_string(), "v1-stage0-std-core".to_string(), "v1-stage0-std-surface".to_string(), "v1-stage0-extdeps-base".to_string(), "v1-stage0-extdeps-languages".to_string(), "v1-stage0-v1-infer".to_string()]), + reexport_packages: Rc::new(vec!["v1-stage0-runtime".to_string(), "v1-stage0-std-core".to_string(), "v1-stage0-std-surface".to_string(), "v1-stage0-extdeps-languages".to_string(), "v1-stage0-v1-infer".to_string()]), carries_non_empty_wrappers: false, }), Rc::new(GeneratedPartitionCrateRow { package_name: "v1-stage0-emit-core".to_string(), diff --git a/src/v1/stage0_emit_core/Cargo.toml b/src/v1/stage0_emit_core/Cargo.toml index a75ed8ddfe0..e1d52a050ca 100644 --- a/src/v1/stage0_emit_core/Cargo.toml +++ b/src/v1/stage0_emit_core/Cargo.toml @@ -13,7 +13,6 @@ unicode-properties = { version = "0.1", features = ["emoji"] } v1-stage0-runtime = { path = "../stage0_runtime" } v1-stage0-std-core = { path = "../stage0_std_core" } v1-stage0-std-surface = { path = "../stage0_std_surface" } -v1-stage0-extdeps-base = { path = "../stage0_extdeps_base" } v1-stage0-extdeps-languages = { path = "../stage0_extdeps_languages" } v1-stage0-v1-infer = { path = "../stage0_v1_infer" } v1-stage0-v1-artifact = { path = "../stage0_v1_artifact" } diff --git a/src/v1/stage0_extdeps_base/Cargo.toml b/src/v1/stage0_extdeps_base/Cargo.toml deleted file mode 100644 index 283638642d3..00000000000 --- a/src/v1/stage0_extdeps_base/Cargo.toml +++ /dev/null @@ -1,15 +0,0 @@ -[package] -name = "v1-stage0-extdeps-base" -version = "0.1.0" -edition = "2021" - -[dependencies] -stacker = "0.1" -im = { version = "15.1", features = ["serde"] } -serde = { version = "1", features = ["derive", "rc"] } -serde_json = "1" -unicode-ident = "1" -unicode-properties = { version = "0.1", features = ["emoji"] } -v1-stage0-runtime = { path = "../stage0_runtime" } -v1-stage0-std-core = { path = "../stage0_std_core" } -v1-stage0-std-surface = { path = "../stage0_std_surface" } diff --git a/src/v1/stage0_extdeps_base/src/lib.rs b/src/v1/stage0_extdeps_base/src/lib.rs deleted file mode 100644 index 64524f16cfb..00000000000 --- a/src/v1/stage0_extdeps_base/src/lib.rs +++ /dev/null @@ -1,30 +0,0 @@ -//! Generated by regen_stage0 -- do not edit. -//! -//! Layered core crate in the derived stage0 partition. -//! -//! Owns its module bodies via path includes and re-exports lower partition -//! crates so `crate::` references in generated modules keep resolving. - -#![allow( - unused_imports, - unused_variables, - unused_mut, - unused_parens, - dead_code, - non_shorthand_field_patterns, - suspicious_double_ref_op, - clippy::all -)] -#![deny(unreachable_patterns)] -#![recursion_limit = "256"] - -pub use v1_stage0_runtime::*; -pub use v1_stage0_std_core::*; -pub use v1_stage0_std_surface::*; - -#[rustfmt::skip] -#[path = "../../stage0/src/extdeps_external_authority.rs"] -pub mod extdeps_external_authority; -#[rustfmt::skip] -#[path = "../../stage0/src/extdeps_uri.rs"] -pub mod extdeps_uri; diff --git a/src/v1/stage0_extdeps_languages/Cargo.toml b/src/v1/stage0_extdeps_languages/Cargo.toml index aebd0d35b42..4326d899d31 100644 --- a/src/v1/stage0_extdeps_languages/Cargo.toml +++ b/src/v1/stage0_extdeps_languages/Cargo.toml @@ -13,4 +13,3 @@ unicode-properties = { version = "0.1", features = ["emoji"] } v1-stage0-runtime = { path = "../stage0_runtime" } v1-stage0-std-core = { path = "../stage0_std_core" } v1-stage0-std-surface = { path = "../stage0_std_surface" } -v1-stage0-extdeps-base = { path = "../stage0_extdeps_base" } diff --git a/src/v1/stage0_extdeps_languages/src/lib.rs b/src/v1/stage0_extdeps_languages/src/lib.rs index 87ed4023547..6affc3bd7c3 100644 --- a/src/v1/stage0_extdeps_languages/src/lib.rs +++ b/src/v1/stage0_extdeps_languages/src/lib.rs @@ -18,7 +18,6 @@ #![deny(unreachable_patterns)] #![recursion_limit = "256"] -pub use v1_stage0_extdeps_base::*; pub use v1_stage0_runtime::*; pub use v1_stage0_std_core::*; pub use v1_stage0_std_surface::*; diff --git a/src/v1/stage0_std_core/src/lib.rs b/src/v1/stage0_std_core/src/lib.rs index 243fa83828c..0064ebda755 100644 --- a/src/v1/stage0_std_core/src/lib.rs +++ b/src/v1/stage0_std_core/src/lib.rs @@ -87,5 +87,23 @@ pub mod std_iteration; #[path = "../../stage0/src/std_graph.rs"] pub mod std_graph; #[rustfmt::skip] +#[path = "../../stage0/src/extdeps_uri.rs"] +pub mod extdeps_uri; +#[rustfmt::skip] +#[path = "../../stage0/src/extdeps_external_authority.rs"] +pub mod extdeps_external_authority; +#[rustfmt::skip] +#[path = "../../stage0/src/extdeps_units_dimensionless.rs"] +pub mod extdeps_units_dimensionless; +#[rustfmt::skip] +#[path = "../../stage0/src/extdeps_units_iec_80000_13.rs"] +pub mod extdeps_units_iec_80000_13; +#[rustfmt::skip] +#[path = "../../stage0/src/extdeps_units_iso8601.rs"] +pub mod extdeps_units_iso8601; +#[rustfmt::skip] +#[path = "../../stage0/src/std_occurrence_identity.rs"] +pub mod std_occurrence_identity; +#[rustfmt::skip] #[path = "../../stage0/src/v1_std_core.rs"] pub mod v1_std_core; diff --git a/src/v1/stage0_std_surface/src/lib.rs b/src/v1/stage0_std_surface/src/lib.rs index a8c445e2994..2bb14eca190 100644 --- a/src/v1/stage0_std_surface/src/lib.rs +++ b/src/v1/stage0_std_surface/src/lib.rs @@ -36,3 +36,6 @@ pub mod std_pareto; #[rustfmt::skip] #[path = "../../stage0/src/std_realization_schedule.rs"] pub mod std_realization_schedule; +#[rustfmt::skip] +#[path = "../../stage0/src/std_trait_derive_shape.rs"] +pub mod std_trait_derive_shape; diff --git a/src/v1/stage0_v1_artifact/Cargo.toml b/src/v1/stage0_v1_artifact/Cargo.toml index 8260fda60f2..071afe4e901 100644 --- a/src/v1/stage0_v1_artifact/Cargo.toml +++ b/src/v1/stage0_v1_artifact/Cargo.toml @@ -13,6 +13,5 @@ unicode-properties = { version = "0.1", features = ["emoji"] } v1-stage0-runtime = { path = "../stage0_runtime" } v1-stage0-std-core = { path = "../stage0_std_core" } v1-stage0-std-surface = { path = "../stage0_std_surface" } -v1-stage0-extdeps-base = { path = "../stage0_extdeps_base" } v1-stage0-extdeps-languages = { path = "../stage0_extdeps_languages" } v1-stage0-v1-infer = { path = "../stage0_v1_infer" } diff --git a/src/v1/stage0_v1_artifact/src/lib.rs b/src/v1/stage0_v1_artifact/src/lib.rs index e48b08ffbd9..9e631f31e19 100644 --- a/src/v1/stage0_v1_artifact/src/lib.rs +++ b/src/v1/stage0_v1_artifact/src/lib.rs @@ -18,7 +18,6 @@ #![deny(unreachable_patterns)] #![recursion_limit = "256"] -pub use v1_stage0_extdeps_base::*; pub use v1_stage0_extdeps_languages::*; pub use v1_stage0_runtime::*; pub use v1_stage0_std_core::*; diff --git a/src/v1/stage0_v1_infer/Cargo.toml b/src/v1/stage0_v1_infer/Cargo.toml index ceece26e924..e6771854fd0 100644 --- a/src/v1/stage0_v1_infer/Cargo.toml +++ b/src/v1/stage0_v1_infer/Cargo.toml @@ -13,5 +13,4 @@ unicode-properties = { version = "0.1", features = ["emoji"] } v1-stage0-runtime = { path = "../stage0_runtime" } v1-stage0-std-core = { path = "../stage0_std_core" } v1-stage0-std-surface = { path = "../stage0_std_surface" } -v1-stage0-extdeps-base = { path = "../stage0_extdeps_base" } v1-stage0-extdeps-languages = { path = "../stage0_extdeps_languages" } diff --git a/src/v1/stage0_v1_infer/src/lib.rs b/src/v1/stage0_v1_infer/src/lib.rs index ff69009ab09..f9286473a97 100644 --- a/src/v1/stage0_v1_infer/src/lib.rs +++ b/src/v1/stage0_v1_infer/src/lib.rs @@ -18,7 +18,6 @@ #![deny(unreachable_patterns)] #![recursion_limit = "256"] -pub use v1_stage0_extdeps_base::*; pub use v1_stage0_extdeps_languages::*; pub use v1_stage0_runtime::*; pub use v1_stage0_std_core::*; @@ -34,6 +33,9 @@ pub mod v1_compiler_infer_env; #[path = "../../stage0/src/v1_compiler_infer_items.rs"] pub mod v1_compiler_infer_items; #[rustfmt::skip] +#[path = "../../stage0/src/v1_compiler_infer_occurrence_binding.rs"] +pub mod v1_compiler_infer_occurrence_binding; +#[rustfmt::skip] #[path = "../../stage0/src/v1_compiler_infer_service.rs"] pub mod v1_compiler_infer_service; #[rustfmt::skip] diff --git a/src/v2/test/claim/rust_crate_partition_witness_test.dag b/src/v2/test/claim/rust_crate_partition_witness_test.dag index 88ef9630f0f..a9ae236cbc8 100644 --- a/src/v2/test/claim/rust_crate_partition_witness_test.dag +++ b/src/v2/test/claim/rust_crate_partition_witness_test.dag @@ -226,7 +226,7 @@ test fn witness_v1_infer_unit_members_holds() -> Bool { Stage0PartitionReceiptOk { units: units } => match partition_unit_by_id(units: units, unit_id: stage0_unit_v1_infer) { Present { value: unit } => - (unit.members |> count) == 6 + (unit.members |> count) == 7 Absent => false } Stage0PartitionReceiptResolveRefused { cause: _ } => false diff --git a/src/v2/workflow/rust_crate_partition.dag b/src/v2/workflow/rust_crate_partition.dag index 7f18128357b..8c5ae1d029b 100644 --- a/src/v2/workflow/rust_crate_partition.dag +++ b/src/v2/workflow/rust_crate_partition.dag @@ -92,11 +92,11 @@ data rust_crate_partition_note: String = "Rust R3 workflow realization of the sh data rust_crate_partition_dissolve_on: String = "dissolve-on: rust_crate_partition_interim_explicit — replace ExplicitPartition assignment with PolicyPartition { target_crate_count: declared_core_target } when balanced partition policy lands; provenance flips HandExplicit → PolicyDerived." -data rust_crate_partition_declared_core_target: Int = 8 +data rust_crate_partition_declared_core_target: Int = 7 -data rust_crate_partition_module_bearing_unit_target: Int = 7 +data rust_crate_partition_module_bearing_unit_target: Int = 6 -data stage0_r3_emit_shell_note: String = "R3-only emit shell crate (reexport surface, NOT a partition_fold CompilationUnit): modules list is the reexport bundle for render at cutover; those modules remain owned by module-bearing units in stage0_interim_explicit_assignment. Physical crate count = module_bearing (7) + emit_shell (1) = declared_core_target (8)." +data stage0_r3_emit_shell_note: String = "R3-only emit shell crate (reexport surface, NOT a partition_fold CompilationUnit): modules list is the reexport bundle for render at cutover; those modules remain owned by module-bearing units in stage0_interim_explicit_assignment. Physical crate count = module_bearing (6) + emit_shell (1) = declared_core_target (7)." data stage0_unit_runtime: CompilationUnitId = "stage0-unit-runtime" as ContentHash data stage0_unit_std_primitives: CompilationUnitId = "stage0-unit-std-primitives" as ContentHash @@ -104,7 +104,6 @@ data stage0_unit_std_core: CompilationUnitId = "stage0-unit-std-core" as Content data stage0_unit_std_surface: CompilationUnitId = "stage0-unit-std-surface" as ContentHash data stage0_unit_extdeps: CompilationUnitId = "stage0-unit-extdeps" as ContentHash data stage0_unit_v1_infer: CompilationUnitId = "stage0-unit-v1-infer" as ContentHash -data stage0_unit_extdeps_base: CompilationUnitId = "stage0-unit-extdeps-base" as ContentHash data stage0_unit_extdeps_languages: CompilationUnitId = "stage0-unit-extdeps-languages" as ContentHash data stage0_unit_v1_artifact: CompilationUnitId = "stage0-unit-v1-artifact" as ContentHash data stage0_unit_emit_core: CompilationUnitId = "stage0-unit-emit-core" as ContentHash @@ -212,6 +211,12 @@ fn stage0_std_core_modules() -> List { "std_induction", "std_iteration", "std_graph", + "extdeps_uri", + "extdeps_external_authority", + "extdeps_units_dimensionless", + "extdeps_units_iec_80000_13", + "extdeps_units_iso8601", + "std_occurrence_identity", "v1_std_core" ]) } @@ -222,14 +227,11 @@ fn stage0_std_surface_modules() -> List { "std_execution_mode", "std_interface_summary", "std_pareto", - "std_realization_schedule" + "std_realization_schedule", + "std_trait_derive_shape" ] } -fn stage0_extdeps_base_modules() -> List { - ["extdeps_external_authority", "extdeps_uri"] -} - fn stage0_extdeps_language_modules() -> List { [ "extdeps_languages_dag_emit", @@ -248,8 +250,7 @@ fn stage0_extdeps_language_modules() -> List { } fn stage0_extdeps_modules() -> List { - stage0_extdeps_base_modules() - |> concat(stage0_extdeps_language_modules()) + stage0_extdeps_language_modules() } fn stage0_v1_infer_modules() -> List { @@ -257,6 +258,7 @@ fn stage0_v1_infer_modules() -> List { "v1_compiler_infer_emit_info", "v1_compiler_infer_env", "v1_compiler_infer_items", + "v1_compiler_infer_occurrence_binding", "v1_compiler_infer_service", "v1_compiler_infer_sigs", "v1_compiler_infer_types" @@ -306,19 +308,15 @@ fn stage0_interim_explicit_assignment() -> Map { assignment: stage0_assign_modules_to_unit( assignment: stage0_assign_modules_to_unit( assignment: stage0_assign_modules_to_unit( - assignment: stage0_assign_modules_to_unit( - assignment: empty_map(), - modules: stage0_runtime_modules(), - unit_id: stage0_unit_runtime - ), - modules: stage0_std_core_modules(), - unit_id: stage0_unit_std_core + assignment: empty_map(), + modules: stage0_runtime_modules(), + unit_id: stage0_unit_runtime ), - modules: stage0_std_surface_modules(), - unit_id: stage0_unit_std_surface + modules: stage0_std_core_modules(), + unit_id: stage0_unit_std_core ), - modules: stage0_extdeps_base_modules(), - unit_id: stage0_unit_extdeps_base + modules: stage0_std_surface_modules(), + unit_id: stage0_unit_std_surface ), modules: stage0_extdeps_language_modules(), unit_id: stage0_unit_extdeps_languages @@ -362,6 +360,9 @@ fn stage0_cross_unit_import_edges() -> List { stage0_module_dag_edge(from: "std_induction", to: "std_computation"), stage0_module_dag_edge(from: "std_induction", to: "std_termination"), stage0_module_dag_edge(from: "std_graph", to: "std_termination"), + stage0_module_dag_edge(from: "std_measure", to: "extdeps_units_dimensionless"), + stage0_module_dag_edge(from: "std_measure", to: "extdeps_units_iec_80000_13"), + stage0_module_dag_edge(from: "std_measure", to: "extdeps_units_iso8601"), stage0_module_dag_edge(from: "std_effects", to: "std_types"), stage0_module_dag_edge(from: "std_execution_mode", to: "std_types"), stage0_module_dag_edge(from: "std_interface_summary", to: "std_decl_ref"), @@ -377,6 +378,7 @@ fn stage0_cross_unit_import_edges() -> List { stage0_module_dag_edge(from: "extdeps_languages_go_syntax", to: "std_syntax"), stage0_module_dag_edge(from: "extdeps_languages_python_syntax", to: "std_syntax"), stage0_module_dag_edge(from: "extdeps_languages_rust_syntax", to: "std_syntax"), + stage0_module_dag_edge(from: "extdeps_languages_rust_emit", to: "std_trait_derive_shape"), stage0_module_dag_edge(from: "v1_std_core", to: "std_algebra"), stage0_module_dag_edge(from: "v1_std_core", to: "std_induction"), stage0_module_dag_edge(from: "v1_std_core", to: "std_syntax"), @@ -386,6 +388,8 @@ fn stage0_cross_unit_import_edges() -> List { stage0_module_dag_edge(from: "v1_compiler_infer_service", to: "v1_compiler_infer_items"), stage0_module_dag_edge(from: "v1_compiler_infer_types", to: "v1_compiler_infer_items"), stage0_module_dag_edge(from: "v1_compiler_infer_env", to: "v1_compiler_infer_items"), + stage0_module_dag_edge(from: "v1_compiler_infer_env", to: "v1_compiler_infer_occurrence_binding"), + stage0_module_dag_edge(from: "v1_compiler_infer_sigs", to: "v1_compiler_infer_occurrence_binding"), stage0_module_dag_edge(from: "v1_compiler_infer_emit_info", to: "v1_compiler_infer_items"), stage0_module_dag_edge(from: "v1_compiler_artifact", to: "v1_compiler_languages"), ] @@ -586,19 +590,6 @@ fn stage0_module_bearing_crate_rows() -> List { ], carries_non_empty_wrappers: false }, - Stage0PartitionCrateRow { - unit_id: stage0_unit_extdeps_base, - package_name: "v1-stage0-extdeps-base", - crate_dir: "src/v1/stage0_extdeps_base", - kind: Stage0LayeredCoreCrate, - modules: stage0_extdeps_base_modules(), - reexport_packages: [ - "v1-stage0-runtime", - "v1-stage0-std-core", - "v1-stage0-std-surface" - ], - carries_non_empty_wrappers: false - }, Stage0PartitionCrateRow { unit_id: stage0_unit_extdeps_languages, package_name: "v1-stage0-extdeps-languages", @@ -608,8 +599,7 @@ fn stage0_module_bearing_crate_rows() -> List { reexport_packages: [ "v1-stage0-runtime", "v1-stage0-std-core", - "v1-stage0-std-surface", - "v1-stage0-extdeps-base" + "v1-stage0-std-surface" ], carries_non_empty_wrappers: false }, @@ -623,7 +613,6 @@ fn stage0_module_bearing_crate_rows() -> List { "v1-stage0-runtime", "v1-stage0-std-core", "v1-stage0-std-surface", - "v1-stage0-extdeps-base", "v1-stage0-extdeps-languages" ], carries_non_empty_wrappers: false @@ -638,7 +627,6 @@ fn stage0_module_bearing_crate_rows() -> List { "v1-stage0-runtime", "v1-stage0-std-core", "v1-stage0-std-surface", - "v1-stage0-extdeps-base", "v1-stage0-extdeps-languages", "v1-stage0-v1-infer" ], From 4540dea36454639524357d5bdbbb1ba5838aa79e Mon Sep 17 00:00:00 2001 From: gunbc-ci-auto-heal Date: Sun, 2 Aug 2026 01:42:02 +0000 Subject: [PATCH 2/2] Derive the merged partition: extdeps_container_oci_digest joins std-core emission main_wet + two-generation regen_stage0 over the merge resolution; no generated file hand-edited; regen --verify divergence 0. Workspace check and fmt green. Co-Authored-By: Claude Fable 5 --- dag/gunbc/stage0_crate_partition_generated.dag | 1 + src/v1/stage0/src/gunbc_stage0_crate_partition_generated.rs | 2 +- src/v1/stage0_std_core/src/lib.rs | 3 +++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/dag/gunbc/stage0_crate_partition_generated.dag b/dag/gunbc/stage0_crate_partition_generated.dag index d2a69dc0b13..d97c3b75610 100644 --- a/dag/gunbc/stage0_crate_partition_generated.dag +++ b/dag/gunbc/stage0_crate_partition_generated.dag @@ -60,6 +60,7 @@ data generated_partition_crate_rows: List = [ "std_graph", "extdeps_uri", "extdeps_external_authority", + "extdeps_container_oci_digest", "extdeps_units_dimensionless", "extdeps_units_iec_80000_13", "extdeps_units_iso8601", diff --git a/src/v1/stage0/src/gunbc_stage0_crate_partition_generated.rs b/src/v1/stage0/src/gunbc_stage0_crate_partition_generated.rs index 1c25799bcf7..a3b87011f08 100644 --- a/src/v1/stage0/src/gunbc_stage0_crate_partition_generated.rs +++ b/src/v1/stage0/src/gunbc_stage0_crate_partition_generated.rs @@ -54,7 +54,7 @@ pub fn generated_partition_crate_rows() -> Rc package_name: "v1-stage0-std-core".to_string(), crate_dir: "src/v1/stage0_std_core".to_string(), kind: GeneratedPartitionCrateKind::GeneratedLayeredCoreCrate, - modules: Rc::new(vec!["std_content_hash".to_string(), "std_coercion".to_string(), "std_currency".to_string(), "std_decl_ref".to_string(), "std_roster_frontier".to_string(), "std_disposition".to_string(), "std_error_primitives".to_string(), "std_http_path".to_string(), "std_emit_model".to_string(), "std_magnitude".to_string(), "std_measure".to_string(), "std_types".to_string(), "std_lens_verdict".to_string(), "std_algebra".to_string(), "std_nat".to_string(), "std_node".to_string(), "std_syntax".to_string(), "std_computation".to_string(), "std_termination".to_string(), "std_induction".to_string(), "std_iteration".to_string(), "std_graph".to_string(), "extdeps_uri".to_string(), "extdeps_external_authority".to_string(), "extdeps_units_dimensionless".to_string(), "extdeps_units_iec_80000_13".to_string(), "extdeps_units_iso8601".to_string(), "std_occurrence_identity".to_string(), "v1_std_core".to_string()]), + modules: Rc::new(vec!["std_content_hash".to_string(), "std_coercion".to_string(), "std_currency".to_string(), "std_decl_ref".to_string(), "std_roster_frontier".to_string(), "std_disposition".to_string(), "std_error_primitives".to_string(), "std_http_path".to_string(), "std_emit_model".to_string(), "std_magnitude".to_string(), "std_measure".to_string(), "std_types".to_string(), "std_lens_verdict".to_string(), "std_algebra".to_string(), "std_nat".to_string(), "std_node".to_string(), "std_syntax".to_string(), "std_computation".to_string(), "std_termination".to_string(), "std_induction".to_string(), "std_iteration".to_string(), "std_graph".to_string(), "extdeps_uri".to_string(), "extdeps_external_authority".to_string(), "extdeps_container_oci_digest".to_string(), "extdeps_units_dimensionless".to_string(), "extdeps_units_iec_80000_13".to_string(), "extdeps_units_iso8601".to_string(), "std_occurrence_identity".to_string(), "v1_std_core".to_string()]), reexport_packages: Rc::new(vec!["v1-stage0-runtime".to_string()]), carries_non_empty_wrappers: false, }), Rc::new(GeneratedPartitionCrateRow { diff --git a/src/v1/stage0_std_core/src/lib.rs b/src/v1/stage0_std_core/src/lib.rs index 0064ebda755..a346b8c1a90 100644 --- a/src/v1/stage0_std_core/src/lib.rs +++ b/src/v1/stage0_std_core/src/lib.rs @@ -93,6 +93,9 @@ pub mod extdeps_uri; #[path = "../../stage0/src/extdeps_external_authority.rs"] pub mod extdeps_external_authority; #[rustfmt::skip] +#[path = "../../stage0/src/extdeps_container_oci_digest.rs"] +pub mod extdeps_container_oci_digest; +#[rustfmt::skip] #[path = "../../stage0/src/extdeps_units_dimensionless.rs"] pub mod extdeps_units_dimensionless; #[rustfmt::skip]