9b199246e5
Every caller tears the SSH connection down right after `await cancelAndWait(scope)`, so resolving on this call's own barrier alone let a connection-apply teardown overlap the pool stop's still-running afterStop teardown for the same key. Wait for the composed barrier instead; chain the barriers (drain promises never reject, so this equals allSettled). The test now waits a macrotask and asserts that neither the apply nor the new bootstrap runs before the first teardown completes.