Repository navigation
Conversation
- Plan UI tests each rebuilt their own editor, selector, and runtime doubles, which made the suites long and inconsistent - Tree navigation now reports a waiting accepted-plan continuation, so the shared harness exercises that status alongside the decision flow
- Accepting, discarding, and deferring a plan had no coverage, so a regression in the decision selector would have gone unnoticed - Harness switch and profile selection cancellation cases are held for the integration stack because they need the task profile modules
- A rejected or superseded plan could leave the TUI holding stale continuation state with nothing pinning the recovery path - Tree navigation and rebind paths are exercised together so a pending continuation survives session replacement
Issacboy123
approved these changes
Aug 17, 2026
Issacboy123
left a comment
Contributor
There was a problem hiding this comment.
LGTM! The new interactive-plan harness covers acceptance, discard, retry, restoration, lifecycle recovery, and rendered plan messages. Apart from a small harness-support change, this is focused test work.
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.
Summary
Adds a shared plan interaction harness for the TUI tests, then uses it to cover plan resolution outcomes and lifecycle recovery.
Replaces #74 and carries the plan-only portion of #73. The task context and ambiguous-profile commits from #73 belong to the integration stack.
Reasoning
Each plan UI test previously rebuilt its own editor, selector, and runtime doubles, which made the suites long and let them drift apart.
A shared harness keeps the doubles consistent, so a change to the decision flow fails in one place rather than partially across several files.
Tree navigation now reports a waiting accepted-plan continuation, because navigating away from a pending implementation with no indication that it is still queued is the easiest way to lose track of it.
Changes
test/interactive-mode-plan-test-utils.tswith shared editor, selector, and runtime doublesshowTreeNavigationStatus, which reports a waiting continuation during tree navigationTesting
npx vitest --run test/interactive-mode-plan-resolution.test.ts test/interactive-mode-plan-lifecycle.test.ts test/plan-message.test.tstsgo --noEmitreports zero errors