finish-phase

Runs release gates and final commit procedures for completed development phases.

Updated Jul 28, 2026
One-click install
npx skills add https://github.com/oleg-vasilyev/FoolProof --skill finish-phase-oleg-vasilyev
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: finish-phase
Source: https://github.com/oleg-vasilyev/FoolProof/tree/main/.claude/skills/finish-phase
Command: npx skills add https://github.com/oleg-vasilyev/FoolProof --skill finish-phase-oleg-vasilyev

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Written code is not releasable code. This Skill takes a finished development phase through every quality gate — lint, types, coverage, mutation testing, e2e tests, diff review, and conditional checks like poster galleries and copy readings — so nothing ships that only works on the author's machine. ## Core Features & Use Cases - Gate orchestration: Runs npm run check:phase covering lint, types, coverage (70% floor), Stryker mutation testing over the diff, and selective e2e scenarios, with per-gate logs and a commit-ready summary paragraph. - Mandatory independent review: Delegates the whole-diff review to a phase-reviewer subagent, copy readings to copy-reader, and poster inspection to poster-reader, because authors cannot review their own work. - Conditional gates and release decision: Opens extra gates only when the diff warrants them (real-evening reads, picture gallery, retrospective) and decides whether the phase ends in a tag or rides the next one. - Use Case: After implementing a new bot command with specs, load this Skill to run the full gate battery, launch the review subagent, and produce the correctly formatted phase-final commit message. ## Quick Start Ask the assistant to finish the current phase by running all release gates and preparing the final commit message.

Frequently Asked Questions about finish-phase

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

FAQPage Schema
How do I verify code is releasable before committing?▼

Run the full gate battery with npm run check:phase, which executes lint, type checks, the test suite under coverage, mutation testing over the diff, and selective e2e scenarios. Every gate must pass; a red gate is re-run alone, never by repeating the whole chain.

What mutation testing score should a project require?▼

This workflow requires 85% for bot source code and 80% for tooling scripts, run as two separate Stryker families so tooling mutants cannot hide inside a high aggregate score. A dropped score means tests assert too little — strengthen them, never lower the bar.

When should a phase end in a release tag versus merging to main?▼

Tag only when the phase changed what a player or operator gets, because a tag restarts the bot and pays the full release check. Tooling, documents, and process changes go to main and ride the next tag.

Why does npm ci fail in CI after changing package.json locally?▼

npm install on one platform can prune optional packages another platform requires, producing a lock file that passes locally but fails on the runner. Run npm ci --dry-run before committing and diff the lock file for unexplained removals.

Can I review my own diff instead of using a review subagent?▼

No. The whole-diff review is always delegated to a phase-reviewer subagent because the author still holds the reasoning that made the code look right. Stop editing before launching it, since the reviewer reads live files rather than a snapshot.

When should this skill not be loaded?▼

Do not load it during stage 1 framing, when a list of changes is only being recognized as a phase. It applies once code is written and gates are due — wrapping up a phase, cutting a release, or checking releasability.