savvy-web/Workflow Control
Lightweight pre-flight checks for splitting monolithic release workflows into targeted pieces
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| token | GitHub token for API calls (detects merged release PRs) | no | ${{ github.token }} |
| release-branch | Release branch name | no | changeset-release/main |
| target-branch | Target branch name (usually main) | no | main |
| release-prefix | Commit-message prefix marking an expected release-PR merge on the target branch. When a push to the target branch has a commit message starting with this prefix but the merged release PR is not yet associated with the commit (GitHub eventual consistency), detection is retried up to 3 times, 10s apart, before falling back to branch-management. Empty disables retry. | no | release: |
Outputs
| name | description |
|---|---|
| phase | Detected workflow phase: - branch-management: Push to main, should create/update release branch - validation: Push to release branch, should run validation - publishing: Release PR merged, should publish packages - close-issues: Release PR merged via PR event, should close issues - none: No action needed |
| has_changesets | Whether changeset files exist in .changeset directory |
| changeset_count | Number of changeset files found |
| release_type | Highest release type across changesets (major, minor, patch, or empty) |
| is_release_commit | Whether this commit is from a merged release PR |
| is_release_branch | Whether currently on the release branch |
| is_main_branch | Whether currently on the target (main) branch |
| merged_pr_number | PR number of the merged release PR (if detected) |
| should_continue | Whether the workflow should proceed (phase is not 'none') |
| reason | Human-readable explanation of the phase detection |