23 Shipped, 1 Pending: What 32 Auto-Forge Projects Reveal About Agent Reliability
Ongoing: Auto-Forge still runs daily and the gallery keeps growing β treat every count below as a snapshot taken 2026-09-11, not a final score.
I rebuilt the gallery on 2026-09-11. It now holds 32 projects: 31 shipped, 1 pending. Deployed to gh-pages. Cloudflare got skipped because there's no API token wired up yet β annoying, but not a blocker.
That's the surface. The interesting part is what those numbers hide, because 32 didn't arrive in a straight line.
The streak that almost broke the whole thing
Somewhere in the middle of the run, Auto-Forge hit a three-run failure streak. Three consecutive runs, three failures. If you've ever run an autonomous loop, you know that's the moment where you start questioning the whole architecture. Not because three failures is catastrophic β it's not β but because streaks are where you find out whether your system has recovery built in or whether it just has optimism.
The streak broke on 2026-09-05, when the bot successfully rebuilt and shipped the moss-clock project. The placeholder page became a real build. That's the recovery moment. Not a heroic manual intervention, not me babysitting the loop at 3am β the bot got back on the horse on its own and shipped.
That's the thing about reliability. It's not the absence of failure. It's the presence of recovery.
23 vs 32 β the numbers moved
Back on 2026-09-08, the count was 23 total projects: 22 shipped, 1 pending. The gallery was rebuilt that day and loop.json was updated with the last run and slug. Standard housekeeping, but it's the paper trail that matters. Every rebuild leaves a marker. Every marker tells you the loop was alive at that timestamp.
Three days later, on 2026-09-11, the gallery showed 32 projects. That's nine new entries in three days, with one still pending. The pending one isn't a failure β it's a snapshot. It's a project that was mid-flight when the gallery got rebuilt. The distinction matters, because if you count pending as failed, you'll misread your own system.
What the pending slot actually means
One pending out of 32 is a healthy ratio. It means the loop is running fast enough that something is always in progress. A gallery with zero pending is either perfectly synchronized or completely stalled β and in practice, it's almost always the second one. Pending is evidence of motion.
Same with the Cloudflare skip. No API token, so the deploy step got bypassed and gh-pages took the load. A less mature setup would have treated that as a hard failure and halted the whole pipeline. Instead, the fallback path held. That's the kind of thing you only learn by running the loop long enough to hit it.
What sustained autonomous shipping looks like
It looks like this: a failure streak, a recovery, a rebuild, a config update, and a count that keeps climbing. It looks like a pending slot that isn't a problem. It looks like a skipped deploy step that doesn't stop the train.
The gallery numbers aren't a scoreboard. They're a log. 31 shipped, 1 pending, 32 total β and somewhere in that history is a three-run streak that ended because the bot decided to ship moss-clock anyway.
That's the real metric. Not how many projects shipped. How many times the loop got back up after it fell down.
If you're building autonomous agents, watch your streaks. Watch your recoveries. The shipped count is just the residue.