feat(tui): add an opt-in shared plans sidebar - #4253
Open
gargsajal9 wants to merge 2 commits into
Open
Conversation
Show the five most recently updated shared plans behind a global layout preference. Reuse the existing external editor with displayed revision guards, share asynchronous refreshes across tabs, and keep compact layouts linked to the plan browser. Cover configuration persistence, rendering, navigation and late-result cancellation, and document the default-off behavior and freshness limits. Refs docker#4115 Signed-off-by: Sajal Garg <9094703+gargsajal9@users.noreply.github.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
gargsajal9
marked this pull request as ready for review
September 13, 2026 03:44
Collaborator
|
👋 This PR has merge conflicts with the base branch. Please rebase or merge the latest base branch and resolve them. I've moved it to draft and added |
aheritier
marked this pull request as draft
September 14, 2026 16:12
Merge current main without rewriting the contribution history. Adapt shared plan snapshots to tabModel and UpdateEffects while retaining upstream attention handling and sidebar edit cancellation. Keep background local/global effects without dispatching hidden UI commands. Cover snapshot delivery, lazy tabs, page recreation, and pending editor cancellation when switching, closing, or replacing a tab. Refs docker#4115 Signed-off-by: Sajal Garg <9094703+gargsajal9@users.noreply.github.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
gargsajal9
marked this pull request as ready for review
September 14, 2026 20:10
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
Refs #4115.
settings.layout.show_planspreference and a Plans toggle in/settings, including live preview, cancellation, and persistence.Proposed scope
This draft uses the existing shared plan store rather than introducing session ownership or another database. Status remains free-form: there is no active/completed classification or status filter.
Top/bottom, narrow, and collapsed layouts show a compact count and browser shortcut.
/plansand the command palette remain the keyboard routes. Cross-process changes need an explicit refresh; no polling or filesystem watcher is added. Lean mode and--sidebar=falseremain unchanged.Editing only changes the plan document. It does not approve a plan or authorize or execute staged writes.
The five-plan recent list and direct external-editor destination are proposed for scope review; they are not presented as a maintainer-agreed design.
Validation
task buildpassed withCI=true.task lintpassed, including the project-specific cops andgo mod tidy --diff.task testrun passed 221 packages; onlypkg/teamloaderfailed. Installing its missinggoplsdependency resolved the LSP failures. The entire package then passed with exactly thedmr.yamlandunload_on_switch.yamlexample subtests excluded because Docker Model Runner is disabled.The unfiltered full suite is not green locally: those two existing DMR-dependent examples remain an environment limitation. No tests or source were changed to bypass them.
Fixes: #4115