Skip to content

ci: auto release on main merges#4

Merged
cafitac merged 1 commit intomainfrom
ci/auto-release-on-main-merge
Apr 29, 2026
Merged

ci: auto release on main merges#4
cafitac merged 1 commit intomainfrom
ci/auto-release-on-main-merge

Conversation

@cafitac
Copy link
Copy Markdown
Owner

@cafitac cafitac commented Apr 29, 2026

Summary

  • Add an auto-release workflow that runs on pushes to main, bumps the patch version, commits release metadata with [skip release], tags the new version, and pushes the tag to trigger the existing publish workflow.
  • Add a reusable scripts/bump_release_version.py helper for synchronized Python/npm/module/lockfile version bumps.
  • Add workflow/script regression tests and make release metadata tests future-version-safe.

Release behavior

After this lands, each normal merge to main will:

  1. run auto-release,
  2. bump MAJOR.MINOR.PATCH to the next patch,
  3. push chore: release vX.Y.Z [skip release] back to main,
  4. create/push vX.Y.Z,
  5. let the existing tag-driven publish.yml publish PyPI/npm and create the GitHub Release.

The [skip release] marker prevents the release commit itself from recursively creating another release.

Verification

  • RED observed before implementation:
    • tests/test_release_workflows.py failed because .github/workflows/auto-release.yml did not exist.
    • tests/test_bump_release_version.py failed because scripts/bump_release_version.py did not exist.
  • TMPDIR=/Users/reddit/Project/agent-memory/.tmp-test uv run pytest tests/test_release_workflows.py tests/test_bump_release_version.py tests/test_release_metadata.py -q -> 6 passed
  • TMPDIR=/Users/reddit/Project/agent-memory/.tmp-test uv run pytest tests/ -q -> 119 passed
  • uv run python scripts/check_release_metadata.py -> version metadata synced at 0.1.9
  • uv run python scripts/smoke_release_readiness.py -> passed
  • uvx --from build python -m build -> passed
  • npm pack --dry-run -> passed

Current v0.1.9 publish check

@cafitac cafitac merged commit 70ba847 into main Apr 29, 2026
2 checks passed
@cafitac cafitac deleted the ci/auto-release-on-main-merge branch April 29, 2026 21:15
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.

1 participant