Repository navigation
feat(topic): a root with no commits of its own takes its state from its joined checkouts - #8
Merged
Merged
Conversation
…ts joined checkouts A workspace repository that only declares the others has nothing of its own to merge, so `topic list` and `topic status` call it merged once every joined checkout is merged into the branch its pin follows, by content, or has no change. A checkout pinned to a release still waits for `git upgrade`. `list`, `status` and `finish` share one test for a joined checkout. A checkout whose pin follows a branch that holds its change no longer blocks `finish`, its commits count as held by that branch rather than by the default branch, and a squash-merged checkout whose remote branch is gone no longer counts as unpushed. Claude-Session: https://claude.ai/code/session_018fr6kum7myDDnc3cmS6TfH
antonzherdev
force-pushed
the
anton/topic-state-from-joined
branch
from
October 23, 2026 07:58
72d0029 to
b1d9c14
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.
A workspace repository that only declares the others has nothing of its own to merge: a task in it changes the repositories it joins. Today
git topic listnever calls such a taskmerged, a squash-merged checkout whose branch the host deleted shows asN not pushed, andfinishwaits for a release on a checkout that follows a branch.Now
list,statusandfinishshare one test for each joined checkout, per checkout branch (featandfeat@v1apart):finishtakes it back to its pin;statussaysmerged into BRANCH.git upgrade, as before.The root is
mergedwhen its own commits are merged, as before, or when it has none and every joined checkout is merged or unchanged, one with a change.finishfetches each branch-following store first; a failed fetch is a warning.Tests:
tests/it/topic_state.rs(6).Lazy dependencies are in #5; each PR stands alone. Every open PR regenerates
docs/test-catalog.md, so whichever merges later needsGITSCALE_UPDATE_CATALOG=1 cargo test --test it catalog::after rebasing.https://claude.ai/code/session_018fr6kum7myDDnc3cmS6TfH