Development

/pr-loop

Full PR loop: branch, test, commit, push, PR, review, fix, merge. Triggers: create PR, finish work.

$ golems-cli skills install pr-loop
Golden
100% best pass rate
36 assertions
9 evals
fixtures

Updated 1 week ago

The full loop. Not "create PR." Not "push and move on." The FULL loop through MERGED.

The Iron Law

MISSION = MERGED
Not "tests pass." Not "PR created." Not "pushed."
Done = PR merged + branch deleted + main pulled.

Parking Is the Violation (2026-06-12)

Etan, verbatim, after a finished branch was left local "awaiting PR approval": "For fuck's sake, why do you need me to tell you to do a PR loop? Fuck."

If the work itself was already user-approved (mission sign-off, approved queue, collab dispatch), that approval IS the permission for the loop. Finishing a branch and parking it "awaiting approval" is the violation — not the push.

WRONG: work approved → branch finished → "awaiting Etan PR approval" → idle
RIGHT: work approved → branch finished → push → PR → review loop → MERGED

"Never commit/push without explicit permission" governs UNREQUESTED work. It is satisfied by the approval that authorized the task. Do not re-ask at the finish line; surface the PR number, not a permission question.

Mechanical enforcement (gen-18 Track 1): parking is now caught by the idle-dwell gate — a finished, approved branch left "awaiting PR approval" is IDLE_SEAT_OPEN_QUEUE. Run /idle-dwell-gate on the terminal turn before ending (bun skills/golem-powers/idle-dwell-gate/scripts/idle-dwell-gate-cli.mjs <transcript|->, exit 3 = FLAG). FLAG ⇒ finish the loop to MERGED; surface the PR number, not a permission question.

Autonomous Agent Mode

If you are running autonomously (no human in the loop), these rules are mandatory:

  1. Never merge with 0 reviews. Wait or invoke bots. No exceptions.
  2. Review wait timer: After invoking reviewers, wait minimum 120s before first check. If no reviews after 5 min, re-invoke. After 15 min with no response, self-merge only if CI is green.
  3. Post to collab with PR number immediately after creation AND after merge (with test counts).
  4. CRITICAL/HIGH comments require reply before merge — fix, or explicit "won't fix because X." Zero replies = cannot merge.
  5. Max 3 review rounds. If round 3 still has new issues, merge and create follow-up ticket. Infinite review loops are worse than shipping with known minor issues.