home / skills / affaan-m / everything-claude-code / verification-loop

verification-loop skill

/skills/verification-loop

This skill helps you enforce code quality by running build, type, lint, tests, security, and diff verifications across projects.

npx playbooks add skill affaan-m/everything-claude-code --skill verification-loop

Review the files below or copy the command above to add this skill to your agents.

Files (1)
SKILL.md
2.4 KB
---
name: verification-loop
description: "A comprehensive verification system for Claude Code sessions."
---

# 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 builds
npm run build 2>&1 | tail -20
# OR
pnpm build 2>&1 | tail -20
```

If build fails, STOP and fix before continuing.

### Phase 2: Type Check
```bash
# TypeScript projects
npx tsc --noEmit 2>&1 | head -30

# Python projects
pyright . 2>&1 | head -30
```

Report all type errors. Fix critical ones before continuing.

### Phase 3: Lint Check
```bash
# JavaScript/TypeScript
npm run lint 2>&1 | head -30

# Python
ruff check . 2>&1 | head -30
```

### Phase 4: Test Suite
```bash
# Run tests with coverage
npm 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 secrets
grep -rn "sk-" --include="*.ts" --include="*.js" . 2>/dev/null | head -10
grep -rn "api_key" --include="*.ts" --include="*.js" . 2>/dev/null | head -10

# Check for console.log
grep -rn "console.log" --include="*.ts" --include="*.tsx" src/ 2>/dev/null | head -10
```

### Phase 6: Diff Review
```bash
# Show what changed
git diff --stat
git 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.

Overview

This skill is a verification loop designed for Claude Code sessions that enforces quality gates across build, types, lint, tests, security, and diff review. It produces a concise verification report and can run on demand or periodically during long sessions. The goal is to ensure changes are safe, typed, linted, tested, and review-ready before opening a PR.

How this skill works

Run the verification phases sequentially: build, type checking, linting, test suite with coverage, security scans for secrets and debugging artifacts, and a diff review of changed files. Each phase captures brief command output and metrics, aggregates results, and emits a standardized VERIFICATION REPORT indicating pass/fail and actionable issues. Optionally run in continuous mode every 15 minutes or after major changes to catch regressions early.

When to use it

  • After completing a feature or significant code change
  • Before creating a pull request or merging into main
  • After refactoring or large dependency updates
  • During long paired sessions as a periodic quality gate
  • When you want a repeatable checklist for release readiness

Best practices

  • Stop and fix build or type errors before moving to later phases
  • Aim for a minimum test coverage target (example: 80%) and enforce thresholds
  • Treat security findings (secrets, API keys, stray console logs) as high priority
  • Run the loop automatically before CI or as a local pre-PR step
  • Use the diff review to validate intent, error handling, and edge cases

Example use cases

  • Local developer runs the loop before opening a PR to catch regressions
  • Reviewer asks submitter for a verification report as part of code review
  • Continuous mode runs during a long bugfix session to prevent drift
  • Release engineer uses the loop to validate a hotfix branch before deploy
  • Security-conscious teams scan for leaked keys and debug statements pre-merge

FAQ

What happens if the build fails?

Stop and fix build errors first. The verification loop marks Build as FAIL and halts further verification until the build succeeds.

How often should continuous verification run?

Every 15 minutes or after any major change (new file, large refactor, dependency update) balances feedback speed with noise.