Skip to content

ci(version): replace [skip ci] with [auto-version] on bump commits - #1140

Merged
namastex888 merged 1 commit into
devfrom
fix/version-skip-ci-marker
Apr 12, 2026
Merged

namastex888 merged 1 commit into
devfrom
fix/version-skip-ci-marker

Conversation

@namastex888

Copy link
Copy Markdown
Contributor

Closes #1139.

Problem

Version-bump commits use GitHub's [skip ci] marker to prevent the Version workflow from re-triggering on its own output. Side effect: GitHub suppresses all workflow runs on those commits — including the CI and Commitlint checks that PR #1124 (rolling promotion dev→main) needs in its status rollup. Every single version bump stales the rollup, requiring manual intervention (empty retrigger commits, close+reopen attempts) to unblock the rolling PR.

Observed three times in 24 hours on 2026-04-11:

Fix

Replace [skip ci] with a custom [auto-version] marker in two places in version.yml:

Line Before After
26 (guard) !contains(message, '[skip ci]') !contains(message, '[auto-version]')
99 (commit) bump to ${VERSION} [skip ci] bump to ${VERSION} [auto-version]

How it works:

  1. Version bump commits now say [auto-version] — GitHub does not recognize this as a CI-skip marker, so CI + Commitlint fire normally on dev push.
  2. Those CI completions trigger the Version workflow, but it checks !contains(head_commit.message, '[auto-version]') → false → self-guards. No infinite loop.
  3. PR chore: rolling promotion dev -> main #1124's rollup always reflects the latest commit's Quality Gate + Commitlint state. No manual retrigger needed.

Cost: one extra ~60s CI run per version bump on the Blacksmith runner. Marginal vs the manual-intervention tax it eliminates.

Not touched: release.yml's guard (!startsWith(message, '[skip ci]')) — it protects against a different edge case (direct [skip ci]-prefixed pushes to main) and version bumps are always pushed to dev, never directly to main.

Test plan

  • Merge this PR → Version workflow fires → emits [auto-version] bump commit
  • CI fires on the [auto-version] bump commit (previously would not fire)
  • Version workflow sees the [auto-version] CI completion and skips (no infinite loop)
  • PR chore: rolling promotion dev -> main #1124's rollup shows Quality Gate + Commitlint on the bump commit
  • No manual retrigger needed for next rolling promotion

🤖 Generated with Claude Code

Closes #1139. Version-bump commits used GitHub's [skip ci] marker to
prevent the Version workflow from re-triggering on its own output.
Side effect: GitHub suppressed ALL workflow runs on those commits —
including the CI and Commitlint checks that PR #1124 (rolling
promotion dev→main) needs in its status rollup. Every version bump
staled the rollup, requiring manual intervention to unblock the
rolling PR.

Fix: replace [skip ci] with a custom [auto-version] marker that the
Version workflow checks (line 26) but GitHub does not recognize as a
CI-skip directive. Now:

1. Version bump commits trigger normal CI + Commitlint runs on dev.
2. Those CI completions fire the Version workflow, but it self-guards
   via !contains(head_commit.message, '[auto-version]') and skips —
   no infinite loop.
3. PR #1124's rollup always reflects the latest commit's CI state.
4. Cost: one extra ~60s CI run per version bump. Marginal vs the
   manual-intervention tax it eliminates.

release.yml's guard (`!startsWith(message, '[skip ci]')`) is left
unchanged — it protects against a different edge case (direct [skip
ci]-prefixed pushes to main) and version bumps are always pushed to
dev, not main.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@gemini-code-assist

Copy link
Copy Markdown
Contributor

Note

Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported.

@coderabbitai

coderabbitai Bot commented Apr 12, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 701a1144-9aec-4e0c-997e-9106c5ddd295

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/version-skip-ci-marker

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@namastex888
namastex888 merged commit 78b3606 into dev Apr 12, 2026
2 checks passed
namastex888 pushed a commit that referenced this pull request Apr 13, 2026
The preceding auto-version bump used the legacy workflow marker
that suppresses CI, leaving the rolling PR stale. This empty
commit carries no such marker and exists solely to fire fresh
push and pull_request events so the rollup reflects the proven
green state from 7c91daf (all 4 runs SUCCESS).

Follow-up resolves automatically once PR #1124 merges to main —
the auto-version marker fix from #1140 will then take effect
on main and this paper cut stops recurring.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
namastex888 pushed a commit that referenced this pull request Apr 14, 2026
The preceding auto-version bump used the legacy workflow marker
that suppresses CI, leaving the rolling PR stale. This empty
commit carries no such marker and exists solely to fire fresh
push and pull_request events so the rollup reflects the proven
green state from d8bf000 (all 4 runs SUCCESS).

Follow-up resolves automatically once PR #1124 merges to main —
the auto-version marker fix from #1140 will then take effect
on main and this paper cut stops recurring.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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