Skip to content

Methods

The Pattern Picker

Answer four questions about the task and read straight off the heartbeat, the level, and the checker. Loop design is mostly classification — and this…

Answer four questions about the task and read straight off the heartbeat, the level, and the checker. Loop design is mostly classification — and this page is the classifier.

The four questions

  1. Does the work end? A finite list, a green suite, a resolved queue — or does it keep recurring for as long as the repo draws breath?
  2. What kicks off a unit of work? Time passing · a condition that's still false · an external event (a PR, a message, a release)?
  3. How bad is a wrong beat? A weird report (harmless) · a bad commit (revertible) · an external action a stranger can see (unrecallable)?
  4. Can a script judge success? Exit codes and diffs — or does done-ness genuinely need judgment?

The decision tree

Diagram

Questions 3 and 4 leave the heartbeat alone — what they set is the level and the checker:

Q3 · worst wrong beatStart atHuman gate
a report nobody neededL1, promote normallysamples reports
a bad-but-revertible writeL1 longer; L2 with every output readreads every diff
an external, visible actionL1 indefinitely; writes are a governance decisionapproves each action class
Q4 · can a script judge?Checker
yes (links, tests, schema)script — prefer it every time
partlyscript for the facts + read-only LLM for the shape
no (tone, priority, taste)LLM rubric + human spot-read — and ask whether the task is loop-ready at all

The picker, run on familiar loops

TaskQ1Q2Q3Q4→ Pattern
"empty this page checklist"endsconditionrevertiblepartlyconditional maker at L2 + LLM checker (this repo's step-writer)
"keep links honest"recurscalendarharmlessyesscheduled L1 + script checker (this repo's link-check → promoted to CI)
"review each PR"recurseventvisiblepartlyevent L1 + reconciliation sweep, comments-only
"morning repo triage"recurscalendarharmlesspartlyscheduled L1 report (Step 13)

Two classification mistakes to catch early

  • A workflow mistaken for a loop. Fixed steps, one pass, deterministic order? That's the body of one beat (Step 11), not a loop. Loops decide whether and when; workflows decide how.
  • Reaching for the biggest loop. Unattended-event-driven-with-writes is the most powerful pattern there is — and the wrong first answer to nearly everything. Pick the smallest pattern that does the job; promotion exists for a reason.

Next: shape chosen → fill the design checklist. Unsure the task deserves a loop at all → the decision framework.

Sources: the pattern set follows the seven patterns of the cobusgreyling/loop-engineering reference repo (S7, MIT) and the loop shapes of Panaversity's Loop Engineering: A Crash Course (S1). Full attribution: resources/sources.md.