Skip to content

chore: link CHANGELOG from npm + README, add release skill - #188

Merged
Peter Hauge (petehauge) merged 3 commits into
mainfrom
chore/changelog-discoverability-and-release-skill
Jun 25, 2026
Merged

Peter Hauge (petehauge) merged 3 commits into
mainfrom
chore/changelog-discoverability-and-release-skill

Conversation

@petehauge

Copy link
Copy Markdown
Contributor

Summary

Improves changelog discoverability for users on older versions of @peterhauge/apiops-cli and codifies the release process as a Squad skill.

Changes

package.json

  • Add CHANGELOG.md to the files array so it ships inside the published npm tarball (the npm registry surfaces a bundled CHANGELOG.md on the package page).
  • Add a top-level "changelog" field pointing at CHANGELOG.md on main. This is the convention used by a number of registries/tools to link directly to release notes.

README.md

  • Add a Changelog section that links to CHANGELOG.md and to a GitHub compare URL (v0.2.1-alpha.0...main) so a user on a known installed version can see exactly what's been merged since.

.squad/skills/release-apiops-version/SKILL.md (new)

End-to-end checklist for cutting a new release:

  1. Confirm the working tree is clean (refuse to proceed otherwise — don't auto-stash).
  2. Switch to main and fast-forward pull.
  3. Create a release/v<NEW_VERSION> branch.
  4. Compile a list of changes from git log / gh pr list since the last tag.
  5. Suggest a version (with SemVer + alpha decision rules) and let the user pick from a short menu via ask_user.
  6. Insert a new ## [VERSION] — YYYY-MM-DD section in CHANGELOG.md matching the format the release workflow greps for.
  7. Run npm version ... --no-git-tag-version (includes a cheat sheet covering prerelease, patch, preminor, premajor, and explicit version forms with the --preid=alpha flag).
  8. Commit and open the PR.
  9. After merge, .github/workflows/squad-release.yml handles tagging and the GitHub Release.

Why

  • Today a user on 0.2.1-alpha.0 has no good way to tell how far main has advanced without cloning the repo.
  • Bundling CHANGELOG.md + linking it from package.json and the README means the answer is one click away from the npm page or the repo root.
  • The release skill captures the implicit process so the next release (whether by a human or an agent) follows the same pattern and doesn't trip the squad-release.yml changelog validator.

Related

Follow-up to discussion about release highlights / versioning process (no linked issue).

Test plan

  • package.json parses (node -p "require('./package.json').version" still works).
  • README renders the new section.
  • Skill file is self-contained Markdown; no code changes to validate.

Peter Hauge and others added 3 commits June 25, 2026 10:20
- package.json: bundle CHANGELOG.md in published files and add a
  `changelog` link field so the npm registry surfaces it.
- README.md: add a Changelog section linking CHANGELOG.md and the
  GitHub compare view so users can see what changed since their
  installed version.
- .squad/skills/release-apiops-version: new skill documenting the
  end-to-end release process (clean-tree check, branch, changelog
  authoring, `npm version` cheat sheet, PR creation).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The repo's established convention is .copilot/skills/ for project
skills (32 of them); .squad/skills/ has only task-tracking. Move the
new skill to match the dominant pattern so Copilot CLI sessions
discover it.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- CHANGELOG.md: real 0.3.0-alpha.0 entry covering all 11 user-facing
  PRs merged since 0.2.1-alpha.0 (Breaking Changes, Features, Bug
  Fixes, Docs & Testing). Includes the compare-link footer entry so
  the heading renders as a clickable diff like every prior version.
- release-apiops-version skill: rewrite Step 4 to enumerate PRs via
  `gh pr list --search "merged:>=<date>"` instead of trusting
  `git log tag..tag` (tags in this repo have been placed
  prematurely in the past and aren't a reliable boundary). Step 6
  now requires the compare-link footer entry and verifies both the
  heading and the footer link.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@petehauge
Peter Hauge (petehauge) merged commit b5a5221 into main Jun 25, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants