Pre-completion verification gate

Verification checklist before claiming work complete. Validates verification method, exclusion criteria, and evidence requirements based on workflow type (build, debug, refactor).

Sby Skills Guide Bot
ProductivityIntermediate
3203/3/2026
Claude CodeCursorCopilot
#quality-assurance#workflow-verification#completion-gates#risk-mitigation

name: gate description: Verification before completion claims. Use when about to say "done", "fixed", or "complete". Runs checklist by workflow type with evidence requirements. model: haiku allowed-tools: Read

gate

Verify before claiming completion.

Trigger

Before claiming: "done", "fixed", "complete", "working", "ready"


Pre-Work Gate (Before Starting)

Run before substantial work begins. Blocks execution if missing.

□ Verification method locked (not "assumption")
  → What type: execution output / observation / measurement?
  → What evidence will you show?

□ At least 2 "must NOT" criteria exist
  → What should this NOT do?
  → What scope should NOT expand?

□ Fit score determined workflow shape
  → <25: BLOCKED - clarify first
  → 25-29: Colleague-shaped (iterate each step)
  → 30-39: Tool-with-review (checkpoint major steps)
  → 40+: Tool-shaped (milestones only)

If any missing: STOP. Complete before proceeding.


Post-Work Gate (Before Claiming Done)

Workflow A: Build

□ Feature executes without errors (show output)
□ Edge cases tested (empty, null, boundary)
□ Rollback tested if Type 2B/1
□ Dependencies verified

Workflow B: Debug

□ Root cause identified with evidence
□ Fix tested and resolves symptom
□ Prevention added (test/automation/guard)
□ Related bugs checked (same class)

Workflow C: Refactor

□ Existing tests pass unchanged
□ Behavior identical (output comparison)
□ Deletion complete (no orphans)
□ No new abstraction without justification

Verification Types

| Type | Description | Sufficient for SHIP? | |------|-------------|---------------------| | execution output | Ran command, showed result | ✓ Yes | | observation | Screenshot, debugger session | ✓ Yes | | measurement | Metrics, benchmark data | ✓ Yes | | reasoned inference | Logic-based conclusion | ⚠️ Flag, don't block | | code review | Inspection only | ⚠️ Weak | | assumption | Not verified | ⚠️ Flag with warning |

Default: Require execution output, observation, or measurement before completion claims.

Boundary

Gates advise, never prevent. User owns their work.

  • If user says "I'm confident" → flag concern, proceed
  • If user says "skip gates" → proceed without verification demands
  • Never invalidate user's assessment of their own work

Gate exists to surface risk, not to block legitimate intuition.

Verification Plan

Before claiming completion, define how you'll verify:

| Verification Type | Evidence Required | Time Cost | |-------------------|-------------------|-----------| | Execution output | Command output, test results | < 1 min | | Observation | Screenshot, debugger inspection | 1-5 min | | Measurement | Metrics, benchmarks, profiling | 5-15 min | | Code review | Manual inspection only | Variable | | Assumption | No verification | 0 (blocks SHIP) |

Verification Requirements by Stakes

| Stakes | Minimum Verification | |--------|---------------------| | High | Execution output + Observation | | Medium | Execution output | | Low | Code review acceptable |

Anti-Footgun Rules

  • Never claim "done" with only assumptions
  • "It compiles" is not verification
  • "Tests pass" requires showing test output
  • If verification would take > 15 min, that's a smell (task too big)

Anti-Patterns

| Claim | Problem | Required | | -------------------------- | --------------- | ------------- | | "Should work" | Speculation | Actual output | | "Looks good" | No verification | Test results | | "Fixed the issue" | No proof | Before/after | | "I think this resolves it" | No confidence % | X-Y% + basis |

Incomplete Work

When blocked, state:

  • What's done (with evidence)
  • What's blocking (specific)
  • What's remaining

Type 2A Exception

Trivial changes (< 1 min rollback): completion allowed without full gate. Document undo command.

Common Rationalizations (All Wrong)

| Thought | Reality | |---------|---------| | "The tests passed" | Tests ≠ verification. Did you run the ACTUAL command? | | "It should work" | "Should" = assumption. Show evidence. | | "I already checked" | When? Show the output. | | "The user is waiting" | Rushed verification = rework later. | | "It's a simple change" | Simple changes break production too. | | "I'm pretty sure it works" | Pretty sure ≠ evidence. Run it. |

Related skills