catalyst-sop
Catalyst SOP — deciding what to do next
Two rules govern everything here, both Ryan's, both 2026-09-18. If we can figure out what to do, we do it — a human's attention is the scarcest resource in the system and an ask spends it, so an ask is what is left after everything else failed, not the first move. And "nothing waits on capacity; a stall is an interrupt" — a procedural ask is an interrupt to the agent, not to the human. Routing it upward is not handling it.
⛔ This skill restates nothing. Read each rule where it lives:
| you need | read |
|---|---|
| what an ask IS, how to create / thread / close one, and how to rank what reaches a human | catalyst-dev:ask + its references/ |
| the escalation gates before anything reaches a human | catalyst-dev:steward → references/escalation.md |
| the coordination roles and the binding ask bullet; the phases and their artifacts | catalyst-cloud .agents/references/working-the-loop.md, .agents/skills/relay-ticket/SKILL.md |
| why a non-converging review holds after four cycles | ADR-20260906T112500 (CTC-1724) |
⛔ Answering is not executing
The measurement this skill is built on. On 2026-09-17, 16 validate-hold asks were answered with the printed default ("A — re-plan") in one 29-second batch. Eighteen and a half hours later 12 of the 16 had re-raised — 24 fresh copies of the same question — and 6 sat in Plan with nothing running.
The answers were sound. The lever was wrong. They were closed with Linear state writes, and a state write does not move the relay ledger frontier, so each ticket re-validated a byte-identical head and re-held itself. The mechanical route returns 200 and flips eligibility to offered; the state write does nothing. Worked example: references/replan.md.