搜索

PythonReactSEOPDF
GitHub Skill

verification-stack

Use when running verification pipelines, checking test/lint/type status, or ensuring code quality gates pass before completing work

JoshuaOliphant☆ 3 仓库 Stars0 仓库 Forks

安装与使用

请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。

查看来源 ↗使用指南

技能说明

Verification Stack

Verification-driven development uses automated checks as gates instead of manual approval. This skill teaches the verification pipeline that enables autonomous development.

Core Principle

Asymmetry of Verification: Many tasks are easier to verify than to solve. Software development is highly verifiable through:

  • Tests (unit, integration, e2e)
  • Linters and formatters
  • Type checkers
  • Build systems
  • Security scanners

The Verification Pipeline

Run checks in this order (fast-fail):

# 1. Format (auto-fix)
uv run ruff format .

# 2. Lint (auto-fix where possible)
uv run ruff check . --fix

# 3. Type check
uv run mypy src/

# 4. Tests (fast subset first)
uv run pytest tests/ -x --tb=short

# 5. Full test suite
uv run pytest tests/ --cov=src/

# 6. Security (optional)
uv run bandit -r src/ --severity-level high

One-Command Verification

Create a verification script for the project:

#!/bin/bash
# scripts/verify.sh
set -e

echo "=== Formatting ==="
uv run ruff format .

echo "=== Linting ==="
uv run ruff check . --fix

echo "=== Type Checking ==="
uv run mypy src/

echo "=== Tests ==="
uv run pytest tests/ -x --tb=short

echo "=== All checks passed ==="

Run with: bash scripts/verify.sh

Language-Specific Stacks

Python (uv + ruff + mypy + pytest)
uv run ruff format .
uv run ruff check . --fix
uv run mypy src/
uv run pytest tests/ -x
TypeScript (pnpm + eslint + tsc + vitest)
pnpm format
pnpm lint --fix
pnpm typecheck
pnpm test
Go
go fmt ./...
golangci-lint run --fix
go build ./...
go test ./...

Verification as Gate

The key insight: verification replaces permission prompts.

Instead of:

Claude: "Can I proceed with implementing this feature?"
Human: "Yes"

Use:

Claude: [implements feature]
Claude: [runs verification]
Verification: PASS → proceed
Verification: FAIL → fix and retry

Handling Failures

When verification fails:

  1. Read the error output - Don't guess, analyze the actual failure
  2. Fix the specific issue - Make targeted changes
  3. Re-run verification - Confirm the fix works
  4. Continue - Move to next task only when green
Common Failure Patterns
Failure Fix
Lint: unused import Remove the import
Type: missing return Add return type annotation
Test: assertion failed Fix logic or update test
Format: style violation Auto-fix handles this

Pre-Commit Integration

Add verification as git hook:

# .pre-commit-config.yaml
repos:
  - repo: https://github.com/astral-sh/ruff-pre-commit
    rev: v0.4.0
    hooks:
      - id: ruff
        args: [--fix]
      - id: ruff-format

Continuous Verification

In autonomous workflows:

  1. Before starting: Check baseline is green
  2. After each change: Run relevant subset
  3. Before closing Bead: Run full suite
  4. Before merge: Run full suite + integration tests
# Quick check during development
uv run pytest tests/test_specific.py -x

# Full verification before closing Bead
uv run ruff format . && uv run ruff check . --fix && uv run mypy src/ && uv run pytest tests/

使用示例

查看来源仓库中的使用示例与配置说明。

查看来源 ↗

来源历史

收录时间
2026-01-20
索引更新时间
2026-02-03
Branch
main

收录与同步日期属于本站记录。源码修改历史请查看来源仓库。

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!