agentleFS
sefaertuncsefaertunc/anthropic-watch/.claude/skills/verification/SKILL.md

verification

Skill1 starsChanged 7 months agoMITView on GitHub

Domain-specific verification beyond tests, closing the feedback loop for web, API, CLI, data

  • Sends data out

48 other projects use a version of this, 1 of them edited.

Adopted by

Most recently taken up by

Used with

Projects with it also use evidence-driven-writing, experiment-results-planning and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • Norman-burySkill

    evidence-driven-writing

    Use when writing or revising Introduction, Related Work, background, literature synthesis, or any section where references must drive claims

    Also in 3 projects that use this

  • Norman-burySkill

    experiment-results-planning

    Use when designing experiments, result tables, mock planning data, evaluation protocols, or results sections before real data are final

    Also in 3 projects that use this

  • +10 more from Norman-bury

The file

Show its rules and text

We split this skill into the rules it gives an agent

28 rules. 0 are common, 28 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 40 edited versions we read keep these.

  • 28

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Every change needs a feedback loop: make a change, verify it worked, then move on.

    line 29
  2. Distinctive:

    After changing UI or API behavior:

    line 37
  3. Distinctive:

    Start the dev server

    line 39
  4. Distinctive:

    Test the happy path manually

    line 41
  5. Distinctive:

    Test at least one error path

    line 42
  6. Distinctive:

    Check browser console for errors/warnings

    line 43
  7. Distinctive:

    Verify responsive behavior if UI changed

    line 44
  8. Distinctive:

    Test beyond the happy path:

    line 59
  9. Distinctive:

    Use curl, httpie, or the project's API test suite.

    line 69
  10. Distinctive:

    After changing CLI behavior:

    line 74
  11. Distinctive:

    Run the command with typical arguments

    line 76
  12. Distinctive:

    Run with edge case arguments (empty, very long, special characters)

    line 77
  13. Distinctive:

    Run with invalid arguments (verify error messages are helpful)

    line 78
  14. Distinctive:

    Test piping and redirection if applicable

    line 79
  15. Distinctive:

    After changing data transformations:

    line 95
  16. Distinctive:

    Run with sample input data

    line 97
  17. Distinctive:

    Verify output schema matches expectations

    line 98
  18. Distinctive:

    Check row counts (input vs output)

    line 99
  19. Distinctive:

    Test with empty input

    line 101
  20. Distinctive:

    Test with malformed input

    line 102
  21. Distinctive:

    All five must pass. If any fails, stop and fix before continuing.

    line 114
  22. Distinctive:

    Don't panic. Read the error carefully.

    line 120
  23. Distinctive:

    Check if it's a pre-existing issue or something you introduced.

    line 121
  24. Distinctive:

    If you introduced it, fix it before committing.

    line 122
  25. Distinctive:

    If it's pre-existing, document it and decide whether to fix now or file it.

    line 123
  26. Distinctive:

    Use pre-flight for anything that can be checked cheaply up front.

    line 134
  27. Distinctive:

    Don't skip verification because "it's a small change." Small changes cause production outages too.

    line 142
  28. Distinctive:

    If verification is painful, invest in making it easier.

    line 145

“Common” is measured: kept by at least 6 in 10 of the 40 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Verification

Note: The bash examples below are reference snippets. If you enable disableSkillShellExecution in Claude Code settings (v2.1.101+), any inline shell execution from skills is blocked. These fenced examples are safe to read; copy-paste them into your terminal to run.

Beyond Unit Tests

Unit tests verify code logic. Verification confirms the feature actually works in its real environment. Both are necessary. Neither alone is sufficient.

The /verify command runs automated checks, but domain-specific verification often requires manual steps or specialized tooling.

Closing the Feedback Loop

Every change needs a feedback loop: make a change, verify it worked, then move on. The loop must be closed BEFORE committing.

Bad workflow: change code -> commit -> move to next task -> discover it's broken Good workflow: change code -> verify -> commit -> move to next task

Web Application Verification

After changing UI or API behavior:

  1. Start the dev server
  2. Navigate to the affected page/endpoint
  3. Test the happy path manually
  4. Test at least one error path
  5. Check browser console for errors/warnings
  6. Verify responsive behavior if UI changed

For API changes:

# Test the endpoint directly
curl -X POST http://localhost:3000/api/resource \
  -H "Content-Type: application/json" \
  -d '{"field": "value"}'

# Check response status and body

API Verification

Test beyond the happy path:

  • Valid request with all fields
  • Valid request with minimum fields
  • Invalid request (missing required field)
  • Invalid request (wrong types)
  • Authentication failures
  • Rate limiting behavior
  • Concurrent request handling (if relevant)

Use curl, httpie, or the project's API test suite. Automate what you can, but do at least one manual check of the actual running server.

CLI Verification

After changing CLI behavior:

  1. Run the command with typical arguments
  2. Run with edge case arguments (empty, very long, special characters)
  3. Run with invalid arguments (verify error messages are helpful)
  4. Test piping and redirection if applicable
  5. Verify exit codes
# Test normal usage
my-cli init --name "test project"

# Test error handling
my-cli init  # missing required flag

# Test edge cases
my-cli init --name ""  # empty string

Data Pipeline Verification

After changing data transformations:

  1. Run with sample input data
  2. Verify output schema matches expectations
  3. Check row counts (input vs output)
  4. Spot-check specific records for correctness
  5. Test with empty input
  6. Test with malformed input

Build Verification

The full verification suite (triggered by /verify):

  1. npm test / pytest / cargo test — unit and integration tests
  2. npm run build / equivalent — compilation and bundling
  3. npm run lint / equivalent — style and static analysis
  4. Type checking if applicable (tsc --noEmit, mypy, etc.)
  5. Domain-specific checks from above

All five must pass. If any fails, stop and fix before continuing.

When Verification Reveals Problems

If verification fails:

  1. Don't panic. Read the error carefully.
  2. Check if it's a pre-existing issue or something you introduced.
  3. If you introduced it, fix it before committing.
  4. If it's pre-existing, document it and decide whether to fix now or file it.

Verification Gate Types

Different situations call for different gate behaviors:

  • Pre-flight: Validate preconditions before starting. Deterministic checks only (file exists, env var set, branch clean). Fail fast if not met.
  • Revision: Evaluate output quality, loop back with feedback. Maximum 3 iterations before escalating to user.
  • Escalation: Surface unresolvable issues to the user. Pause work, present options clearly, wait for input.
  • Abort: Terminate to prevent damage. Preserve current state, report what happened and why, suggest recovery steps.

Use pre-flight for anything that can be checked cheaply up front. Use revision for quality gates that may need iteration. Escalate when you've exhausted your ability to resolve. Abort only when continuing would make things worse.

Gotchas

  • "Tests pass" is not the same as "it works." A test suite can have 100% coverage and still miss real-world failures. Always do at least one real verification.
  • Don't skip verification because "it's a small change." Small changes cause production outages too.
  • Browser console errors are free bug reports. Check them.
  • If verification is painful, invest in making it easier. A script that starts the server, runs checks, and reports results saves cumulative hours.
  • Flaky tests must be fixed or quarantined. A test suite that sometimes fails trains people to ignore failures.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.