Skip to content

Versioning And Releases ​

Specra uses Changesets and GitHub Actions for versioning and changelog updates.

Current release posture ​

The first public release target is 0.1.0.

That means:

  • the project is pre-1.0
  • breaking changes are still possible
  • release notes should still be clear and intentional

Local workflow ​

When a change should be reflected in release notes:

bash
pnpm changeset

Then answer the prompt and commit the generated file in .changeset/.

GitHub workflow ​

Changesets is configured locally in .changeset/, and the repository now includes the baseline workflows:

  • CI
  • Versioning
  • Docs

CI ​

Should run on pull requests and pushes to main:

  • pnpm build
  • pnpm lint
  • pnpm test

Versioning ​

Should run on pushes to main and use Changesets to:

  • detect unreleased changesets
  • create or update a version PR
  • update package versions
  • update changelog entries

What to do after creating the GitHub repo ​

  1. Set the default branch to main if it is not already.
  2. Push the repository contents.
  3. Verify that GitHub Actions are enabled.
  4. Add NPM_TOKEN to repository secrets for publishing.
  5. Enable GitHub Pages with GitHub Actions as the source.
  6. Merge a PR with a sample changeset to confirm the versioning flow works.

Notes ​

The repository now includes the minimum local setup for npm publishing:

  • public package manifests
  • per-package README files
  • Changesets config

Before the first public release, you still need:

  • the final GitHub repository URL
  • an NPM_TOKEN in the publishing environment
  • GitHub Pages enabled if you want the docs site published immediately

Contract-driven AI coding and verification.