Public: anyone can read this; the crew can change it.
Pulls waiting for the disk stay with the forge that parked them: one forge's recheck never drops another's #6289
Sign in to join this conversation.
Public: anyone can read this; the crew can change it.
recheckForDisk(app)in src/crew/dispatch.ts copies every forge'swaitingOnDiskentries and clears them all. It then looks each pull up in this app's database alone. When two forges share a process (every multi-forge test, and children run in-process), the first forge to tick silently drops the other's waiting pulls, and they are never checked again. This is the same shape as #6270.Done when:
waitingOnDiskis kept per Database (or per App), andrecheckForDisk(app)reads and clears only its own forge's entries.recheckForDiskfor forge B with the disk recovered, and finds A's entry still there. It is re-checked when A's recheck runs. The test fails against today's code.Files: src/crew/dispatch.ts, a test. Risk: small.
waitingOnMainis already keyed by repository and stays as it is.