diff --git a/crates/rrt-runtime/src/smp.rs b/crates/rrt-runtime/src/smp.rs index c336d1e..469803f 100644 --- a/crates/rrt-runtime/src/smp.rs +++ b/crates/rrt-runtime/src/smp.rs @@ -5920,6 +5920,7 @@ fn build_region_service_trace_report( "the checked-in shell-load subgraph and function map now place world_load_saved_runtime_state_bundle 0x00446d40 directly ahead of world_run_post_load_generation_pipeline 0x004384d0, so the first later non-hook owner family after the ruled-down 0x00444887 continuation is the post-load generation strip rather than another tagged region payload callback".to_string(), "0x004384d0 already exposes the stage ordering tightly enough to subdivide the next search: id 319 refreshes the route-entry collection, auxiliary route trackers, and then 0x004133b0 placed-structure local-runtime replay; id 320 runs 0x00421c20(1.0, 1) for the region-owned building setup strip; id 321 runs 0x00437b20 and then sweeps regions through 0x00423d30".to_string(), "direct disassembly now tightens the early 0x004384d0 setup strip too: before the conditional 320/321 gates it always runs 0x0044fb70 transport/pricing-grid setup and 0x0041ea50 candidate-local-service setup, and the extra arg-guarded 0x00421b60 -> 0x004882e0 default-region pair sits beside them as the last pre-320/321 setup branch. Those owners are therefore setup-side world-grid, candidate-table, and border-refresh work rather than the missing [region+0x2a4] / [region+0x310/+0x338/+0x360] republisher".to_string(), + "the neighboring 319 helpers are ruled down more tightly now too: 0x004377a0 stays on chairman-slot/profile materialization by normalizing the 16 slot bundles at [world+0x69da], republishing selector bytes into [0x006cec7c+0x87], populating the live chairman-profile collection 0x006ceb9c, and clearing selected company/chairman bytes [world+0x21/+0x25]; 0x004348e0 only gates the transient list at [world+0x66a6]; 0x00437c00 is that list's typed dispatcher over queue-node kind byte [node+0x08]; and the later 0x0044d410 calls are world-rect/grid refresh work. None of those helpers republish [region+0x2a4] or [region+0x310/+0x338/+0x360]".to_string(), "the 319 placed-structure replay strip is now grounded as more than generic setup glue: 0x004133b0 drains queued site ids through 0x0040e450, sweeps every live placed structure through 0x0040ee10, and then reaches the already-grounded linked-site follow-on 0x00480710, which is a stronger structural bridge into acquisition-side site or peer state than the ruled-down territory/support loaders".to_string(), "the surrounding 319 helpers are ruled down further now too: 0x00437220 and 0x004377a0 stay on chairman-slot selector/profile materialization over [world+0x69d8/+0x69db] and scenario selector bytes [0x006cec7c+0x87], while 0x00434d40 only seeds the subtype-2 candidate runtime latch [candidate+0x7b0] after the later burst".to_string(), "the 320 building setup strip is narrower but still relevant: 0x00421c20 dispatches every live region into 0x004235c0, and that worker consults the region profile collection [region+0x37f], the placed-instance registry 0x0062b26c, and demand-balancing helpers like 0x00422900/0x00422be0/0x00422ee0, so current evidence keeps it in the same acquisition-adjacent owner family even though it is not yet a direct writer to [region+0x2a4] or [region+0x310/+0x338/+0x360]".to_string(), diff --git a/docs/control-loop-atlas/post-load-generation-paintterrain-and-save-load-restore.md b/docs/control-loop-atlas/post-load-generation-paintterrain-and-save-load-restore.md index 7421637..b5d0fed 100644 --- a/docs/control-loop-atlas/post-load-generation-paintterrain-and-save-load-restore.md +++ b/docs/control-loop-atlas/post-load-generation-paintterrain-and-save-load-restore.md @@ -798,6 +798,19 @@ The same brush strip is tighter now too: work, not the missing later republisher for `[region+0x2a4]` or `[region+0x310/+0x338/+0x360]`. The + remaining `319` neighbors are ruled down in the same negative way now too. The post-`319` call + `0x004377a0` stays on chairman-slot/profile materialization: it normalizes the `16` slot bundles + rooted at `[world+0x69da]`, republishes selector bytes into `[0x006cec7c+0x87]`, populates the + live chairman-profile collection `0x006ceb9c`, and clears selected company/chairman bytes + `[world+0x21/+0x25]` before the optional `0x0047d440` news follow-on. Its neighboring queue + strip is explicit too: `0x004348e0` only gates whether the transient list at `[world+0x66a6]` + should run, `0x00437c00` is a typed dispatcher over queue-node kind byte `[node+0x08]`, and the + later `0x0044d410` calls are world-rect/grid refresh work. Those helpers therefore stay outside + the missing region restore seam, leaving the placed-structure replay strip + `0x004133b0 -> 0x0040ee10 -> 0x00480710` as the meaningful `319` bridge and pushing the + unresolved region handoff farther into the later post-load continuation above it rather than the + chairman/queue-side neighbors. + The region-side setup branches are narrower in the same negative way now too: `0x00421c20` is just the collection dispatcher, and its worker `0x004235c0` stays inside live region demand and placement by routing through `0x00422900` cached category accumulation, `0x004234e0` projected diff --git a/docs/rehost-queue.md b/docs/rehost-queue.md index 62040e4..0da74c6 100644 --- a/docs/rehost-queue.md +++ b/docs/rehost-queue.md @@ -1596,6 +1596,17 @@ Working rule: `[region+0x27a/+0x27e/+0x282/+0x286]`. So the next non-hook region work should start from the post-load `319` placed-structure replay seam and only then revisit the narrower region-side `320/321` branches if the exact field bridge is still missing. +- The `319` adjacency is tighter in another negative way now too. Direct disassembly of + `0x004377a0` shows the post-`319` call staying on chairman-slot/profile materialization: it + normalizes the `16` slot bundles at `[world+0x69da..]`, republishes selector bytes into + `[0x006cec7c+0x87]`, populates the live chairman-profile collection `0x006ceb9c`, and clears the + selected company/chairman bytes `[world+0x21/+0x25]` before the optional `0x0047d440` news + follow-on. The same trace rules down the companion queue strip too: `0x004348e0` is only the + gate for the transient list at `[world+0x66a6]`, `0x00437c00` is its typed dispatcher over + queue-node kind byte `[node+0x08]`, and the later `0x0044d410` calls are world-rect/grid refresh + work. None of those helpers republish `[region+0x2a4]` or `[region+0x310/+0x338/+0x360]`, so the + remaining region search stays centered on `0x004133b0 -> 0x0040ee10 -> 0x00480710` and the later + post-load continuation above it rather than the chairman/queue-side `319` neighbors. - The `319` plateau is split more cleanly now too: its neighboring world helpers are no longer plausible region-body owners. `0x00437220` and `0x004377a0` are the chairman-slot selector and profile materialization family over `[world+0x69d8]`, `[world+0x69db]`, and scenario selector