feat(monitors): track commands and external jobs - #198
Open
filipeforattini wants to merge 1 commit into
Open
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.
Issue for this PR
Requested in the monitors implementation discussion; no linked issue.
Type of change
What does this PR do?
Long commands and external jobs can now release the chat and resume their originating session when an explicit condition completes.
bashsupports a one-shot monitor that keeps the same process running, or periodic observation with a status command. Short operations still return inline.Persist monitor status and bounded evidence; expose list/get/wait/cancel controls and a
/monitorsTUI dialog. Waiting parks automatic Goal/Todo nudges without provider calls. Cancellation stops local execution and suppresses continuation. Restart reports lost ownership as interrupted and never replays commands. Apply session isolation, deadlines, concurrency limits and an autonomous continuation cap.Includes SDK generation, migration, usage documentation, upstream research and a minor changeset. This delivery integrates the legacy full-screen TUI session runtime; V2 SDK execution, webhooks and streaming log triggers remain outside this implementation.
How did you verify your code works?
During initial live startup,
/agentand/commandrepeatedly returned HTTP 499 until server restart. No startup fix is included: the cause remains unconfirmed. Both endpoints and monitor listing returned 200 after a final restart using the committed source.Screenshots / recordings
Terminal captures from the isolated live TUI, with a seeded completed monitor:
Checklist
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.