Skip to content
Back to skills

Verification

ASecurity

This skill should be used before claiming any work is complete, before committing, before creating PRs, or before reporting task status. Enforces fresh verification evidence for all completion claims. Provides the verification gate methodology: run commands, read output, then report.

  • 3 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 26, 2026
testinggo

Security analysis

A100/100

Scanned May 27, 2026

npx -y skills add iwritec0de/app-dev --skill verification --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Verification?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Verification
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/iwritec0de-verification/badge)](https://www.skillsdirectory.com/skills/iwritec0de-verification)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: verification
description: >-
  This skill should be used before claiming any work is complete, before
  committing, before creating PRs, or before reporting task status. Enforces
  fresh verification evidence for all completion claims. Provides the
  verification gate methodology: run commands, read output, then report.
license: MIT
metadata:
  author: Chris Kelley (hello@iwritecode.io)
  version: 1.0.0
---

# Verification Skill

**Evidence before claims, always. NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION.**

## Iron Law

**NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE.** If you have not run the verification command in the current session, you cannot claim it passes. Prior knowledge, assumptions, and memory of previous runs do not count. Only fresh output from the current session constitutes evidence.

## The Five-Step Gate

Every completion claim must pass through this gate:

1. **Identify** — Determine which command proves your claim. "Tests pass" requires running the test suite. "No lint errors" requires running the linter. "It builds" requires running the build.
2. **Execute** — Run the command freshly. Not from memory. Not from a previous session. Right now, in the current session.
3. **Read** — Read the FULL output. Do not skim. Do not assume. If the output is long, read all of it. Errors can hide at the end.
4. **Verify** — Confirm the output actually supports your claim. A test suite that prints results but exits with a failure code does not pass. A build that emits warnings about missing dependencies is not clean.
5. **Assert** — Only after steps 1-4 are complete, state your claim and include the evidence. Quote the relevant output.

## JS/TS Verification Checklist

Before claiming work is complete in this project, run each applicable command and confirm clean output:

| Check | Command | What it proves |
|-------|---------|---------------|
| Type checking | `tsc --noEmit` | No type errors across the project |
| Tests | `npx vitest run` or `npm test` | All tests pass |
| Lint | `npx eslint .` | No lint errors or warnings |
| Formatting | `npx prettier --check .` | All files match formatting rules |
| Production build | `next build` | Build succeeds, catches SSR/hydration issues |

Run these in order. A type error caught by `tsc` is cheaper to fix than one discovered during `next build`. A lint error is cheaper to fix before tests run.

If a project uses a different test runner, linter, or build tool, substitute the appropriate commands. The principle is the same: run the real tool, read the real output.

## Red Flags

These phrases are signals that the verification gate has NOT been passed:

- **"should"** — "Tests should pass" means you did not run them.
- **"probably"** — "This probably works" means you did not verify it.
- **"seems to work"** — "It seems to work" means you observed something informal, not a verification command.
- **"I believe"** — "I believe the build is clean" means you are guessing.
- **Premature "Done!"** — Claiming completion without showing command output.
- **"All good!"** — Without evidence, this is an opinion, not a verification.

If you catch yourself using these phrases, stop and run the actual command.

## When to Verify

- **Before every commit** — Run the full checklist. Do not commit code that fails any check.
- **Before marking a task done** — The task is not done until verification proves it.
- **Before creating a PR** — The PR description should reference verification results.
- **Before reporting status** — "Feature complete" means verified, not "I think I finished writing code."
- **Before delegating "completed" work** — If you hand off work as complete, you are vouching for it. Verify first.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…