Sat Oct 24 10:55:30 UTC 2026 ea3642a4872efa089663fff337bd6283c52e17be COMMAND: vp test run src/orchestration-v2/BackgroundWorkStop.integration.test.ts src/orchestration-v2/ThreadLaunchService.test.ts src/orchestration-v2/ProviderContinuationService.test.ts -t (Stop holds a provider wake|holds a message queued during setup|delivers a message_text wake) --reporter=verbose note: You are running `vp test` as a Vite+ built-in command. If you meant to run the test npm script, use `vpr test` instead. RUN v5.0.5 /home/ubuntu/wt/issue-22033/apps/server ↓ src/orchestration-v2/BackgroundWorkStop.integration.test.ts > Stop reaches background work an earlier provider thread still runs ↓ src/orchestration-v2/BackgroundWorkStop.integration.test.ts > Stop settles workflow members without subagent turn items ↓ src/orchestration-v2/BackgroundWorkStop.integration.test.ts > Stop clears a stale roster after a refused run takes ownership of the provider thread ↓ src/orchestration-v2/BackgroundWorkStop.integration.test.ts > Stop preserves the roster when the background work probe fails ↓ src/orchestration-v2/BackgroundWorkStop.integration.test.ts > thread.stop stops background work when a later message is queued ↓ src/orchestration-v2/BackgroundWorkStop.integration.test.ts > run.interrupt stops background work when a later message is queued ↓ src/orchestration-v2/BackgroundWorkStop.integration.test.ts > thread.stop reaches later background work when an older run is starting ↓ src/orchestration-v2/BackgroundWorkStop.integration.test.ts > run.interrupt reaches later background work when an older run is starting ↓ src/orchestration-v2/BackgroundWorkStop.integration.test.ts > Stop recovers a stalled run after missing-session-terminal without changing a newer attempt ↓ src/orchestration-v2/BackgroundWorkStop.integration.test.ts > Stop recovers a stalled run after returned-interrupt without changing a newer attempt ↓ src/orchestration-v2/BackgroundWorkStop.integration.test.ts > Stop recovers a stalled run after superseded-attempt without changing a newer attempt ✓ src/orchestration-v2/BackgroundWorkStop.integration.test.ts > Stop holds a provider wake that queues before the stopped turn ends 2895ms ↓ src/orchestration-v2/ThreadLaunchService.test.ts > attributes user-configured automations in new threads without changing their prompt ↓ src/orchestration-v2/ThreadLaunchService.test.ts > attributes agent-configured automations in new threads without changing their prompt ↓ src/orchestration-v2/ThreadLaunchService.test.ts > attributes user-configured automations in existing threads without changing their prompt ↓ src/orchestration-v2/ThreadLaunchService.test.ts > attributes agent-configured automations in existing threads without changing their prompt ↓ src/orchestration-v2/ThreadLaunchService.test.ts > returns no dispatched thread when sending an automation to a missing thread fails ↓ src/orchestration-v2/ThreadLaunchService.test.ts > runs a thread-bound automation on the provider the thread uses now ↓ src/orchestration-v2/ThreadLaunchService.test.ts > retains automation and sender attribution while a message waits in the queue ↓ src/orchestration-v2/ThreadLaunchService.test.ts > provisions independent launches concurrently instead of behind a global semaphore ↓ src/orchestration-v2/ThreadLaunchService.test.ts > uses the first conversation message for a title after /COMPACT ↓ src/orchestration-v2/ThreadLaunchService.test.ts > keeps native maintenance commands out of steering and restart messages ↓ src/orchestration-v2/ThreadLaunchService.test.ts > arms durable title generation after accepting the first message ↓ src/orchestration-v2/ThreadLaunchService.test.ts > does not update a reused thread title when the initial message is rejected ↓ src/orchestration-v2/ThreadLaunchService.test.ts > launches a worktree request for Scratch at the root, in its own folder ↓ src/orchestration-v2/ThreadLaunchService.test.ts > stores a Scratch scheduled task at the root and keeps worktrees elsewhere ↓ src/orchestration-v2/ThreadLaunchService.test.ts > runs a Scratch scheduled task saved with a worktree in its own folder ↓ src/orchestration-v2/ThreadLaunchService.test.ts > launches from stable with the fetched commit and remote PR base ↓ src/orchestration-v2/ThreadLaunchService.test.ts > launches from upstream/release with the fetched commit and remote PR base ↓ src/orchestration-v2/ThreadLaunchService.test.ts > shows the fetch diagnosis when preparing a worktree from origin fails ✓ src/orchestration-v2/ThreadLaunchService.test.ts > holds a message queued during setup when the workspace preparation fails 427ms ✓ src/orchestration-v2/ThreadLaunchService.test.ts > holds a message queued during setup when the workspace preparation is interrupted 251ms ✓ src/orchestration-v2/ThreadLaunchService.test.ts > holds a message queued during setup that arrives after the setup failed 279ms ✓ src/orchestration-v2/ThreadLaunchService.test.ts > holds a message queued during setup that arrives after the setup interrupted 240ms ↓ src/orchestration-v2/ThreadLaunchService.test.ts > replays a server-allocated launch ↓ src/orchestration-v2/ThreadLaunchService.test.ts > replays an accepted launch after the project disables the instance ↓ src/orchestration-v2/ThreadLaunchService.test.ts > rejects a server-allocated launch replay with a mismatching thread id ↓ src/orchestration-v2/ThreadLaunchService.test.ts > does not treat an unrelated accepted command receipt as a launch ↓ src/orchestration-v2/ThreadLaunchService.test.ts > bounds concurrent first launches to one thread per command ↓ src/orchestration-v2/ThreadLaunchService.test.ts > does not let a failing same-command caller strand a concurrent durable launch ↓ src/orchestration-v2/ThreadLaunchService.test.ts > schedules an accepted preparing message exactly once across concurrent retries ↓ src/orchestration-v2/ThreadLaunchService.test.ts > creates a strong provider-thread mapping for an imported native session ↓ src/orchestration-v2/ThreadLaunchService.test.ts > shared intake preserves durable attachment bytes after a lost launch result ↓ src/orchestration-v2/ThreadLaunchService.test.ts > cancels tracked setup before provider work is released ↓ src/orchestration-v2/ThreadLaunchService.test.ts > stops an in-flight branch rename when tracked setup is cancelled ↓ src/orchestration-v2/ThreadLaunchService.test.ts > releases an async setup before its completion with exit 0 ↓ src/orchestration-v2/ThreadLaunchService.test.ts > releases an async setup before its completion with exit 1 ↓ src/orchestration-v2/ThreadLaunchService.test.ts > refuses a new worktree whose base ref is missing ↓ src/orchestration-v2/ThreadLaunchService.test.ts > refuses a new worktree whose base ref has no origin to come from ↓ src/orchestration-v2/ThreadLaunchService.test.ts > refuses a new worktree whose base ref is a previous checkout there never was ↓ src/orchestration-v2/ThreadLaunchService.test.ts > replays an accepted send after the project disables the instance ↓ src/orchestration-v2/ProviderContinuationService.test.ts > ProviderContinuationService > recovers an unaccepted persisted steer using the same delivery identity ✓ src/orchestration-v2/ProviderContinuationService.test.ts > ProviderContinuationService > delivers a message_text wake as a real prompt, not a buffered wake 15ms ↓ src/orchestration-v2/ProviderContinuationService.test.ts > ProviderContinuationService > dispatches a current delegated completion as one server-owned queued message ↓ src/orchestration-v2/ProviderContinuationService.test.ts > ProviderContinuationService > a project-disabled instance refuses a delegated-completion wake exactly once, acknowledges it, and never retries ↓ src/orchestration-v2/ProviderContinuationService.test.ts > ProviderContinuationService > clears the adapter's sticky continuation flag when a non-delegated wake is refused ↓ src/orchestration-v2/ProviderContinuationService.test.ts > ProviderContinuationService > clears a sticky continuation offer for an adapter whose dispatchIfCurrent does not self-clear on failure ↓ src/orchestration-v2/ProviderContinuationService.test.ts > ProviderContinuationService > drops stopped and disposed delegated completions instead of reviving them after recovery ↓ src/orchestration-v2/ProviderContinuationService.test.ts > ProviderContinuationService > does not redispatch a persisted delegated completion message during recovery ↓ src/orchestration-v2/ProviderContinuationService.test.ts > ProviderContinuationService > dispatches a current request exactly once ↓ src/orchestration-v2/ProviderContinuationService.test.ts > ProviderContinuationService > drops a request invalidated while projection is blocked ↓ src/orchestration-v2/ProviderContinuationService.test.ts > ProviderContinuationService > does not revive an old request when a later generation is current Test Files 3 passed (3) Tests 6 passed | 56 skipped (62) Start at 10:55:31 Duration 15.89s (import 56%, tests 27%, transform 15%, setup 2%) Import 856 modules were evaluated 2158 times · 8.71s total, 56% of tracked time ~5.25s faster with isolate: false — shared modules are evaluated once per worker instead of once per file learn more: https://vitest.dev/guide/improving-performance#test-isolation EXIT_CODE=0 ea3642a4872efa089663fff337bd6283c52e17be