release-engineering

Coordinate end-to-end PHP library releases with semantic versioning and CI verification.

2|Updated Feb 28, 2024
One-click install
npx skills add https://github.com/coagus/php-api-builder --skill release-engineering-coagus
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: release-engineering
Source: https://github.com/coagus/php-api-builder/tree/main/.claude/skills/release-engineering
Command: npx skills add https://github.com/coagus/php-api-builder --skill release-engineering-coagus

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Release management is complex and risky without a clear process. This skill codifies best practices to ensure releases are predictable, auditable, and recoverable: from semantic versioning to enforceable tag strategies, from release notes to CI gates, and from pre-flight checks to post-release validation.

Core Features & Use Cases

  • Semantic versioning and pre-release channels (alpha/beta/rc) to communicate compatibility and stability levels.
  • Conventional commits and annotated tags to enable automation and traceability of changes.
  • Release notes authoring, CI gate checks, and post-release smoke testing to ensure production readiness.
  • Registry verification (Docker Hub, Packagist) and cross-environment validation to prevent broken deployments.

Quick Start

Prepare and verify a new release by drafting notes, bumping the version, creating an annotated tag, and validating CI before pushing.

Frequently Asked Questions about release-engineering

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate semantic versioning and release notes from conventional commits?

Automate semantic versioning by enforcing conventional commits to determine version bumps, then auto-generate release notes and annotated tags from the parsed commit history. This ensures predictable, traceable releases without manual intervention.

What is the best way to manage pre-release channels like alpha, beta, and rc?

Manage pre-release channels by applying semantic versioning identifiers like alpha, beta, or rc to your tags. This communicates stability levels clearly, allowing users to opt into pre-release versions while maintaining a stable release line.

How do I prevent broken deployments when publishing PHP libraries to Packagist and Docker Hub?

Prevent broken deployments by enforcing CI gate checks and verifying registry publishing on Docker Hub and Packagist. Run post-release smoke tests across environments to validate production readiness before completing the release.

Does a non-forced push policy matter for release tagging strategies?

A non-forced push policy is critical for release tagging because it preserves annotated tag history and auditability. Forcing pushes overwrites tags, breaking traceability, CI gates, and dependency resolution for downstream consumers.

Why does my CI pipeline fail before a release is published?

CI pipelines fail before release publication due to failed pre-flight checks or unverified CI results. The release workflow requires rigorous validation of CI gates and cross-environment tests to pass before pushing tags or publishing packages.

Can I use this release workflow for PHP libraries specifically?

Yes, this release workflow supports PHP libraries by validating Packagist registry publishing and running post-release smoke tests across PHP environments to ensure compatibility and prevent broken deployments.