Skip to content

Simplify release workflow with manual version bumping#26

Merged
kompre merged 6 commits into
mainfrom
test/workflow-fixes
Oct 21, 2025
Merged

Simplify release workflow with manual version bumping#26
kompre merged 6 commits into
mainfrom
test/workflow-fixes

Conversation

@kompre

@kompre kompre commented Oct 21, 2025

Copy link
Copy Markdown
Owner

Summary

Simplify the release workflow by removing automated version bumping and switching to manual version management.

Problem

The automated version-bump workflow had fundamental GitHub Actions limitations:

  • Commits from GITHUB_TOKEN don't trigger other workflows (by design)
  • After version bump, test workflow never ran
  • workflow_run trigger runs in main context, not PR context
  • Status checks not reported to PR
  • Auto-merge blocked indefinitely

Solution

Manual version bumping with uv version --bump:

  • ✅ Simple and reliable
  • ✅ Human verification of version
  • ✅ No workflow orchestration complexity
  • ✅ No status check issues
  • ✅ One manual step vs fighting GitHub limitations

Changes

  • Archived version-bump.yml with detailed explanation
  • Simplified test.yml - removed workflow_run, added concurrency control
  • Rewrote RELEASE.md with manual workflow guide
  • Added proposal document explaining all attempted solutions

New Workflow

  1. Create PR with changes
  2. Manually bump: uv version --bump rc
  3. Commit and push version change
  4. Add test-release label
  5. Merge PR
  6. Release workflow publishes to TestPyPI

Testing This PR

I'll demonstrate the new manual workflow:

  1. Bump version manually in next commit
  2. Tests run normally
  3. Merge when ready
  4. Release workflow publishes

🤖 Generated with Claude Code

kompre and others added 5 commits October 21, 2025 14:16
Removed automated version-bump workflow due to GitHub Actions limitations
and simplified the release process to manual version bumping.

Changes:
- Archived version-bump.yml with detailed explanation of why it didn't work
  - GITHUB_TOKEN commits don't trigger workflows (by design)
  - workflow_run runs in wrong context, doesn't report status to PR
  - This caused auto-merge to block indefinitely
- Simplified test.yml back to pull_request trigger only
- Added concurrency control to test workflow to prevent duplicate runs
- Completely rewrote RELEASE.md for manual workflow
  - Step-by-step guide for manual uv version bumping
  - Clear examples for different release types
  - Explanation of why automation was removed

New workflow:
1. Create PR with changes
2. Manually bump version: uv version --bump <type>
3. Commit and push version change
4. Add release/test-release label
5. Merge PR (tests already passed)
6. Release workflow publishes automatically

Benefits:
- ✅ Simple, reliable, no complex workflow orchestration
- ✅ No status check reporting issues
- ✅ Human verification of version before release
- ✅ One manual step vs. fighting GitHub Actions limitations

Future: Can revisit automation with GitHub App/PAT if desired.
See archived workflow and proposal for details.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@kompre kompre added the test-release Publish package to TestPyPI label Oct 21, 2025
@kompre kompre enabled auto-merge October 21, 2025 12:53
@kompre kompre disabled auto-merge October 21, 2025 12:53
@kompre kompre enabled auto-merge October 21, 2025 12:53
@kompre kompre merged commit cd7000f into main Oct 21, 2025
1 check passed
@kompre kompre deleted the test/workflow-fixes branch October 21, 2025 12:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

test-release Publish package to TestPyPI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant