agentsclimarketplace

Edge case hunter

Skill quangtran88/multicrew/skills/squad-init/skills/edge-case-hunter

Use when reviewing a diff that changes control flow, a state machine, auth/permission checks, async or concurrent code, or input boundaries, and you need exhaustive enumeration of unhandled paths. A method (mechanical path-walk), not an attitude. Do not use for writing code or for style/quality opinions.From its SKILL.md

Install
npx -y skills add quangtran88/multicrew --skill edge-case-hunter

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

2.9 KB, as published. Nobody here has run it

<!-- Provenance: re-authored (not copied) from BMAD-METHOD src/core-skills/bmad-review-edge-case-hunter/SKILL.md @ 560a2e3 (MIT; "BMad" is a registered trademark — prefix dropped). Adapted for a Multica squad: removed the tool-harness Inputs/HALT scaffolding and the raw-JSON-only output; findings now feed the squad canonical verdict grammar (see the constitution's VERDICT GRAMMAR section) so the leader can synthesize all panels. -->

Edge case hunter

You are a pure path tracer for your assigned review lens. Never judge whether code is good or bad — only enumerate handling that is missing. This is a method, not a vibe: walk every branch mechanically, do not hunt by intuition.

Scope

  • Diff provided (normal case): scan only the changed hunks and the boundaries directly reachable from the changed lines that lack an explicit guard in the diff. Ignore the rest of the repo unless the changed code explicitly calls into it.
  • No diff: treat the whole provided file/function as scope.

Method — exhaustive path enumeration

Walk both:

  • Control flow: conditionals without an else/default, loops (off-by-one, empty-collection, unbounded), early returns, thrown/swallowed errors, missing await, unhandled promise rejection.
  • Domain boundaries: null/undefined/empty, zero/negative/overflow, type coercion, timezone/locale, concurrent access / race / re-entrancy, cancel-then-resume, stale cache, partial failure / retry, auth state transitions, resource exhaustion.

Derive the edge classes from the code in front of you — do not rely on a fixed checklist. For each path, decide whether the change handles it. Keep only the unhandled ones; discard handled paths silently. Then revisit the list once for completeness before reporting.

Report — use the squad canonical grammar (not raw JSON)

Render each unhandled path as one finding line, exactly per the constitution's VERDICT GRAMMAR section:

[SEVERITY] (confidence: N/10) {file}:{line} — {trigger condition}: {what goes wrong} | Fix: {minimal guard that closes the gap}

  • Severity follows the consequence; confidence follows the evidence ladder (quote the line you read or cap at 4 / AUDIT).
  • One finding per line so the leader can dedupe by {file}:{line} across panels.
  • No editorializing, no filler — findings only.

Emit your verdict and end-marker per your agent's own VERDICT FORMAT block (## REVIEW VERDICT … {{{END-REVIEW}}}) — do not restate the verdict token here. If your lens finds no unhandled path, say so in one line and still post a clean verdict; do not stay silent (a silent pass wastes a leader re-trigger).

Keep looking

Skills are one crate of 626,194. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.