---
name: Happier Release Promote
slug: happier-release-promote
category: DevOps
description: Happier Release Promote resolves the private release authority before promotion work. Use it to follow the canonical promotion procedure and verify issue-state advancement after promotion.
github: "https://github.com/happier-dev/happier/tree/dev/skills/happier-release-promote"
language: TypeScript
stars: 1489
forks: 131
install: "npx degit https://github.com/happier-dev/happier/tree/dev/skills/happier-release-promote ~/.claude/skills/happier-release-promote"
installs_to: ~/.claude/skills/happier-release-promote
source_path: skills/happier-release-promote/SKILL.md
collection_size: 24
category_size: 798
collection_url: "https://dirskills.com/collections/happier-dev/happier"
added: 2026-08-19T07:27:03.846Z
last_synced: 2026-08-19T07:27:03.846Z
canonical_url: "https://dirskills.com/skills/happier-release-promote"
---

# Happier Release Promote

Happier Release Promote resolves the private release authority before promotion work. Use it to follow the canonical promotion procedure and verify issue-state advancement after promotion.

**Install:**

```bash
npx degit https://github.com/happier-dev/happier/tree/dev/skills/happier-release-promote ~/.claude/skills/happier-release-promote
```

## README

# Happier Release Promote

Resolve the private release authority before promotion work:

```bash
hmaint release bootstrap --repo <absolute checkout> --json
```

Use the returned private skill and its instructions as the authoritative promotion procedure. The public contract is available with `node scripts/pipeline/run.mjs release-contract`; do not recreate private release policy here.

The public issue-stage contract is in `docs/issue-triage.md`. Use the canonical release workflow so its pre-bound issue snapshot advances only after post-promotion verification. Do not manually pre-advance labels, infer availability from a branch move alone, or close issues as part of promotion.
