Skip to content

fix(ci): gate release on every check in one test-build-release pipeline - #162

Merged
danielvm-git merged 3 commits into
mainfrom
fix/ci-single-pipeline
Oct 25, 2026
Merged

danielvm-git merged 3 commits into
mainfrom
fix/ci-single-pipeline

Conversation

@danielvm-git

Copy link
Copy Markdown
Owner

Summary

Release (publish.yml), Golden Anti-Vacuity Suite and Sync Skills on Push ran as three workflows on the same push with no needs: edge. semantic-release could tag and publish to npm while a gate was red or still running — only its own skill-health job gated it. Bug file: specs/bugs/BUG-2026-10-25-release-not-gated.md. Follows #161 (speed) with the structural fix from the portfolio template (danielvm-git/.github).

  • One pipeline — .github/workflows/test-build-release.yml: sync, verification-gates, skill-verify, story-verify run in parallel; release needs: all four and runs only on push to main. Replaces publish.yml, sync-skills.yml, golden-suite.yml. Job names are unchanged; the ruleset requires no status checks, so nothing else needs updating.
  • No duplicate checks — compliance, validate-doctrine and run-skill-verify.sh each run once (were up to 3×).
  • Concurrency — PR runs cancel stale runs; pushes queue; release never cancels in progress.
  • Template pinning — ubuntu-22.04 and SHA-pinned actions (checkout v7.0.0, setup-node v6.4.0, upload-artifact v7.0.1, configure-pages v6.0.0, upload/deploy-pages v5.0.0) here and in docs-site, publish-wiki, sync-references. SHAs resolved from each tag via the GitHub API. Agent workflows (agent-locks.yml, generated agentics-maintenance.yml) stay as-is per migration plan v2.
  • Contract gate — scripts/test-ci-pipeline-contract.sh (+ --self-test) in the golden suite asserts the shape so it cannot drift back.
  • Docs — CLAUDE.md, RELEASE.md, SEMANTIC-RELEASE.md, okf/traceability/semantic-context-bridge references and the gate-trace skill point at the new pipeline. The traceability reference no longer claims CI runs check-blind-spots.sh (it never did).

Not in scope: Pages deploy still runs as its own workflow (docs-site.yml), not gated on the pipeline.

Test plan

  • Contract: 33 violations before, OK after; self-test proves each rule fails on its own breach (bash 5 and macOS bash 3.2)
  • actionlint clean on all changed workflows
  • Local Preflight: compliance exit 0, golden 46/46, sync-skills, trace --strict
  • PR run: four gate jobs green, release skipped
  • main run after merge: release starts only after all four gate jobs finish, and publishes the next version

🤖 Generated with Claude Code

Release (publish.yml), the golden suite and sync-skills ran as three
workflows on the same push with no needs: edge, so semantic-release could
tag and publish to npm while a gate was red or still running. Only its own
skill-health job gated it; compliance, validate-doctrine and skill-verify
ran two or three times.

- test-build-release.yml: sync, verification-gates, skill-verify and
  story-verify run in parallel; release needs: all four and runs only on
  push to main. PR runs cancel stale runs; pushes queue and release never
  cancels in progress. Replaces publish.yml, sync-skills.yml and
  golden-suite.yml.
- Portfolio template (danielvm-git/.github): ubuntu-22.04 and SHA-pinned
  actions (checkout v7.0.0, setup-node v6.4.0, upload-artifact v7.0.1,
  pages v5/v6), also in docs-site, publish-wiki and sync-references.
  Agent workflows stay as-is per migration plan v2.
- test-ci-pipeline-contract.sh (golden gate + self-test) asserts the shape:
  release needs every gate, push-to-main only, no ubuntu-latest, SHA pins,
  timeouts, non-cancelling release and Pages, retired workflows gone.
- Docs and gate-trace skill point at the new pipeline; the traceability
  reference no longer claims CI runs check-blind-spots.sh.

Refs: BUG-2026-10-25-release-not-gated
@danielvm-git
danielvm-git merged commit 14250d8 into main Oct 25, 2026
5 checks passed
@danielvm-git
danielvm-git deleted the fix/ci-single-pipeline branch October 25, 2026 13:04
github-actions Bot pushed a commit that referenced this pull request Oct 25, 2026
## [2.88.14](v2.88.13...v2.88.14) (2026-10-25)

### Bug Fixes

* **ci:** gate release on every check in one test-build-release pipeline ([#162](#162)) ([14250d8](14250d8))
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 2.88.14 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant