Rule down post-load region placement branches

This commit is contained in:
Jan Petykiewicz 2026-04-19 12:43:07 -07:00
commit a56d360a3e
4 changed files with 44 additions and 0 deletions

View file

@ -286,6 +286,10 @@ mod tests {
world_locomotive_policy_state: None, world_locomotive_policy_state: None,
company_roster: None, company_roster: None,
chairman_profile_table: None, chairman_profile_table: None,
region_collection: None,
region_fixed_row_run_summary: None,
placed_structure_collection: None,
placed_structure_dynamic_side_buffer_summary: None,
special_conditions_table: None, special_conditions_table: None,
event_runtime_collection: None, event_runtime_collection: None,
notes: vec![], notes: vec![],
@ -431,6 +435,10 @@ mod tests {
world_locomotive_policy_state: None, world_locomotive_policy_state: None,
company_roster: None, company_roster: None,
chairman_profile_table: None, chairman_profile_table: None,
region_collection: None,
region_fixed_row_run_summary: None,
placed_structure_collection: None,
placed_structure_dynamic_side_buffer_summary: None,
special_conditions_table: None, special_conditions_table: None,
event_runtime_collection: Some( event_runtime_collection: Some(
rrt_runtime::SmpLoadedEventRuntimeCollectionSummary { rrt_runtime::SmpLoadedEventRuntimeCollectionSummary {
@ -448,6 +456,20 @@ mod tests {
live_entry_ids: vec![7], live_entry_ids: vec![7],
decoded_record_count: 1, decoded_record_count: 1,
imported_runtime_record_count: 0, imported_runtime_record_count: 0,
records_with_trigger_kind: 0,
records_missing_trigger_kind: 0,
nondirect_compact_record_count: 0,
nondirect_compact_records_missing_trigger_kind: 0,
trigger_kinds_present: vec![],
add_building_dispatch_strip_record_indexes: vec![],
add_building_dispatch_strip_descriptor_labels: vec![],
add_building_dispatch_strip_records_with_trigger_kind: 0,
add_building_dispatch_strip_records_missing_trigger_kind: 0,
add_building_dispatch_strip_row_shape_families: vec![],
add_building_dispatch_strip_signature_families: vec![],
add_building_dispatch_strip_condition_tuple_families: vec![],
add_building_dispatch_strip_signature_condition_clusters: vec![],
control_lane_notes: vec![],
records: vec![rrt_runtime::SmpLoadedPackedEventRecordSummary { records: vec![rrt_runtime::SmpLoadedPackedEventRecordSummary {
record_index: 0, record_index: 0,
live_entry_id: 7, live_entry_id: 7,

View file

@ -5911,7 +5911,9 @@ fn build_region_service_trace_report(
"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(), "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(),
"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 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 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(), "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(),
"direct worker recovery now narrows 0x004235c0 further: it stays inside the live region demand-and-placement family by routing through 0x00422900 cached category accumulation, 0x004234e0 projected structure-count scalars, 0x00422be0 placed-count subtraction, and 0x00422ee0 placement attempts over 0x0062b26c rather than any restore-time field republisher".to_string(),
"the 321 economy-seeding tail is also now bounded as a narrower cache refresh rather than generic noise: 0x00437b20 only stages a fast-forward guard and then sweeps 0x0062bae0 through 0x00423d30, which refreshes the cached category band [region+0x27a/+0x27e/+0x282/+0x286], so it remains a weaker but still explicit post-load owner family to rule in or out before returning to the deeper 0x00446d40 continuation".to_string(), "the 321 economy-seeding tail is also now bounded as a narrower cache refresh rather than generic noise: 0x00437b20 only stages a fast-forward guard and then sweeps 0x0062bae0 through 0x00423d30, which refreshes the cached category band [region+0x27a/+0x27e/+0x282/+0x286], so it remains a weaker but still explicit post-load owner family to rule in or out before returning to the deeper 0x00446d40 continuation".to_string(),
"direct local disassembly now narrows 0x00423d30 as well: it only republishes [region+0x27a/+0x27e/+0x282/+0x286] through 0x00422900 after the 0x00437b20 burst and does not touch [region+0x2a4] or [region+0x310/+0x338/+0x360]".to_string(),
], ],
blockers: vec![ blockers: vec![
"current grounded evidence still does not show which post-load subphase actually republishes [region+0x2a4] or the cached tri-lane [region+0x310/+0x338/+0x360]".to_string(), "current grounded evidence still does not show which post-load subphase actually republishes [region+0x2a4] or the cached tri-lane [region+0x310/+0x338/+0x360]".to_string(),

View file

@ -788,6 +788,16 @@ The same brush strip is tighter now too:
way: when startup latch `0x006cd8d8` is clear it stamps `[0x006cec7c+0x79] = 1`, ensures way: when startup latch `0x006cd8d8` is clear it stamps `[0x006cec7c+0x79] = 1`, ensures
`[world+0x6a6c] >= 1`, forces chairman-seat byte `[world+0x69db] = 1`, and then re-enters `[world+0x6a6c] >= 1`, forces chairman-seat byte `[world+0x69db] = 1`, and then re-enters
`0x004377a0` before the later route-entry and placed-structure refresh families. The `0x004377a0` before the later route-entry and placed-structure refresh families. 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
structure-count scalars, `0x00422be0` placed-count subtraction, and `0x00422ee0` placement
attempts over the live placed-structure registry `0x0062b26c`. Likewise the `321` tail
`0x00437b20 -> 0x00423d30` only refreshes cached category slots
`[region+0x27a/+0x27e/+0x282/+0x286]` through `0x00422900`. So these post-load branches stay
ruled down as setup and cache-maintenance work rather than the missing restore-time republisher
for `[region+0x2a4]` or `[region+0x310/+0x338/+0x360]`.
The
editor-side read path is explicit on the same seam: editor-side read path is explicit on the same seam:
`map_editor_economic_cost_panel_refresh_preview_curve_and_numeric_rows` `0x004caaf0` reads the `map_editor_economic_cost_panel_refresh_preview_curve_and_numeric_rows` `0x004caaf0` reads the
same six-float band, builds the live preview curve on control `0x5be1`, and republishes the six same six-float band, builds the live preview curve on control `0x5be1`, and republishes the six

View file

@ -1565,6 +1565,16 @@ Working rule:
`[region+0x27a/+0x27e/+0x282/+0x286]`. So the next non-hook region work should start from the `[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 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. `320/321` branches if the exact field bridge is still missing.
- The `320` branch is narrower than that headline now too: direct worker recovery shows
`0x004235c0` staying inside the live region demand-and-placement family by routing through
`0x00422900` cached category accumulation, `0x004234e0` projected structure-count scalars,
`0x00422be0` placed-count subtraction, and `0x00422ee0` placement attempts over the live
placed-structure registry `0x0062b26c`. That keeps it on live setup and maintenance work rather
than any restore-time republisher for `[region+0x2a4]` or `[region+0x310/+0x338/+0x360]`.
- The `321` branch is narrower in the same way: `0x00437b20` only stages the fast-forward burst,
then re-enters the live region collection through `0x00423d30`, and that helper only republishes
`[region+0x27a/+0x27e/+0x282/+0x286]` via `0x00422900`. It should stay ruled down as a cached
summary refresh instead of a plausible owner for the missing restore-side body lanes.
- The later restore-side region owners are narrowed further now too: the `0x00421ce0 -> - The later restore-side region owners are narrowed further now too: the `0x00421ce0 ->
0x0041fb00 -> 0x00421730` sweep is class-`0` raster/id rebuild, `0x004881b0` is a companion 0x0041fb00 -> 0x00421730` sweep is class-`0` raster/id rebuild, `0x004881b0` is a companion
region-set cell-count rebuild over `[region+0x3d/+0x41]`, `0x00487de0` is a border-segment region-set cell-count rebuild over `[region+0x3d/+0x41]`, `0x00487de0` is a border-segment