Skip to content

Commit 7969f1f

Browse files
committed
docs(release): clarify unpublished beta tag reuse
1 parent 388019f commit 7969f1f

1 file changed

Lines changed: 15 additions & 8 deletions

File tree

  • .agents/skills/openclaw-release-maintainer

.agents/skills/openclaw-release-maintainer/SKILL.md

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,11 @@ Use this skill for release and publish-time workflow. Keep ordinary development
4141
recommended replacement can shift as plugin ownership, externalization, and
4242
config footprint move, so do not blindly copy stale replacement annotations
4343
into release notes.
44-
- Do not delete or rewrite beta tags after they leave the machine. If a
45-
published or pushed beta needs a fix, commit the fix on the release branch and
46-
increment to the next `-beta.N`.
44+
- Do not delete or rewrite beta tags after their matching npm package has been
45+
published. If a pushed beta tag fails preflight before npm publish, delete and
46+
recreate the tag and prerelease at the fixed commit so npm prerelease versions
47+
stay contiguous. If a published beta needs a fix, commit the fix on the
48+
release branch and increment to the next `-beta.N`.
4749
- For a beta release train, run the fast local preflight first, publish the
4850
beta to npm `beta`, then run the expensive published-package roster focused
4951
on install/update/Docker/Parallels/NPM Telegram. If anything fails, fix it on
@@ -367,8 +369,10 @@ node --import tsx scripts/openclaw-npm-postpublish-verify.ts <published-version>
367369
- Any fix after preflight means a new commit. Delete and recreate the tag and
368370
matching GitHub release from the fixed commit, then rerun preflight from
369371
scratch before publishing.
370-
Exception: never delete or recreate a beta tag that has already been pushed or
371-
published; increment to the next beta number instead.
372+
Exception: never delete or recreate a beta tag whose matching npm package has
373+
already been published; increment to the next beta number instead. If only the
374+
pushed tag/prerelease exists and npm publish has not happened, recreate that
375+
same beta tag at the fixed commit.
372376
- For stable mac releases, generate the signed `appcast.xml` before uploading
373377
public release assets so the updater feed cannot lag the published binaries.
374378
- Serialize stable appcast-producing runs across tags so two releases do not
@@ -561,6 +565,9 @@ node --import tsx scripts/openclaw-npm-postpublish-verify.ts <published-version>
561565
commit, and rerun all relevant preflights from scratch before continuing.
562566
Never reuse old preflight results after the commit changes. For pushed or
563567
published beta tags, do not delete/recreate; increment to the next beta tag.
568+
For preflight-only failures where npm did not publish the beta version,
569+
delete/recreate the same beta tag and prerelease at the fixed commit instead
570+
of skipping a prerelease number.
564571
20. Start `.github/workflows/openclaw-npm-release.yml` from the same branch with
565572
the same tag for the real publish, choose `npm_dist_tag` (`beta` default,
566573
`latest` only when you intentionally want direct stable publish), keep it
@@ -573,9 +580,9 @@ node --import tsx scripts/openclaw-npm-postpublish-verify.ts <published-version>
573580
for critical fixes that landed after the release branch cut; backport only
574581
important low-risk fixes before starting expensive lanes, or increment to
575582
the next beta if the fix must change the already-published package. If any
576-
lane fails after the beta tag/package is pushed or published, fix,
577-
commit/push/pull, increment to the next beta tag, and rerun the affected
578-
beta evidence. Once the beta is live, start remote/manual rosters where they
583+
lane fails after the beta package is published, fix, commit/push/pull,
584+
increment to the next beta tag, and rerun the affected beta evidence. Once
585+
the beta is live, start remote/manual rosters where they
579586
can overlap safely, but keep local Docker and Parallels load controlled.
580587
Ensure the full expensive roster has passed at least once before
581588
stable/latest promotion. The roster includes the manual Actions >

0 commit comments

Comments
 (0)