Skip to content

Final response is persisted but not displayed when idle reaper destroys detached session during completion #5016

Description

@JamesFescoAVB

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.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:agentsSub-agents, fleet, autopilot, plan mode, background agents, and custom agentsarea:sessionsSession management, resume, history, session picker, and session state

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions