Preview and publish a PR for each selected workspace - #191
Open
nishu-builder wants to merge 1 commit into
Open
Conversation
This was referenced Sep 5, 2026
nishu-builder
force-pushed
the
codex/multiworkspace-03-publication-01a06e14
branch
from
September 5, 2026 21:05
3273aa9 to
2a6e9a7
Compare
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.
Ctrl+P now previews workspace-to-PR destinations and initially selects the current workspace. Users can select several workspaces, change bases or branches, and publish in dependency order. Each workspace gets its own stable branch; existing publication records retain their destination. New multi-workspace branches use a separate namespace so they can coexist with legacy conversation branches.
Preparation keeps the existing merge/build/test turn, checks that the reviewed workspace and settings are still current, and records the chosen repository, branch, and integrated base before the leased push. Existing PRs are found by repository and head branch; changing the base updates the same PR while preserving a manually edited title. Cancellation stops further batch work, and partial failures report the PRs already completed.
Move publication interaction into its own TUI module and share repository/base resolution through the host workspace API. Extend existing publication, workspace, and navigation tests; the integration suite remains at 42 entries.
Validation: CLI unit tests and clippy pass; full fresh-salt suite passes 42/42; Nix build passes. PR lookup/creation behavior is verified with the existing fake GitHub runner; no test PRs were created.
Stack: #188 → #189 → #190 → this PR. Explicit stack updates, repository attachment, and the independent launcher follow.