agentsclimarketplace

Run the gate

Skill NasserAlbusaidi/ship-gate/skills/run-the-gate

Fresh-context spec review before implementation for Rihla money/rules/routing/schema changes. Spawns TWO parallel zero-history Opus subagents per round — a rubric reviewer (7 verification principles) and an orthogonal-axis adversary (off-map regressions, derived surfaces, l10n pairs) — applies the union of P1 findings, and re-runs until both verdicts are clean in the same round. Use before writing code that touches BalanceCalculator/MoneySerializer, firestore.rules or Cloud Functions auth, app_router.dart / deep-links / back-guards, or any field-name/schema change with both a read-path and a write-path. Use when asked to "run the Gate", "gate this spec", or "fresh-context review".From its SKILL.md

Install
npx -y skills add NasserAlbusaidi/ship-gate --skill run-the-gate

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

2 things to look at

  • 19 days oldThe repository was created 19 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 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

4.5 KB, 922 tokens by cl100k_base, as published. Nobody here has run it

Run the Gate

The in-session author cannot review the in-session author. A spec written this session carries this session's blind spots straight into the implementation. The only fix is a reviewer with zero session history — it starts from the code, not from your reasoning, so it structurally catches what your own checklist cannot.

This skill replaces /codex (retired) with a fresh-context Opus subagent as that reviewer.

When this is mandatory

Run BEFORE writing code when the change touches ANY of:

  • BalanceCalculator / money math / MoneySerializer
  • security/firestore.rules or Cloud Functions auth/validation
  • routing — app_router.dart, route tree, deep links, back guards
  • a schema / field-name change with BOTH a read-path and a write-path

Outside these (a one-sentence diff, no money/route/schema/rules surface): skip the Gate, just do it. Don't burn a review round on a typo.

The loop

  1. Write the spec to a filedocs/plans/<YYYY-MM-DD>-<topic>.md. While writing, run the 7 verification principles yourself and report results out loud. The embedded check is the reviewer's rubric, not a substitute — but a first pass narrows what the reviewer hunts for.

  2. Spawn TWO reviewers in parallel — both fresh Opus subagents with zero history, launched in a single message so they run concurrently:

    • Rubric reviewer — prompt: the full contents of reviewer-prompt.md (this skill's dir) + the absolute path to the spec file. Verifies the spec's own claims against live code.
    • Orthogonal-axis adversary — prompt: the full contents of adversary-prompt.md + the same spec path. Hunts what an on-the-map review structurally misses: regressions on coupled axes the spec doesn't cover, and derived surfaces (share cards, exports, activity rows, l10n pairs) the change silently reaches. Why two: #857 — a typography spec passed TWO single-reviewer rounds while a share-card cover-band caption needing AR translation slipped through; the builder caught it, not the Gate. A same-rubric reviewer re-walks the author's map; the adversary walks off it.
    • Both: Agent, subagent_type: general-purpose, model: opus. Each reads ONLY the spec + live code — neither sees this conversation NOR the other's output. That double isolation is the point; do not paste your reasoning or one verdict into the other's prompt.
  3. Apply the union of [P1]s, re-spawn. Rewrite the spec to resolve every [P1] from BOTH reviewers. Then spawn a new pair — fresh Agent calls, NEVER SendMessage to continue an old one. Continuation re-imports the context you're trying to escape; each round must start from zero.

  4. Stop when a round's union has no [P1]s — both the rubric reviewer AND the adversary must come back clean in the SAME round. ~2 rounds is typical. A 3rd round means the spec was over-scoped — split it and gate the pieces.

Non-negotiables

  • One reviewer = one fresh Agent call. Round 2's pair must not know round 1 existed, and neither reviewer in a round sees the other's verdict.
  • A round is clean only when BOTH verdicts have zero [P1]s — a clean rubric verdict alone does not end the loop.
  • Pass the spec's file path and make the agent read it — review the spec against code, not your summary of the spec.
  • A green test suite is NOT the Gate (worked example #185 in docs/SPEC-VERIFICATION.md: rules suite was green while the client write violated the rule). "Tests pass" never ends a round.
  • The reviewer's findings are merge/spec claims, not gospel — but [P1]s block implementation until resolved or explicitly refuted against code.
  • Convergence pressure — momentum, prior approval, sycophancy — is exactly what this interrupts. Treat each round as v1.

Full reasoning + scar-tissue worked examples: docs/SPEC-VERIFICATION.md. Trigger rationale: The Gate in CLAUDE.md.

What ships with it: 2 files

6.5 KB alongside SKILL.md

Keep looking

Skills are one crate of 326,758. 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.