feat(stack): run stack manifests as dependency-ordered pull requests - #102
Merged
Merged
Conversation
Work that needed more than one pull request had no path through devloop: the spec skill could only refuse it and ask for a smaller slice. A spec with a Stack section is now a manifest. Its children run in order, each worktree branching from the previous child's branch and each PR targeting it as the base, so reviewers get a readable chain instead of one mega-diff. The stack stops at the first child that does not reach accepted.
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
devloop | ce41134 | Commit Preview URL Branch Preview URL |
Aug 17 2026, 07:46 AM |
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.
Why
Work needing more than one pull request had no path through devloop. The spec skill's scope guard could only refuse it and ask for a smaller slice, so the user was left to hand-manage the branch chain.
What
## Stacksection is now a manifest. Its children run in dependency order.accepted, then prints an ordered summary.How
parse_stack_childrenreads the## Stacksection and resolves child paths relative to the manifest, accepting both markdown links and bare paths.run_commanddispatches torun_stackbefore the tmux and single-spec lint paths, since a manifest is not a spec and would fail that lint.Two existing functions gained an optional argument rather than being restructured:
run_devlooptakes a base override, andcreate_worktreetakes a start point defaulting toHEAD. The stack threads the previous child'sFINAL_BRANCHthrough both.Proof
bash scripts/devloop_test.sh: passes, except the same pre-existingnightshift digestsandbox failure present onmain.create_worktreestart point, including link and bare-path manifests, order preservation, a plain spec, a missing file, an empty stack, a missing child, and the summary for a stopped stack.Scope
Stack
feat/living-review-status