coverage-ratchet

Installation
SKILL.md

Coverage Ratchet

A build/test gate proves the tests that exist pass. It says nothing about whether tests were written — a phase with no test task ships green on build success alone. The coverage ratchet closes that hole deterministically: line coverage is measured on every verify, compared against a committed baseline, and may never drop. It only rises.

Why a Ratchet, Not a Target

An absolute threshold ("80%") fails one of two ways on a real codebase: it fails day one (so it gets disabled), or it gets set below current reality (so it gates nothing). A ratchet starts from wherever the project actually is and only tightens. Nobody argues with "don't get worse."

When This Skill Activates

Use this skill when:

  • A project has a test target but coverage has never been measured
  • Agent-written features keep arriving with build-passing, test-free code
  • Setting up the deterministic gauntlet (with testing/fitness-functions/ and swift/code-size/)

Setup

  1. Copy templates/coverage-gate.sh into the project (e.g. Scripts/coverage-gate.sh), make it executable, and fill in the config block (scheme, destination, app target name).
  2. Bootstrap the baseline:
Installs
2
GitHub Stars
647
First Seen
Aug 2, 2026
coverage-ratchet — rshankras/claude-code-apple-skills