Skip to content

Bound the whole terminal sequence on a book switch with one deadline #54

Open

Description

@StaticHumStudio

What

From the PR #52 Codex review. When the server blackholes after the last reachability probe, connectionStatus stays CONNECTED for up to the 60s ping interval. A book switch then runs the terminal progress push, the terminal session sync, and closeSession, each with its own 5s cap (PlaybackManager.kt ~2837). The next load waits on all three, so the worst case is about 15s.

Context

Master had no bound here at all. The same switch measured 30s on device, and could reach 90s with read timeouts. PR #52 took the measured case to 5.4s when the status already reads unreachable.

Proposed shape

Give the terminal job one shared deadline, or mark the server unreachable after the first terminal timeout so the later calls skip.

Why not in 2.1.5

The bounded 15s worst case is already a large improvement, and sharing one deadline across the terminal job is a refactor, not a bug fix.

🤖 Generated with Claude Code

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions