Repository navigation
build: bump suffixed plugin versions on upstream releases - #12
Open
wanglongan587 wants to merge 2 commits into
Open
wanglongan587 wants to merge 2 commits into
wanglongan587 wants to merge 2 commits into
Conversation
The nightly bump split the version with bash parameter expansion and did `$((PATCH + 1))`, so a suffixed version like 0.7.0-opencode2.1 put `0-opencode2.1` into the arithmetic and failed the whole run before any tag was pushed. Move the rule into scripts/bump-version.ts, which is tested: an unsuffixed version bumps its patch number, a suffixed one bumps the trailing counter of its suffix (0.7.0-opencode2.1 -> 0.7.0-opencode2.2), and a suffix without a counter starts at .1. A version the rule cannot describe fails with that version named instead of producing a number nobody chose. The workflow captures the script's stdout as the tag and CI runs the script tests. Also refresh this workflow's own description of what it watches: the bundle config can name a pinned npm distribution, not only the latest GitHub release.
package.ts still described the Releases API digest as the integrity check for every archive and the CLI as the only entry at the archive root. Both hold for the GitHub-release source only: npm archives are verified against their SRI before they are written, and place the CLI under package/bin/. Say which source each comment applies to.
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
The nightly bump treated a suffixed version as arithmetic on its patch segment:
0.7.0-opencode2.1becamePATCH=0-opencode2.1, and$((PATCH + 1))failed the whole run before any tag was pushed. This replaces that inline bash withscripts/bump-version.ts, which is tested:A version outside that grammar fails with the version named rather than producing a number nobody chose. The workflow now captures
deno task bump-versionas the tag, and CI runsdeno test scripts/so the rule stays covered.The second commit aligns the two
package.tscomments the reviewer flagged in #8 with the npm source (digest check only applies to GitHub releases; npm archives are verified by SRI before writing and stage the CLI underpackage/bin/), and refreshesupstream.yml's description of which upstream it watches.AGENTS.mdrecords the new bump rule and the CI test step.This PR is only the rule and its comments: it does not bump
orax.toml, tag, release, or touch the marketplace.Refs ora-space/circus#422
ADR status: no ADR is involved. The change is how the nightly release computes this plugin's own version and how two packaging comments describe the existing two upstream sources; no runtime contract, host behavior, or model-access decision changes.
Evidence
deno task check,deno task lint,deno test scripts/(7 tests) pass on the head commit.deno task bump-versionagainst the current manifest prints0.7.0-opencode2.2and rewrites only theversionline (restored afterwards; the manifest is not part of this PR).bash -n.deno fmt --checkpasses on the new script and test.Merge Danger
Door: two-way
Blast Radius: release workflow
The step still fails closed: an unrecognised version aborts before the commit or tag is made, and the existing tag-collision check is unchanged. Merging changes what the next nightly tag will be for a suffixed
main; it cannot change a release that already exists, and no tag is created by this PR.