Vibecoding
sucks.
Loop engineering is how agents earn your trust: build → your tests → an independent reviewer that didn’t write the code → fix, and round again. Pass both gates and it’s a PR. Fail either and it’s quarantined for a human.
$ ptln crank$ brew install partyline-sh/tap/partylinehow it works
the agent builds
In an isolated worktree, same as today. But “it believes it’s done” is the start of the gate, not the end.
two gates run
Your test suite, then a separate adversarial reviewer prompted to find what’s wrong — not to rubber-stamp it.
pass merges, fail is held
Clear both → a PR you can merge. Fail either → quarantined with the reason recorded. The default is to hold, not to ship.
what you're wondering
why not trust the agent’s own check?
An agent grading its own work has a blind spot for exactly the things it got wrong. The reviewer didn’t write the code.
can I see why something failed?
Every step — build, tests, review, decision — lands in a tamper-evident, hash-chained run log. There’s an auditable reason behind every merge and every hold.
a whole backlog at once?
That’s the point. Each change is gated independently, so you review a queue of PRs that already passed — not live sessions.
ship only what passes.
$ brew install partyline-sh/tap/partylinethe back half of the pipeline — see how the plan gets made →