Galaxy probe initial ScanState lost when platforms are registered before the event pump starts #865
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Found by the #614 read-only live run against VD03 (2026-11-11). The event pump starts only on the first Read or Subscribe. Platforms that the probe watcher registers before then never receive their initial
ScanStatevalue. ScanState rarely changes, so those platforms stay missing fromGetHostStatuses().Live evidence: in normal order, only the transport entry appeared after 30 s. With the pump started before Discover, all 5 hosts appeared (CTRX_DEV, DevWinPlatform and DevAppEngine Running; JoePlatform and JoeAppEngine Unknown).
This compounds the platform-seed bug: once the seed works, a background seed would always hit this race, and a driver with no authored tags would never start the pump at all.
Fix: start the pump, or replay or read the current value, when probe advises are registered. Compare with the #859 early-event parking.
Done. The event stream opens before probe or advise registration, and the ResolveOrPark race and the replay-over-dead-stream bug in ReconnectSupervisor are fixed. Seven review rounds. Live, read-only on VD03: GetHostStatuses lists all 5 hosts before any Discover/Read/Subscribe. The remaining race needs a gateway attach acknowledgement: mxaccessgw#227. Pushed to master in
e857135e..7a27ef1f; full suite green (20 projects, 0 failures, 0 warnings).