Verification Loop

affaan-m/ECC/.kiro/skills/verification-loop

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

A comprehensive verification system for Kiro sessions.

Instructions onlySoftware Development
AI-generated overview

Runs a multi-phase verification pass over a codebase: build, types, lint, tests, security scan and diff review.

What it does
This skill defines a six-phase verification loop for a coding session: build verification, type checking, lint checking, running the test suite with coverage, a security scan for secrets and stray console.log calls, and a diff review of changed files. It specifies shell commands for JavaScript/TypeScript and Python projects and a fixed verification report format covering build, types, lint, tests, security and diff, ending with an overall READY/NOT READY verdict for a pull request. It also describes a continuous mode that repeats verification every 15 minutes or after major changes.
When to use it
Use it after completing a feature or significant code change, before creating a pull request, after refactoring, or whenever quality gates need to pass. It is also intended for long sessions where verification should be repeated periodically.
Requirements
Instructions only; no scripts are shipped. It assumes an agent able to run shell commands in a project with a build tool (npm or pnpm), a type checker (tsc or pyright), a linter (npm lint or ruff), a test runner with coverage, git, and grep.

Verification Loop Skill

A comprehensive verification system for Kiro 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
# TypeScript projectsnpx 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/ECCin.kiro/skills/verification-loopat commitef648e0

License: No license

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

Report or request removal