agentleFS
nledfordnledford/engineering-review-board/skills/review-verification-protocol/SKILL.md

review-verification-protocol

Skill11 starsChanged 10 days agoMITView on GitHub

Mandatory evidence gates for review findings. Load with code-review and any specialist review skill before reporting findings, or read/apply manually if the runtime hides this skill.

The file

Show its rules and text

We split this skill into the rules it gives an agent

14 rules. About 0 are common, 11 are distinctive, and 3 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈11

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 3

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Use this protocol before reporting any review finding.

    line 9
  2. Distinctive:

    Read the actual changed code or document, not just a summary.

    line 28
  3. Distinctive:

    Search for usages before claiming something is unused, dead, or unreferenced.

    line 29
  4. Distinctive:

    Use local code navigation for references, implementations, call relationships, and diagnostics when semantic evidence helps.

    line 30
  5. Distinctive:

    Check whether validation, authorization, error handling, cleanup, or behavior coverage exists at a higher layer, middleware, caller, …

    line 34
  6. Distinctive:

    Consider intentional design documented in comments, AGENTS.md, docs, migrations, feature files, or existing architecture.

    line 38
  7. Distinctive:

    Verify framework/library syntax against current docs when the finding depends on version-sensitive APIs.

    line 40
  8. Distinctive:

    Unused or dead code: Search tests, generated contracts, trait impls, macros, serde names, SQLx mappings, route registration, CLI recipes, …

    line 50
  9. Distinctive:

    Test weakness: Check whether another layer already covers the behavior.

    line 52
  10. Very specific:

    Concurrency, async, and resources: Check task lifetimes, cancellation, lock scopes, .await points, transactions, handles, pools, …

    line 58
  11. Distinctive:

    Documentation, workflow, or agent guidance: Check whether the changed doc is authoritative, linked from the right index, concise, and free …

    line 60
  12. Distinctive:

    Every finding passed the hard gates.

    line 66
  13. Distinctive:

    No finding is style preference, unverified speculation, or unrelated future work.

    line 69
  14. Very specific:

    If uncertain, read more context, ask a Question, downgrade the severity, or remove the finding.

    line 74

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “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

Review Verification Protocol

Use this protocol before reporting any review finding. It is the evidence gate for code-review and every specialist review skill. Skipping it creates false positives that waste reviewer time and erode trust.

Hard gates per finding

Apply these gates once per finding. If a gate fails, omit the finding, downgrade it, or rephrase it as a question. Do not ship soft accusations.

StepWhat you doPass condition
1. AnchorRead the full enclosing function, module, test, migration, recipe, config, or doc section, not only the diff hunk.You can cite the file path and line range, symbol, module, test, or behavior being judged.
2. EvidenceSearch/read enough surrounding code and docs to prove the issue is real and not handled elsewhere.You have an artifact: file:line citation, command output, search result, relevant absence after search, or explicit “not run because ...”.
3. ImpactExplain how the issue affects behavior, maintainability, security, tests, operations, or architecture in the repository being reviewed.The finding is not merely personal style or an implausible hypothetical.
4. SeverityAssign severity using code-review severity calibration or the user-requested review vocabulary.The label matches impact and urgency; unrelated net-new nice-to-have work is not a blocker.
5. RemedyName a concrete fix or next step.The author can act without guessing what you want.

Required checks before flagging

  • Read the actual changed code or document, not just a summary.
  • Search for usages before claiming something is unused, dead, or unreferenced.
  • Use local code navigation for references, implementations, call relationships, and diagnostics when semantic evidence helps. Use direct reads/search for exact strings, docs, config, logs, fixtures, and generated assets, and repository commands for tests, builds, or other validation.
  • Check whether validation, authorization, error handling, cleanup, or behavior coverage exists at a higher layer, middleware, caller, transaction boundary, database constraint, generated contract, test harness, or runbook.
  • Distinguish incorrect behavior from a valid different style.
  • Consider intentional design documented in comments, AGENTS.md, docs, migrations, feature files, or existing architecture.
  • Verify framework/library syntax against current docs when the finding depends on version-sensitive APIs.

Issue-type prompts

  • Missing behavior, validation, or error handling: Confirm the missing case can occur and matters to a supported user, operator, API, or domain flow.
  • Authorization, privacy, or security: Identify the trust boundary, actor, data class, and route/command/path. Use any available repository security process and sanitized evidence; never expose secrets.
  • Unused or dead code: Search tests, generated contracts, trait impls, macros, serde names, SQLx mappings, route registration, CLI recipes, and docs links.
  • Test weakness: Check whether another layer already covers the behavior; prefer behavior and invariant gaps over implementation-detail assertions.
  • Refactor or architecture concern: Name the boundary, ownership, or responsibility that moved, blurred, or coupled.
  • Performance or scalability: Confirm a hot path, unbounded input, query-shape change, repeated allocation/I/O, or resource contention risk.
  • Concurrency, async, and resources: Check task lifetimes, cancellation, lock scopes, .await points, transactions, handles, pools, backpressure, and cleanup.
  • Documentation, workflow, or agent guidance: Check whether the changed doc is authoritative, linked from the right index, concise, and free of conflicting duplicate policy.

Before submitting findings

  1. Every finding passed the hard gates.
  2. Findings use the format and severity vocabulary from code-review unless the user requested a different format.
  3. No finding is style preference, unverified speculation, or unrelated future work.
  4. Validation status is truthful: passed, failed, not run, and why.
  5. Re-reviews verify previous fixes only unless a fresh full review was requested.

If uncertain, read more context, ask a Question, downgrade the severity, or remove the finding.

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.