Narrow tier2 stock selector to machine shop outlier

This commit is contained in:
Jan Petykiewicz 2026-04-19 15:38:14 -07:00
commit cf6d36b8e7
4 changed files with 176 additions and 5 deletions

View file

@ -861,6 +861,13 @@ Working rule:
`Warehouse%02d` banks are hidden station-style aliases; it is why the later clone path prefers
this narrower `0x000001f4` stock family over the zero-valued station and
maintenance/service families when it seeds those numbered banks.
The stock rebuild handoff above that seed question is tighter now too. Direct disassembly of
`0x004196c0` shows the broader stock `*.bca` rebuild loop formatting the wildcard path rooted
at `0x005c93fc`, iterating the file enumerator through the `0x005c8190/0x005c8194/0x005c819c`
find-first/find-next strip, calling the per-file stock loader `0x00414490` for each hit, and
only then tail-calling `0x00419230`. So the remaining Tier-2 source problem is increasingly
“which stock rows that rebuild admits or seeds with nonzero bank bytes” rather than “which
unrelated later scheduler invokes the banked clone pass.”
The direct `+0xba/+0xbb` writer census is narrower now too. The obvious newly surfaced stores
at `0x004ecd42/0x004ecdaa` and `0x004ed5d5/0x004ed625` are only shell-side portrait/string
refresh helpers: they walk a separate id-keyed collection through `0x0053f830`, free and
@ -1294,6 +1301,20 @@ Working rule:
is which stock alias-root cluster gets selected, and why some later clone/replay paths prefer
the nonzero `0x000001f4` cluster while the peer-site residue can still surface a zero-family
`WeaponsFactory`-side root
- the stock-cluster-to-selector join is explicit now too: the checked-in `name_0x5e` +
`.bca` selector summary shows every grounded alias cluster is zero-selector by default,
including the nonzero `0x000001f4` clusters (`TextileMill x9`, `LumberMill x4`,
`MeatPackingPlant x4`, `Distillery x2`, `Toolndie x2`) and the zero-family
`WeaponsFactory x6` cluster. The only surfaced nonzero joined outlier is
`MachineShop` inside the nonzero `TextileMill` cluster (`byte_0xba = 0x3f`, `byte_0xbb = 0x00`).
So the next Tier-2 source-selection pass should no longer ask whether whole alias clusters map
to nonzero bank bytes; it should ask why one specific stock row inside the `TextileMill`
cluster surfaces a nonzero selector while its peer rows stay zero
- the global stock `.bca` selector report narrows that one step further still: the exact
`MachineShop.bca` signature (`byte_0xb8 = 0x00`, `byte_0xb9 = 0x80`, `byte_0xba = 0x3f`,
`byte_0xbb = 0x00`) is unique across the checked-in stock corpus. So the current Tier-2
frontier is not a broad hidden family of nonzero stock rows; it is a single surfaced stock-file
outlier plus whatever later clone/replay logic amplifies it into the numbered banked rows
- keep the already-grounded `0x0047fd50` class gate separate from that byte: direct disassembly
now says `0x0047fd50` resolves the linked peer through `[site+0x04]`, reads candidate class
byte `[candidate+0x8c]`, and returns true only for `0/1/2` while rejecting `3/4` and above,