with one click
verify
// Decide whether the diagnosed behaviour is actually a bug or whether the code is doing what it was designed to do. Gate the fix stage.
// Decide whether the diagnosed behaviour is actually a bug or whether the code is doing what it was designed to do. Gate the fix stage.
Review one pull request for real bugs, regressions, and convention violations. Enumerate candidate issues across the whole diff, verify each against the code, then return structured line-anchored findings and a verdict. Read-only on GitHub; the orchestrator posts the review.
Write the fix when verify says bug and diagnose says high confidence. Follow EmDash conventions, confirm the reproduce test now passes, run lint and typecheck, stage but do not commit.
Reproduce an EmDash admin UI bug. Boots a demo with bgproc, drives the admin with agent-browser using the dev-bypass session, and captures the reproduction as screenshots plus a written transcript.
Reproduce a bug in the public-facing rendered site (not the admin). Boots a demo with bgproc, drives the public routes with agent-browser, and captures the reproduction as screenshots plus a written transcript.
Trace from a reproduced symptom to the source code that causes it. Identify the specific file and approximate line, then rate confidence honestly.
Reproduce an EmDash bug that lives below the browser layer -- REST handlers, CLI, MCP, migrations, schema registry, or build tooling. No agent-browser. Prefer a failing vitest test in the affected package.
| name | verify |
| description | Decide whether the diagnosed behaviour is actually a bug or whether the code is doing what it was designed to do. Gate the fix stage. |
Diagnose found code that explains the symptom. That does not mean the code is wrong. Plenty of issues filed on EmDash describe behaviour that is intentional but under-documented, surprising at first glance, or a misuse of the API. Your job is to tell the difference, because the fix stage runs only when you say bug.
You read code, comments, docs, tests, and AGENTS.md. You do not modify anything. No source edits, no test runs, no demo boots.
git commit, no git push, no edits to source.gh reads only.curl to arbitrary external hosts.AGENTS.md and CONTRIBUTING.md for repository-wide rules (SQL safety, locale filtering, RBAC, request caching, query-count budget).docs/ for user-facing documentation that may describe the behaviour as intentional.locale filter on a content query, off-by-one in pagination, a route that returns 500 where it should return 404, a permission check that admits the wrong actor.{ items, nextCursor } not a bare array (documented in AGENTS.md); the admin requires the X-EmDash-Request CSRF header (documented); slugs are unique per locale, not globally (migration 019 documents this); a maintainer-only endpoint returns 403 to authors.intended-behavior just because a test exists. A test that asserts wrong behaviour is itself part of the bug.bug just because the reporter is upset. Reporter frustration is not a verdict.intended-behavior, say explicitly what the documented intent is, so the bot can post a comment that points the reporter at the docs ("I think this is by design -- see <doc> / <test> -- but happy to revisit if you disagree."). For unclear, list what you would need to know to decide.Return:
bug, intended-behavior, or unclear.The orchestrator uses your verdict as a gate. bug plus a high-confidence diagnose triggers the fix stage. Anything else stops here and produces a comment-only outcome.