Skip to content
Closed
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
3 changes: 0 additions & 3 deletions src/v1/dag_collect.dag
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,6 @@ fn dag_collect_insert_slots(node: Node, slots: Map<String, DagCollectSlot>, coll
Present { value: _ } => slots
Absent => {
let fp = if anchor.span.start == 0 && anchor.span.end == 0 {
// Synthetic keys embed the fingerprint; Absent branch must not re-hash.
substring(s: key, start: 6, end: string_length(s: key))
} else {
dag_node_fingerprint(node: anchor)
Expand All @@ -144,8 +143,6 @@ fn dag_collect_from_module(module: TypedModule, slots: Map<String, DagCollectSlo

fn collect_dag_nodes(typed: ResolvedGraph) -> DagCollectAcc {
let _memo_reset = dag_collect_fp_memo_reset()
// Dissolve-on: drop collision_errors threading once synthetic-key construction proof
// is a typed wall (key embeds fp ⇒ key-equal ⇒ fp-equal); kept for emit_dag gate shape.
let collision_errors = []
let slots = typed.modules
|> fold(init: empty_map(), f: (s, m) => dag_collect_from_module(module: m, slots: s, collision_errors: collision_errors))
Expand Down
3 changes: 0 additions & 3 deletions src/v1/dag_collect_support.dag
Original file line number Diff line number Diff line change
Expand Up @@ -118,9 +118,6 @@ fn dag_node_surface_fingerprint(node: Node) -> String {
dag_node_surface_fingerprint_rec(node: node)
}

// Dissolve-on: ground on std.content_hash + node-keyed memo table once v2 adoption
// clears for this stage. Realization threads a per-collect memo reset at
// collect_dag_nodes entry; Rust seed uses Rc::as_ptr until then.
fn dag_collect_fp_memo_reset() -> Bool {
true
}
Expand Down
11 changes: 9 additions & 2 deletions src/v1/stage0/src/bin/regen_stage0.rs
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,6 @@ const GENERATED_STAGE0_FILES: &[&str] = &[
"v1_compiler_compile.rs",
"v1_compiler_compiler_tests_rust.rs",
"v1_compiler_complexity.rs",
"v1_compiler_dag_collect.rs",
"v1_compiler_dag_collect_support.rs",
"v1_compiler_effect_derivation.rs",
"v1_compiler_emit.rs",
"v1_compiler_emit_core_support.rs",
Expand Down Expand Up @@ -133,6 +131,15 @@ const HAND_MAINTAINED_STAGE0_FILES: &[&str] = &[
// regen is unblocked (04_resolve.dag) and std.content_hash memo rows emit. Regen without
// this guard reverted to DagCollectPending / O(M²) three times (90ad8fa, 42c8f3d, …).
// Dissolution: regen_stage0 --verify green with .dag model = emitted seed; drop from here.
// Re-homed dissolution triggers from the (unparseable) .dag comments #6242 added:
// - dag_collect_support.dag fp memo: ground dag_node_surface_fingerprint_memo on
// std.content_hash + a node-keyed memo table once v2 adoption clears for this stage
// (realization threads a per-collect memo reset at collect_dag_nodes entry; the Rust
// seed uses Rc::as_ptr until then).
// - dag_collect.dag collision_errors threading: drop once synthetic-key construction
// proof is a typed wall (key embeds fp => key-equal => fp-equal); kept for the
// emit_dag gate shape. Synthetic keys embed the fingerprint; the Absent branch must
// not re-hash.
"v1_compiler_dag_collect.rs",
"v1_compiler_dag_collect_support.rs",
];
Expand Down
Loading