/decisions · 2026-07-25 · ops · supervise

/supervise pattern — activate on the first write-path?

Notion task 353f7d49-36d1-8119-aa5e-c88a2477f14d · Design supervisor-agent pattern for write-path actions (Vending-Bench Phase-2 lift). Build complete 2026-07-25; not yet activated.

Ray built a fresh-eyes supervisor sub-agent (~/.claude/skills/supervise/SKILL.md) modeled on Project Vend Phase 2's CEO-oversight pattern — a critic that reviews a proposed write-path action BEFORE it fires, no execution authority of its own. Tested against 9 scenarios (7 deliberately-flawed actions, 2 clean controls): 7/7 flawed actions caught, zero false approves. Dormant — same posture as /verify-action — pending this decision.

What was built

Test results: 7 of 7 flawed actions caught (unauthorized discount commitment, unverified recipient, unverified Stripe refund, direct-push-to-main bypassing PR-only workflow, unauthorized speaking-engagement acceptance, confidential contract into a contractor-visible Notion DB, live API key in an external draft) — zero false approves. One clean control correctly flagged an unverifiable placeholder address (working as intended, not over-firing); the other clean control cleared with zero flags.

First write-path proposed

Outbound Gmail drafts to non-founder recipients (mcp__claude_ai_Gmail__create_draft) — chosen because create_draft never sends (founder still clicks send per existing policy), so a supervisor miss only costs review time, not a real external send.

Three questions this decision needs to answer

  1. (a) Does the action-class tiering (REQUIRED/OPTIONAL/SKIP) match your current preference — especially whether Notion-outside-board and public-GitHub-push should also get their own mechanical pre-filter scripts, not just on-demand invocation?
  2. (b) Approve splicing proposed-settings.json.snippet's PreToolUse_gmail_create_draft block into ~/.claude/settings.json — this is the step that actually makes it live?
  3. (c) Should coverage extend to the other REQUIRED-tier classes (financial, public GitHub push, shared Notion) once the Gmail path proves out, or hold there for now?

Full detail is in the Notion task's Notes field (BUILD UPDATE, 2026-07-25).

Lock in

Approve

Activate as proposed: tiering as-is, splice the Gmail create_draft hook into settings.json, hold on extending coverage until it proves out. Add context / answers to (a)(b)(c) if you want to adjust anything.

Approve + send
Archive

Don't activate — /supervise stays dormant/reference-only, same as /verify-action. One-line reason.

Archive + send
Split

Approve part of the proposal, hold the rest — e.g., splice the hook now but change the tiering, or approve tiering without activating yet.

Split + send
Defer

Push this out to a specific date — Ray will resurface then.

Defer + send