Ground region producer and consumer latch owners

This commit is contained in:
Jan Petykiewicz 2026-04-18 17:38:16 -07:00
commit 241f5e256a
2 changed files with 20 additions and 8 deletions

View file

@ -311,9 +311,9 @@ Working rule:
transient producer/queue family explicitly secondary and the queued kind-`7` modal dispatch kept
as shell-adjacent reference only.
- For that top-ranked region strip, treat the next pass as three exact owner questions too: which
persisted owner seam restores or rebuilds `[region+0x25e/+0x276/+0x302/+0x316]`, which stable
region id or class discriminator survives save/load strongly enough to drive `0x004358d0`, and
how far the grounded city-connection peer/linkage helpers
restore seam re-seeds `[region+0x25e]` and clears `[region+0x302/+0x316]` before the grounded
`0x00422100 -> 0x004358d0` producer/consumer cycle runs again, which stable region id or class
discriminator survives save/load strongly enough to drive `0x004358d0`, and how far the grounded city-connection peer/linkage helpers
(`0x00420030/0x00420280`, `0x0047efe0`) can be reused directly before the transient queued-notice
family matters again.
- Targeted disassembly now tightens that strip too: `0x004358d0` calls `0x00420030` twice plus
@ -324,6 +324,13 @@ Working rule:
`0x0047fd50`, and the status branch `0x0047de00 -> 0x0040c990`; `0x00420280` is the same scan
returning the first matching site id. So the remaining unknown is the persisted latch/id seam,
not the live peer/service logic.
- The producer half is grounded now too: `0x00422100` filters for class-`0` regions with
`[region+0x276]==0` and `[region+0x302]==0`, rejects already-connected pairs through
`0x00420030(1,1,0,0)`, chooses one eligible candidate, buckets severity/source lane
`[region+0x25e]` against the three checked thresholds, writes the resulting amount to
`[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 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]`,