Engineering
releasing-software avatar

releasing-software

A pre-flight release checklist system to verify build paths, tests, and CI status before tagging, preventing failed deployments and repetitive retagging cycles.

Introduction

This skill acts as a rigorous quality gate for software delivery, specifically designed to enforce the 'No Tag Without Green CI' iron law. It is intended for software engineers and release managers working in Go-based repositories who want to avoid the common anti-pattern of tagging, observing CI failure, and subsequently performing multiple retagging cycles. By guiding users through a mandatory pre-flight verification process, it ensures that build configurations, test coverage, and documentation are production-ready before any version tag is applied.

  • Validates build paths across multiple configurations, including goreleaser.yml, Makefiles, Dockerfiles, and GitHub Actions workflows.

  • Enforces test existence requirements, ensuring all packages have at least one test file to prevent Go 1.23+ coverage tool errors.

  • Facilitates local CI simulation by providing commands for linting, testing, and building, ensuring parity with remote CI environments.

  • Streamlines the release procedure by integrating TodoWrite for mandatory checklist tracking.

  • Includes specific guidance on version bumping for patch, minor, and major releases, while providing search patterns to locate version strings throughout the codebase.

  • Users should trigger this skill whenever they prepare a release, wish to tag a version, or mention intent to 'ship it' or 'push to production'.

  • The primary constraint is the enforcement of a clean git state and a requirement for a successful CI run; users are instructed to stop immediately if they find themselves attempting to tag before CI completion or planning to 'fix it later' in the remote environment.

  • Expected outputs include a verified git tag, an updated CHANGELOG.md, and a clean release workflow execution verified via GitHub CLI (gh).

  • Ideal for environments using Goreleaser, Go, and GitHub Actions, serving as a procedural safeguard for automated delivery pipelines.

Repository Stats

Stars
312
Forks
46
Open Issues
1
Language
Vim Script
Default Branch
main
Sync Status
Idle
Last Synced
Apr 30, 2026, 08:38 AM
View on GitHub