Verification Loop

affaan-m/ECC/skills/verification-loop

by affaan-mef648e01899ba3e8dc6371642deaaf64b4477775MIT275K starsListed Oct 9, 2026Updated Oct 9, 2026Repository updated 4 days ago

Run a six-phase verification of a Claude Code session's work — build, type check, lint, tests with coverage, security grep, and diff review — then produce a PASS/FAIL verification report. Use when verifying work after completing a feature or refactor, before creating a PR, or when quality gates must pass.

Instructions onlySoftware Development
AI-generated overview

Runs a six-phase code verification loop and produces a PASS/FAIL readiness report.

What it does
Guides an agent through six verification phases for a code session: build, type check, lint, tests with coverage, a security grep for secrets and debug statements, and a diff review. It specifies shell commands for each phase and a fixed report format covering build, types, lint, tests, security, and changed files. The output is a verification report with an overall READY/NOT READY verdict for a pull request plus a list of issues to fix.
When to use it
Use after completing a feature, refactor, or significant code change, and before opening a pull request. It also fits when quality gates must pass or when periodic checks are wanted during long sessions.
Requirements
Instructions only; no bundled scripts. The agent needs a project with build, type-check, lint, and test tooling (for example npm or pnpm, tsc or pyright, ruff) plus git for the diff review. Commands run locally and may need network access for package tooling.

Verification Loop Skill

A comprehensive verification system for Claude Code sessions.

When to Use

Invoke this skill:

  • After completing a feature or significant code change
  • Before creating a PR
  • When you want to ensure quality gates pass
  • After refactoring

Verification Phases

Phase 1: Build Verification

bash
# Check if project buildsnpm run build 2>&1 | tail -20# ORpnpm build 2>&1 | tail -20

If build fails, STOP and fix before continuing.

Phase 2: Type Check

bash
set -o pipefail# TypeScript projectsnpx --no-install tsc --noEmit 2>&1 | head -30
# Python projectspyright . 2>&1 | head -30

Report all type errors. Fix critical ones before continuing.

Phase 3: Lint Check

bash
# JavaScript/TypeScriptnpm run lint 2>&1 | head -30
# Pythonruff check . 2>&1 | head -30

Phase 4: Test Suite

bash
# Run tests with coveragenpm run test -- --coverage 2>&1 | tail -50
# Check coverage threshold# Target: 80% minimum

Report:

  • Total tests: X
  • Passed: X
  • Failed: X
  • Coverage: X%

Phase 5: Security Scan

bash
# Check for secretsgrep -rn "sk-" --include="*.ts" --include="*.js" . 2>/dev/null | head -10grep -rn "api_key" --include="*.ts" --include="*.js" . 2>/dev/null | head -10
# Check for console.loggrep -rn "console.log" --include="*.ts" --include="*.tsx" src/ 2>/dev/null | head -10

Phase 6: Diff Review

bash
# Show what changedgit diff --statgit diff HEAD~1 --name-only

Review each changed file for:

  • Unintended changes
  • Missing error handling
  • Potential edge cases

Output Format

After running all phases, produce a verification report:

VERIFICATION REPORT==================
Build:     [PASS/FAIL]Types:     [PASS/FAIL] (X errors)Lint:      [PASS/FAIL] (X warnings)Tests:     [PASS/FAIL] (X/Y passed, Z% coverage)Security:  [PASS/FAIL] (X issues)Diff:      [X files changed]
Overall:   [READY/NOT READY] for PR
Issues to Fix:1. ...2. ...

Continuous Mode

For long sessions, run verification every 15 minutes or after major changes:

markdown
Set a mental checkpoint:- After completing each function- After finishing a component- Before moving to next task
Run: /verify

Integration with Hooks

This skill complements PostToolUse hooks but provides deeper verification. Hooks catch issues immediately; this skill provides comprehensive review.

Source and attribution

Source:affaan-m/ECCinskills/verification-loopat commitef648e0

License: MIT

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal