kata-release-publish

Publish GitHub Releases with signed annotated tags and workflow validation.

Updated Sep 3, 2025
One-click install
npx skills add https://github.com/guardiatechnology/design-system --skill kata-release-publish
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: kata-release-publish
Source: https://github.com/guardiatechnology/design-system/tree/main/.claude/skills/kata-release-publish
Command: npx skills add https://github.com/guardiatechnology/design-system --skill kata-release-publish

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill prevents broken or duplicated GitHub release publication by coordinating signed annotated tag creation with GitHub Actions validation and correct release handling.

Core Features & Use Cases

  • Release workflow detection: Differentiates between workflow-driven release creation (triggered by tag pushes) and fallback manual release creation to avoid race-condition failures.
  • Annotated + signed tag enforcement: Revalidates prerequisites, creates an annotated signed tag, pushes it to the remote, and verifies it by waiting for validate-tag.yml to complete successfully.
  • Release notes correctness: Updates GitHub Release notes only when the prepared changelog is substantially more informative, otherwise preserving the auto-generated release.

Quick Start

Use kata-release-publish to publish a prepared, validated version by creating a signed annotated tag, pushing it, waiting for validate-tag.yml, and then ensuring the corresponding GitHub Release is created or updated safely.

Frequently Asked Questions about kata-release-publish

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

FAQPage Schema
How do I publish a GitHub release with a signed annotated tag?

Publishing a GitHub release with a signed annotated tag involves creating the tag, pushing it to the remote, and orchestrating GitHub Actions validation to ensure the release is created safely without race conditions.

How do I prevent race conditions when creating a GitHub release from a tag push?

To prevent race conditions during GitHub release creation, the system detects whether a tag-triggered workflow will create the release automatically or if a manual fallback is needed, polling runs to avoid registration races.

How does GitHub Actions validate a tag before publishing a release?

GitHub Actions validates a tag by running a workflow like validate-tag.yml, where the publishing process waits for the validation to complete successfully and aborts strictly on any validation issues.

When should I replace auto-generated release notes with a prepared changelog?

You should replace auto-generated GitHub release notes with a prepared changelog only when the changelog is substantially more informative, otherwise preserving the auto-generated release to maintain notes correctness.

What is the best way to handle manual release creation when a tag-triggered workflow is not detected?

The best way to handle manual release creation when a tag-triggered workflow is absent is using a fallback like gh release create, ensuring preconditions are revalidated and the annotated signed tag is pushed first.

Why does my release publishing fail after pushing a signed tag?

Release publishing fails after pushing a signed tag when strict validation checks identify issues, aborting the process to prevent broken releases if the validate-tag.yml workflow does not complete successfully.