An old V1 server on an empty pre-V2 source can create its first thread after ensureNoPendingLegacyThreads passes but before copySourceSlice reads the source. The unfiltered copy takes the row, migrations and prune drop it, and the run exits 0. Red test: the race is injected at the destination state-dir makeDirectory, the first FileSystem call after the guard. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Julius Marminge committed on 10/22/2026, 7:47:41 AMparent9bf8c50
1 file changedLine totals unavailable