Repository navigation
docs(skills): start on unreleased ApiDOM PRs through tarballs - #4303
Merged
robert-hebel-sb merged 1 commit intoOct 26, 2026
Merged
Conversation
A step no longer waits for the ApiDOM release to start: once the ApiDOM PR is ready (exit gate met, review clean), it installs tarballs packed from that branch and merges only after the release, with the tarballs replaced and every gate run again (Standalone JSON Schema PRD, D13). references/unreleased-upstream.md packs the branch, wires each tarball as a file: spec in the root fields with a $name override, and names tarballs by upstream commit: npm rejects a plain override of a direct dependency (EOVERRIDE), resolves a relative file: path inside overrides from node_modules/ once a lockfile exists (ENOENT), and reinstalls a cached tarball rebuilt under the same name. spec-status.mjs reports such specs as UNRELEASED and exits 4 when nothing else is open; the merge gate requires none. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
robert-hebel-sb
approved these changes
Oct 26, 2026
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.
Summary
Lets a spec-support step start before the ApiDOM release it depends on. Once the ApiDOM PR is ready (its exit gate passes and its fresh-context review is clean),
/add-oas-supportand/add-json-schema-supportinstall tarballs packed from that branch, open their PR as a draft, and merge only after the ApiDOM release, with the tarballs replaced by it and every gate run again. Without a ready ApiDOM PR, Step 0'sUPSTREAMstill stops.Changes
add-oas-support/references/unreleased-upstream.md(new): pack the ApiDOM branch, wire the tarballs, handle a changed upstream PR, replace the tarballs before merging.spec-status.mjs: newUNRELEASEDstatus for any dependency or override installed from a tarball, path, git or URL; exits 4 when nothing else is open (ready, not mergeable). Tarball specs no longer count as a second ApiDOM version.Why tarballs and not git URLs
npm can't install ApiDOM packages from a git URL: it is a private workspace monorepo without committed build output or a
preparescript. The wiring rules come from npm behaviour tested offline (npm 10.9.0): a plain override of a direct dependency fails (EOVERRIDE); a relativefile:path insideoverridesfails once a lockfile exists (ENOENT); a tarball rebuilt under the same name installs the old content,npm ciincluded. So each tarball is afile:spec in the root fields with a$nameoverride, named by upstream commit.Verification
bash .claude/skills/add-oas-support/scripts/test/smoke.sh: smoke OK, including new cases forUNRELEASED(direct, nested override,$namenot flagged, version check unaffected).🤖 Generated with Claude Code