verification-protocollisted
Install: claude install-skill aiskillstore/marketplace
# Verification Protocol - Elimination of Self-Attestation
## Purpose
**The Problem**: Agents were verifying their own work and always returning `success: true` by default.
**The Solution**: Independent verification by a DIFFERENT agent that does NOT trust the original agent's claims.
**The Rule**: `verified=true` ONLY when EVIDENCE proves all completion criteria are met.
---
## Core Principle
```
NEVER verify your own work.
ALWAYS verify with independent evidence.
ASSUME claims are false until proven true.
Block completion without proof.
```
---
## Verification Protocol
### Step 1: Task Completion Claim
Agent claims task is complete and provides:
```json
{
"task_id": "task-123",
"claimed_outputs": ["/path/to/file.ts", "/path/to/test.ts"],
"completion_criteria": [
"file_exists:/path/to/file.ts",
"no_placeholders:/path/to/file.ts",
"typescript_compiles:/path/to/file.ts",
"lint_passes:/path/to/file.ts",
"tests_pass:/path/to/test.ts"
]
}
```
### Step 2: Independent Verification Requested
Orchestrator sends to Independent Verifier Agent (different agent).
### Step 3: Verification Execution
Independent Verifier checks EVERY criterion with actual evidence:
```
file_exists → fs.stat(path) && size > 0
Proof: /path/to/file.ts, 1,247 bytes, modified 2025-12-02T14:30:00Z
no_placeholders → Scan for TODO, TBD, FIXME, [INSERT]
Proof: 0 placeholders found
typescript_compiles → npx tsc --noEmit [file]
Proof: Compilation successful, 0 errors
li