enhance(cli, workspace): Persist events incrementally during streams #380
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
jp querycommand now persists conversation events to disk as they are received during the LLM stream. Previously, persistence occurred only after the entire command completed, which could lead to data loss if the process was interrupted during a long-running interaction or complex tool use.The
Workspacenow exposes apersist_active_conversationmethod to allow manual triggering of the persistence logic. Within thequerycommand, thehandle_streamfunction tracks new events in the currentThreadand updates the workspace state before persisting, ensuring the local history remains up-to-date even during recursive tool calls.