Skip to content

Reduce resume handoff and shutdown delays - #632

Draft
fazxes wants to merge 1 commit into
mainfrom
fazxes/fast-exit-resume-rebuild
Draft

Reduce resume handoff and shutdown delays#632
fazxes wants to merge 1 commit into
mainfrom
fazxes/fast-exit-resume-rebuild

Conversation

@fazxes

@fazxes fazxes commented Sep 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Confirm Ctrl+C resume handoffs without replaying saved history or generating a final checkpoint.
  • Keep derived publication failures from forcing canonical session replacement or suppressing an otherwise valid handoff.
  • Cancel picker loads when abandoned or during shutdown.
  • Revalidate cached sessions when /resume opens instead of reusing a page for five seconds without refreshing.
  • Reject session-index results when publication changes are detected during the read.
  • Keep picker discovery from rebuilding indexes or writing derived session metadata.
  • Report managed-child metadata errors instead of silently treating those sessions as hidden children.
  • Force-stop managed commands during exit and stop draining their output after termination when an external process retains an output descriptor.

Known gaps

  • Startup and picker-selected history restoration remain synchronous and cannot yet accept Ctrl+C during replay.
  • The 500 ms shutdown ceiling is not established across every parser, replay, and cancellation path.
  • Publication revalidation detects tested interleavings, but the full concurrent-writer epoch guarantee still needs verification.

This is a draft checkpoint, not a complete implementation of the shutdown contract.

Confirm exit handoffs from bounded durable metadata and separate canonical
replacement debt from derived publication debt. Revalidate picker caches,
keep discovery read-only, and cancel picker work during shutdown.

Force managed command termination on exit and abandon output draining after
the command exits when another process retains an output descriptor.
@fazxes fazxes added the type: bug Fixes incorrect behavior label Sep 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: bug Fixes incorrect behavior

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant