ci(openspec): Skip the archive check on non-tip stacked PRs#31
Merged
thecodedrift merged 1 commit intoJun 12, 2026
Merged
Conversation
A change is archived exactly once, when all of its work has landed. In a stack of PRs, only the tip carries the archived change; the PRs below it still carry the in-flight change directory by design — so failing the archive check on them is noise. Split the workflow into a stack-position detector and the archive check. The detector marks a PR as the tip when no other OPEN PR targets its head branch as a base; the archive job is gated on that, so non-tip PRs show the check as SKIPPED and only the tip (or a standalone PR) runs it. Also broaden the trigger from base=main to all PRs so the (skipped) check is visible across the whole stack, mirroring how we think about changes in flight vs all changes landed. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
thecodedrift
added a commit
that referenced
this pull request
Jun 12, 2026
…at/local-rule-routing * origin/feat/local-rule-routing: ci(openspec): Skip the archive check on non-tip stacked PRs (#31) docs(openspec): Clarify detect output schema is internal, not published docs(openspec): Address review feedback on local-rule-routing contract docs(openspec): Propose local-rule-routing change
thecodedrift
added a commit
that referenced
this pull request
Jun 12, 2026
* feat/local-rule-routing: ci(openspec): Skip the archive check on non-tip stacked PRs (#31) docs(openspec): Clarify detect output schema is internal, not published docs(openspec): Address review feedback on local-rule-routing contract docs(openspec): Propose local-rule-routing change chore(skill): Refine the stacked-PR archive-check guidance chore(skill): Scope iterate-pr archive check to the stack tip chore(config): Allow git-town in project settings
thecodedrift
added a commit
that referenced
this pull request
Jun 12, 2026
* feat/local-rule-detect: ci(openspec): Skip the archive check on non-tip stacked PRs (#31) docs(openspec): Clarify detect output schema is internal, not published docs(openspec): Address review feedback on local-rule-routing contract docs(openspec): Propose local-rule-routing change chore(skill): Refine the stacked-PR archive-check guidance chore(skill): Scope iterate-pr archive check to the stack tip chore(config): Allow git-town in project settings
thecodedrift
added a commit
that referenced
this pull request
Jun 12, 2026
* feat/local-rule-recipes: ci(openspec): Skip the archive check on non-tip stacked PRs (#31) docs(openspec): Clarify detect output schema is internal, not published docs(openspec): Address review feedback on local-rule-routing contract docs(openspec): Propose local-rule-routing change chore(skill): Refine the stacked-PR archive-check guidance chore(skill): Scope iterate-pr archive check to the stack tip chore(config): Allow git-town in project settings
thecodedrift
added a commit
that referenced
this pull request
Jun 12, 2026
* feat/local-rule-help: ci(openspec): Skip the archive check on non-tip stacked PRs (#31) docs(openspec): Clarify detect output schema is internal, not published docs(openspec): Address review feedback on local-rule-routing contract docs(openspec): Propose local-rule-routing change chore(skill): Refine the stacked-PR archive-check guidance chore(skill): Scope iterate-pr archive check to the stack tip chore(config): Allow git-town in project settings
thecodedrift
added a commit
that referenced
this pull request
Jun 12, 2026
* feat/local-rule-skill: ci(openspec): Skip the archive check on non-tip stacked PRs (#31) docs(openspec): Clarify detect output schema is internal, not published docs(openspec): Address review feedback on local-rule-routing contract docs(openspec): Propose local-rule-routing change chore(skill): Refine the stacked-PR archive-check guidance chore(skill): Scope iterate-pr archive check to the stack tip chore(config): Allow git-town in project settings
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.
Make the OpenSpec archive check stack-aware so it reflects "changes in flight vs all changes landed."
A change is archived exactly once, when all its work has landed. In a stack, only the tip carries the archived change; the PRs below it still carry the in-flight change directory by design — so failing the archive check on them is noise.
This splits the workflow into a
stack-positiondetector and the archive check. The detector marks a PR as the tip when no other open PR targets its head branch as a base; the archive job is gated on that, so non-tip PRs show the archive check as skipped and only the tip (or a standalone PR) runs it. The trigger is broadened frombase=mainto all PRs so the (skipped) check is visible across the whole stack.Targeted at
feat/local-rule-routing(#23, the bottom of the stack) so a sync propagates it to every stacked PR at once.