Topic guide

⚠ Cost and failure log

This is the part of the site that would be easiest to leave out. Each post here is a night or a month where something went wrong, written up with the timeline, the cause and the change we made, using the logs and the git history rather than memory.

The September report is the monthly summary format. The database-is-locked post is one Friday evening: a concurrency change shipped at 18:53, 304 lock errors, seven abandoned chats and 265 repeat alerts, and the three-line fix, with a reproduction you can run. The migration post is moving every bot to a new Mac, including the time we installed onto the wrong one.

304lock errors in one evening
3lines of code to fix it
1wrong Mac, caught

Read them in this order

  1. September 2026 Bot Report: What Ran, What Broke, What It CostA monthly log for 17 Claude Code bots in a real company: the US$100 bill, the hours, and four things that broke in September 2026, with what we changed.
  2. "Database Is Locked": The Night Our Support Bot Gave Up 7 TimesOne uncommitted SQLite write and a Friday deploy: 304 "database is locked" errors, 7 chats abandoned. The git log, a reproduction, and the fix.
  3. Migrating Bots to a New Mac: launchd, State Files and the Wrong MacThe checklist we used to move 17 always-on bots to a shared Mac mini as a LaunchDaemon, the timeline of the day, and the laptop we installed on by mistake.

Other topics

⌘ Claude Code in a real business✓ Slack bots and approval gates▦ Google Sheets as a database for bots☏ Support automation