pub enum BaseGap {
Platform,
Sync,
Neither,
}Expand description
What, if anything, will close a gap between a review’s base and the local parent git-stk records for it.
The four commands that meet this gap all need the same answer, and it is three-valued rather than two: asking “will the platform move it?” and “is it in a stack?” separately is what let a call site wait for a move that was never coming, or send someone to dissolve a stack that only needed a sync.
Variants§
Platform
The platform will close it: parent is where its stack puts this base
next, once the layer below lands. Wait rather than retarget - a base
change by hand is refused anyway.
Sync
git stk sync will close it: the platform has already moved the base
where it keeps it, and the local parent is a layer that has since
landed. Local metadata is behind, not the review.
Neither
Nothing will: the stack cannot reach this parent and refuses a change by hand - a re-rooted or reordered line, or the stack’s own bottom. Dissolving the stack is what unblocks it.