Fix the Cloud command timeout test after the request-deadline error split
Merged
AU
23d ago+2+2+0123456789-2-2-0123456789
Summary
Main CI run 38524277453 (aad835069de) reported five app-host tests as RATCHET_NEW_FAILURE. Four were already fixed by #20459, which landed after that run. This PR fixes the fifth.
| Test | Cause | Fix |
|---|---|---|
CloudWorkspaceCreationRevealTests/closingTheWindowDuringShortcutReleasesItsManager(entryPoint:) (shard 5/7) | The test sampled the closed manager while the close's own autoreleased notifications and queued main-queue work still held it. The Cloud create path holds it only weakly. | Already fixed in #20459 |
SurfaceResumeAgentBindingGenerationTests/staleCachedSessionCannotAuthorizeCurrentBinding() (shard 4/7) | App bug from #20246: Codex index authority came from isComplete(), so a rejected stale checkpoint left the agent counted as running and restore replayed a dead binding. | Already fixed in #20459 |
MuseVaultRegistrationTests/vaultListsMuseSessions() (shard 3/7) | Stale test: registered agents have quoted arguments and added a cd prefix since August. | Already fixed in #20459 |
GhosttyMinimumContrastLayerBackgroundTests/darkTextOnLightThemeStaysDark() (shard 3/7) | On Blacksmith runners the app-host window is never key or visible, so the renderer never drew. | Already fixed in #20459 (window reports on-screen occlusion) |
CloudCommandOperationTests/commandTimeoutLeavesRecoverableOperationVisibleAfterLaterSuccess() (shard 6/7) | Stale test, not a timing problem. It already uses an injected deadline clock. #20376 added LinkError.requestTimedOut for a channel's per-request deadline, and the app classifies it as .timeout and retryable. The test still caught only .timedOut, so the expected deadline error escaped as Caught error: requestTimedOut after 4 ms. | This PR: catch requestTimedOut and check that the same error is retryable |
Verification
CloudCommandOperationTests: this PR's CI (the changed suite).- The four #20459 fixes: main CI run 38530133779 on c77b533b4bb.
Changelog
none
š¤ Generated with Claude Code
Need help on this PR? Tag @codesmith-bot with what you need.
Summary by cubic
Fixes the Cloud command timeout test, which broke after #20376 split the per-request deadline error from the connect timeout. The app now throws LinkError.requestTimedOut for a channel's per-request deadline, but the test still caught only .timedOut, so the expected deadline escaped as an uncaught error.
- Catch
requestTimedOutand assert that the same error is retryable.