From 3988a0dc020d591175409189c0ee4dc4b4603b80 Mon Sep 17 00:00:00 2001 From: Jan Petykiewicz Date: Sat, 18 Apr 2026 17:40:41 -0700 Subject: [PATCH] Ground region severity source helper family --- crates/rrt-runtime/src/smp.rs | 8 +++++++- docs/rehost-queue.md | 6 ++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/crates/rrt-runtime/src/smp.rs b/crates/rrt-runtime/src/smp.rs index ad949bc..6ce89f9 100644 --- a/crates/rrt-runtime/src/smp.rs +++ b/crates/rrt-runtime/src/smp.rs @@ -4200,6 +4200,9 @@ fn build_region_service_trace_report( .to_string(), "0x00455930 region triplet-band tagged serializer callback (world-region vtable +0x4c)" .to_string(), + "0x004cc930 selected-region severity/source editor helper".to_string(), + "0x00438150 fixed-region severity/source reseed owner".to_string(), + "0x00442cc0 fixed-region severity/source clamp owner".to_string(), ]; let next_owner_questions = vec![ "Which restore seam re-seeds [region+0x25e] and clears [region+0x302/+0x316] before the grounded 0x00422100 -> 0x004358d0 producer/consumer cycle runs again?".to_string(), @@ -4362,6 +4365,9 @@ fn build_region_service_trace_report( notes.push( "Direct disassembly now grounds the core producer/consumer pair itself: 0x00422100 seeds [region+0x276] from the severity/source lane [region+0x25e] and appends the kind-7 notice through 0x004337c0, while 0x004358d0 consumes that amount, runs the city-connection peer probes 0x00420030/0x00420280 plus the linked-company resolver 0x0047efe0, and then stamps [region+0x302] or [region+0x316].".to_string(), ); + notes.push( + "Direct disassembly now also tightens the severity/source side itself: 0x004cc930 is a selected-region editor helper that writes [region+0x25a] and [region+0x25e] together from one integer input, while 0x00438150 and 0x00442cc0 are fixed-region global reseed/clamp owners over collection 0x0062bae0 that adjust the same mirrored pair for hardcoded region ids.".to_string(), + ); notes.push( "The current region seam is strong enough to prove record-envelope ownership, profile subcollection ownership, and the absence of hidden 0x55f3 tail padding on grounded saves.".to_string(), ); @@ -25596,7 +25602,7 @@ mod tests { assert_eq!(trace.queued_notice_record_count, 0); assert!(!trace.atlas_candidate_consumers.is_empty()); assert_eq!(trace.known_owner_bridge_fields.len(), 6); - assert_eq!(trace.known_bridge_helpers.len(), 11); + assert_eq!(trace.known_bridge_helpers.len(), 14); assert_eq!(trace.next_owner_questions.len(), 3); assert_eq!(trace.candidate_consumer_hypotheses.len(), 4); assert_eq!( diff --git a/docs/rehost-queue.md b/docs/rehost-queue.md index c32936d..82e986c 100644 --- a/docs/rehost-queue.md +++ b/docs/rehost-queue.md @@ -331,6 +331,12 @@ Working rule: `[region+0x276]`, and appends the kind-`7` queued notice through `0x004337c0`. That means the remaining region gap is now explicitly the upstream restore seam for `[region+0x25e]` and the completion/fallback latch clear, not either side of the producer/consumer service pair. +- The severity/source lane itself is narrower now too: `0x004cc930` is a selected-region editor + helper that writes `[region+0x25a]` and `[region+0x25e]` together from one integer input, while + `0x00438150` and `0x00442cc0` are fixed-region global reseed/clamp owners over collection + `0x0062bae0` that adjust the same mirrored pair for hardcoded region ids. So the remaining + region restore question is no longer “what does `[region+0x25e]` mean?” but “which load/reseed + seam restores the mirrored severity pair before the producer runs?” - The checked-in constructor owner `0x00421200` `world_region_construct_entry_with_id_class_and_default_marker09_profile_seed` now also grounds the initialization side of this family: it clears `[region+0x276]`, `[region+0x302]`,