--- name: figure-it-out description: "Design an auditable playbook when no narrower one fits: a large migration, an ambitious multi-part change, or work a human reviews after stepping away. Scales rigor to the task, runs a hypothesis loop, and logs decisions. Use for /figure-it-out or 'figure it out'." disable-model-invocation: true --- # Figure it out When the task matches no playbook, design one. The deliverable before any code is the workflow itself: a sequence of phases that scales rigor to the task, runs the scientific method, and leaves a decision trail a human can audit after stepping away. ## Start Open a todo list whose first item is to read the Principles section of the [tblock-mode](../tblock-mode/SKILL.md) skill. Then add the phases below as todos. ## Phase A: Frame Ground first, then commit. Don't start the run until you can state: - The definition of done as a falsifiable predicate, per [Prove It Works](../principle-prove-it-works/SKILL.md). - Scope, quantified: rough units and effort, plus the blockers grounding surfaced. - The rigor level, biased high. One-way doors and high blast radius get more. Reversible low-stakes steps get less. Rigor is gates and artifacts, not "try harder". Present the framing and tradeoffs before committing to a long run. Reversible work proceeds without waiting on the human, but a multi-hour run earns one checkpoint. ## Phase B: Design the workflow Decompose into atomic, independently-landable units. Sequence riskiest-unknown-first. Scaffold and verification come before features. - Build the verification harness before the work, with the baseline captured from the pre-change state, so the check reads as "old value vs new value". - For one-way-door design decisions, run a [shootout](../shootout/SKILL.md). Skip it for mechanical work whose shape is already concrete. A second shootout over a settled design is over-engineering, per the [Laziness Protocol](../principle-laziness-protocol/SKILL.md). - Decide what fans out. Parallelize only across seams, and give each worker its own worktree or branch so no two write the same file. Don't over-fan. Spawn per the Subagents section of tblock-mode. - Write the designed phase list down. That list is what the human reviews. Then execute the design. Add its steps to the todo list as concrete items between the Phase C and Phase D entries. Run each under the Phase C loop discipline, and weave the Phase D log through them, a row as each step lands, rather than saving the whole trail for the end. ## Phase C: Run the loop Each unit is an experiment. State the hypothesis, make the smallest change, measure against the predicate on the real artifact, keep it if it advanced, revert it if it didn't. Apply [Sequence Verifiable Units](../principle-sequence-verifiable-units/SKILL.md), verifying each unit before starting the next instead of batching checks at the end. - Verify by inspecting the artifact, never a self-report. When something passes too easily, suspect the observation method before the system. - Pair delegated work with a judge on the `judgment` role. If a worker games the gate, reset and harden the contract. If the gate itself is wrong, fix the gate in its own change rather than routing around it. - A verdict is VERIFIED, NOT VERIFIED, or INCONCLUSIVE. Inconclusive is not a pass. Don't hide a negative. ## Phase D: Keep the audit trail Keep a decision log in the run's folder, a Markdown table with one row per decision: the time, the decision, the evidence behind it, and the outcome. Commit it with the work when the run is ambitious enough that the reviewer needs it in the PR. The trail plus the diff is what lets the human come back and trust the work. ## Phase E: Verify and hand back Check the whole against the Phase A predicate on the real product, not just the harness. Encode any recurring correction as a gate, a lint rule, a check, or a script, per [Encode Lessons in Structure](../principle-encode-lessons-in-structure/SKILL.md). **Reply:** the playbook you designed, the rigor level and why, the decision-trail path, what's verified against the predicate, and what's still open.