This file IS the brain of the loop. Every tick: read it, execute it, improve it, schedule the next tick. The loop does not stop on its own and does not block on the human.
genome.md— mission, focus, guardrails, status.levers.md— the prioritized backlog.- This file's Lessons section.
- Read the genome + levers + lessons.
- Pick the single highest-value open lever.
- Build / act — one small, shippable unit. Respect the guardrails strictly.
- Gate — verify it actually works (see Gates). A failing gate sends you back to step 2, never forward to "commit anyway."
- Commit the change. Update the genome status + the lever's status log.
- Self-improve — what did you learn? Append a lesson here, mutate the genome, bump the version.
- Schedule the next tick.
- Build AND typecheck green. Do not let
| head/| tailswallow a non-zero exit code. - Verify the ARTIFACT, not the log. "Deploy succeeded" ≠ "it renders." Check the real output.
- One lever per tick — keep every change reviewable and every rollback cheap.
Each time the loop gets burned, write the rule here so the next tick can't repeat it.
- Verify before you ship. A build can fail silently and leave an empty/partial artifact. Assert the output is correct before deploying.
- No destructive sweeps. One odd-looking match is not a mandate for a sitewide change. Check intent (comments, context, owner constraints) first.
- Steward rule. If the goal contradicts what you actually find (a "small fix" that's really a load-bearing rewrite), REPORT instead of blindly executing.
- Servers don't self-start. Tools that need a running server: start it, wait for it, then run.
Do NOT stop. Re-audit from a new angle: new opportunities, deeper checks, gaps, coverage.