Description
A background coding session completed successfully, but its final response was not displayed in the desktop UI.
The final assistant response was persisted to the session database after the desktop idle reaper had already started destroying the session. The subsequent deferred-idle transition failed because the session no longer existed.
Observed behavior
The coding work, tests, commits, and remote pull-request updates completed successfully, but the user did not receive the final response containing those details.
The session was not marked interrupted, and the persisted conversation contains the complete final response.
Timeline
All timestamps are UTC on September 30, 2026:
- 16:30:46.908 — keep-awake assertion released
- 16:30:46.910 — idle CLI reaper activated (
delay_ms=574495)
- 16:30:46.911 — desktop began destroying the session
- 16:30:46.984 — session cleanup:
Session closed after last owner detached
- 16:30:47.246 — CLI logged
Closing session
- 16:30:47.247 — final assistant response persisted
- 16:30:47.268 —
session.queue.drainDeferredIdle failed: session not found
- 16:30:47.269 — task-transition dispatch failed: session not found
- 16:30:47.274 — SDK session event loop stopped
Errors
Failed to dispatch task transition: Error: Request session.queue.drainDeferredIdle failed with message: Session not found for sessionId: <redacted>
Failed to dispatch task transition: Error: session not found: <redacted>
Expected behavior
A session with active work or a pending final response should not be destroyed by the idle reaper. Alternatively, the persisted final response should be delivered after the session is restored or reopened.
Actual behavior
The idle reaper destroyed the session immediately before the final response was persisted. The response remained in durable storage but was not shown to the user.
Environment
- GitHub Copilot Desktop: 1.1.24
- Copilot CLI/runtime: 1.0.90-0
- OS: Windows
- Session type: local worktree coding session
- Work continued after the user navigated away from or detached from the session
Additional evidence
A separate session the previous day logged Failed to dispatch task transition: Error: session not found during shutdown, suggesting the lifecycle race may not be isolated.
Description
A background coding session completed successfully, but its final response was not displayed in the desktop UI.
The final assistant response was persisted to the session database after the desktop idle reaper had already started destroying the session. The subsequent deferred-idle transition failed because the session no longer existed.
Observed behavior
The coding work, tests, commits, and remote pull-request updates completed successfully, but the user did not receive the final response containing those details.
The session was not marked interrupted, and the persisted conversation contains the complete final response.
Timeline
All timestamps are UTC on September 30, 2026:
delay_ms=574495)Session closed after last owner detachedClosing sessionsession.queue.drainDeferredIdlefailed: session not foundErrors
Expected behavior
A session with active work or a pending final response should not be destroyed by the idle reaper. Alternatively, the persisted final response should be delivered after the session is restored or reopened.
Actual behavior
The idle reaper destroyed the session immediately before the final response was persisted. The response remained in durable storage but was not shown to the user.
Environment
Additional evidence
A separate session the previous day logged
Failed to dispatch task transition: Error: session not foundduring shutdown, suggesting the lifecycle race may not be isolated.