[READ-ONLY] Mirror of https://github.com/plttn/tide. 🌊 The ultimate Fish prompt.

ci: automate releases with release-please (#45)

## Summary - Replace manual `mise run release <version>` / `scripts/release.sh` with [release-please](https://github.com/googleapis/release-please) — it maintains an open release PR (version bump + generated `CHANGELOG.md`) derived from Conventional Commit PR titles, and tags/publishes automatically on merge - Add a follow-up job that force-updates the floating `v7`/`v7.0` convenience tags after a real release, using release-please's own documented pattern (delete + recreate, not force-push) - Add a `pr-title` CI check (`amannn/action-semantic-pull-request`) enforcing Conventional Commit PR titles — this is what actually makes release-please's changelog generation correct, since squash-merge turns the PR title into the commit message - Update `CONTRIBUTING.md`, `agents.md`, and the PR template to document the new title requirement and release flow This also closes a gap noticed along the way: direct pushes to `main` bypass CI entirely (`CI.yml` only triggers on `pull_request`), so releases could previously ship untested code. Releases are now normal PR merges, which CI already gates. ## Test plan - [x] `mise run lint` passes - [x] `mise run test` passes (full suite, all fish version-string / `--version` behavior unaffected by the `x-release-please-version` marker comment) - [x] `actionlint` passes on both workflow files - [ ] First real release: merge the release-please PR once it appears and confirm the tag, GitHub release, and floating `v7`/`v7.0` tags all land correctly — this is the first live trial of the new path 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>


Author Jack Platten Co-author Claude Sonnet 5 Committer GitHub Date Commit Parent 8674aee3