Ragmir publishes to npm through the protected Release npm GitHub Actions workflow on main.
Do not publish from a local machine.
- Start feature work from
developon afeature/*,fix/*, orchore/*branch. - Open a pull request into
developand wait for required checks. - Promote
developtomainthrough a release pull request after integration is green. - Let the
Release npmworkflow run onmain, or dispatch it manually frommain. - Approve the protected
npm-publishenvironment when GitHub asks for review. - Verify npm, GitHub release notes, release artifacts, and the landing deploy.
The workflow runs pnpm validate, then semantic-release derives the next version from
Conventional Commits. It prepares packages/ragmir-tts and packages/ragmir-core, publishes
@jcode.labs/ragmir-tts first, then publishes @jcode.labs/ragmir with npm provenance.
After a successful npm release, the workflow dispatches deploy-landing.yml on main with the
released version so the production landing can show the current package version.
feat:creates a minor release.fix:anddocs:create patch releases.feat!:or aBREAKING CHANGE:footer creates a major release.scope: landingis ignored for npm versioning because the landing is not an npm package.
For CLI compatibility releases, make the migration explicit in the Conventional Commit body or
footer. For example, the ragmir to rgr rename must mention that ragmir remains as a deprecated
compatibility bin and users should migrate scripts to rgr.
Run the full gate before opening or updating a release pull request:
pnpm validateFor narrower preflight while iterating, use the package-level checks that match the edited area,
then run pnpm validate before release.