Skip to content

Commit 504b189

Browse files
authored
docs: update Rstack release skill (#293)
1 parent 61a683c commit 504b189

1 file changed

Lines changed: 19 additions & 7 deletions

File tree

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: release-rstack
3-
description: Create a release pull request for the `rstack` npm package at a specific version. Use when asked to prepare, create, or open an rstack package release PR.
3+
description: Create a coordinated release pull request for the `rstack` and `create-rstack` npm packages. Use when asked to prepare, create, or open an rstack package release PR.
44
---
55

66
# Release Rstack
@@ -11,6 +11,16 @@ description: Create a release pull request for the `rstack` npm package at a spe
1111

1212
If the version is missing, ask for it before making changes.
1313

14+
## Version rules
15+
16+
- Read both package versions before editing. Require the rstack target to be a valid, increasing SemVer version.
17+
- Keep the package version lines independent. Apply the rstack bump type to the current `create-rstack` version:
18+
- Patch: increment the patch version.
19+
- Minor: increment the minor version and reset patch to `0`.
20+
- Prerelease: use the rstack target's identifier. From a stable version, increment patch and append `-<identifier>.0`; otherwise increment the final prerelease number.
21+
- Prerelease to stable with the same core version: remove the `create-rstack` prerelease suffix.
22+
- Stop and ask the user for major or ambiguous changes.
23+
1424
## Steps
1525

1626
1. Check the worktree with `git status --short`. If there are uncommitted changes or untracked files, stop and ask the user how to proceed. Do not stash, discard, or include them.
@@ -19,16 +29,18 @@ If the version is missing, ask for it before making changes.
1929

2030
3. Create and switch to `release/v<version>` from the clean default-branch HEAD.
2131

22-
4. Update the `version` field in `packages/rstack/package.json` to `<version>`.
32+
4. Update the `version` field in `packages/rstack/package.json` to `<version>` and the `version` field in `packages/create-rstack/package.json` to the derived `create-rstack` version.
33+
34+
5. In every `packages/create-rstack/template-*/package.json`, set the `rstack` dependency to `^<version>`. Update only that dependency entry and verify every template package manifest uses the same target version.
2335

24-
5. Run `pnpm --filter rstack build:native` to regenerate `packages/rstack/binding.cjs` and `packages/rstack/binding.d.cts` for the new version. Do not edit generated binding files manually.
36+
6. Run `pnpm --filter rstack build:native` to regenerate `packages/rstack/binding.cjs` and `packages/rstack/binding.d.cts` for the new version. Do not edit generated binding files manually.
2537

26-
6. Review the diff and confirm it contains only the version-field change and regenerated binding files above.
38+
7. Review the diff and confirm it contains only both package version changes, the template `rstack` dependency updates, and the regenerated binding files above. Verify the two package version changes use the intended matching bump type and no template retains an older rstack version.
2739

28-
7. Create a commit with this exact message: `release: v<version>`.
40+
8. Create a commit with this exact message: `release: v<version>`.
2941

30-
8. Push the branch to `origin`. Recheck that the branch being pushed is `release/v<version>` and never push the default branch directly.
42+
9. Push the branch to `origin`. Recheck that the branch being pushed is `release/v<version>` and never push the default branch directly.
3143

32-
9. Create a pull request against the default branch. In Codex, use the GitHub connector/plugin; use another available GitHub workflow only when the connector is unavailable. Use `release: v<version>` as the PR title.
44+
10. Create a pull request against the default branch. In Codex, use the GitHub connector/plugin; use another available GitHub workflow only when the connector is unavailable. Use `release: v<version>` as the PR title.
3345

3446
Return the pull request URL.

0 commit comments

Comments
 (0)