2.2 KiB
2.2 KiB
summary, read_when
| summary | read_when | ||
|---|---|---|---|
| Step-by-step npm release checklist for the Clawdis CLI |
|
Release Checklist (npm)
Use pnpm (Node 22+) from the repo root. Keep the working tree clean before tagging/publishing.
- Version & metadata
- Bump
package.jsonversion (e.g.,1.1.0). - Update CLI/version strings:
src/cli/program.tsand the Baileys user agent insrc/provider-web.ts. - Confirm package metadata (name, description, repository, keywords, license) and
binmap points todist/index.jsforclawdis. - If dependencies changed, run
pnpm installsopnpm-lock.yamlis current.
- Build & artifacts
pnpm run build(regeneratesdist/).- Optional:
npm pack --pack-destination /tmpafter the build; inspect the tarball contents and keep it handy for the GitHub release (do not commit it).
- Changelog & docs
- Update
CHANGELOG.mdwith user-facing highlights (create the file if missing); keep entries strictly descending by version. - Ensure README examples/flags match current CLI behavior (notably new commands or options).
- Validation
pnpm lintpnpm test(orpnpm test:coverageif you need coverage output)pnpm run build(last sanity check after tests)- (Optional) Spot-check the web gateway if your changes affect send/receive paths.
- Publish
- Confirm git status is clean; commit and push as needed.
npm login(verify 2FA) if needed.npm publish --access public(use--tag betafor pre-releases).- Verify the registry:
npm view clawdis versionandnpx -y clawdis@X.Y.Z --version(or--help).
- Post-publish
- Tag and push:
git tag vX.Y.Z && git push origin vX.Y.Z(orgit push --tags). - Create/refresh the GitHub release for
vX.Y.Zwith titleclawdis X.Y.Z(not just the tag); body should inline the product-facing bullets from the changelog (no bare links) and must not repeat the title inside the body; attach thenpm packtarball + checksums if you generated them. - From a clean temp directory (no
package.json), runnpx -y clawdis@X.Y.Z send --helpto confirm install/CLI entrypoints work. - Announce/share release notes.