Manage and close bot tasks from /bot without losing work - #15
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The
/botpicker previously only opened sessions, so an obsolete or broken task remained in the blocked counter even after its GitHub issue/PR disappeared. Add a per-task action menu: open the session, inspect saved details, close idle tabs, restart a workflow, or stop sessions and end tracking.Confirmed closure is durable: save
closingbefore interrupting all known task sessions, wait for idleness and in-flight worker/question operations, then saveclosed. Preserve files, branches, worktrees, session history and pending feedback. Closed records prevent rediscovery and cannot be revived by late checkpoints, new comments or workflow recovery. Missing sessions do not prevent closure; interruption failures remain visible and retry after 30 seconds or from the menu. There are no GitHub issue/PR close or delete calls.Closing an already-started publication/merge is rejected with an actionable message. Other in-flight local operations may finish, but cannot advance to publication. Pending closure holds new worker passes; unrelated work already running can finish. Runtime question/helper admission stops once closure is requested.
The sidebar now names attention tasks and their saved errors, reports pending closures separately, and excludes locally closed tasks from live counts. Closing idle tabs remains a separate local UI action that does not stop task tracking.
Validation:
npm run check: lint, types, 175 tests, native TUI render tests and build passed.npm run package:check: isolated installation, loaders, SDK entrypoints and CLI passed.Documentation updated: README, runtime actions and limits, architecture, advanced RPC/persistence, installation/reopen guidance, all affected workflow diagrams, AGENTS map and Unreleased notes. Older plugin builds do not understand the new queue statuses, so retain backups before any downgrade.
Targets
devel. No release, server deployment, or live task closure is included in this PR.