lane H: P2b-alt, a competing prediction from the callee bodies (still before any run)

This commit is contained in:
alex 2026-09-08 12:31:29 -04:00
parent 1932377b92
commit a01305fcf2

View file

@ -104,6 +104,38 @@ a 200-function closure".
* *An entry counter reads more than 1 per turn.* The dispatch block would then be inside a loop
nobody has read, which changes the cost model from "0 or 1 draw per site" to "per iteration".
### P2b-alt — an amendment, written after P2b and before any run
Everything above was committed before I read the four callee bodies. I then read them (to name the
three inner functions for `addresses.d`), and **one of the four does not look like the other three**.
This is recorded as a competing prediction rather than folded into P2b, because retrofitting P2b
after seeing the code would destroy the test.
Read from the decompiled bodies, each confirmed to be a real function start with exactly one caller:
| callee | the loop it is | empty when |
|---|---|---|
| `ServerTradeManagerImpl_vslot15` 0x0082cca0 | over the vector at `tradeManager+0x3c .. +0x40` | no trade routes |
| `ServerSpyManager_vslot14` 0x0088db80 | over the vector at `spyManager+0x10 .. +0x14` | no spy programs |
| `ServerSpyManager_vslot13` 0x008877b0 | 1,869 bytes, same manager, not fully read | — |
| **`ServerTradeManagerImpl_vslot13` 0x0088ef80** | **over `GetServer()+0x64 .. +0x68` — the FLEETS vector** | **no fleets** |
The first two are the shape P2b assumes: an empty container short-circuits the loop and no draw is
reachable, which is exactly "no trade routes and no spy program". **The fourth is not.** Its loop
iterates fleets — every save has fleets — and the draw is gated by a chain of per-fleet tests inside
the body (`0x0088f036` calls 0x00820ca0, whose result gates `0x0088f042`'s call to 0x0088b440).
**P2b-alt. On a save with fleets, `ServerTradeManagerImpl_vslot13`'s loop body runs, and probe row 5
(0x00820ca0) fires with a non-zero count — which means a `NextFloat` at 0x00820e18 and therefore a
NON-ZERO TAIL WORD COUNT.** If so, `tail-rng-ledger.md`'s "the tail's cost on these turns is 0" is
not merely workload-limited, it is limited by a per-fleet gate that our two ledger saves happened to
fail, and the Zuul save named for having 23 fleets is the obvious place to look.
P2b and P2b-alt disagree about the same run, which is what makes it worth making. If P2b holds on a
23-fleet save, the gate is above 0x00820ca0 and the fleet loop is not the reason. If P2b-alt holds,
the four-callee blind spot is not "no trade, no spies" — it is one gate on one fleet property, and
the ledger needs the tail term now rather than after a manufactured workload.
**What this probe cannot settle without a manufactured workload.** Whether the sites draw *when*
trade routes or spy programs exist. That needs a save with both, and building one is the expensive
part of this lane; if it is not built, P2 downgrades from "the tail never draws" to "the tail never