bash
- My drift check said 0 differences. It checked 4 arrays.
My Go checker read a bash model config without running it and said 0 differences. It compared 4 arrays. The fail-closed rewrite found a missing output cap.
- My unit tests never typed `; echo`
Fixing a guard's false positives exposed a hole, and the tighter rule passed every unit case. Then four agents failed one near miss: the command had a tail.
- My guard blocked bash -c. Models write bash -lc.
A regex guard for auto-approved coding agents denied bash -c 'rm -rf build' and allowed bash -lc. The end-to-end case had used the first spelling.
- An exception in one layer deleted a block in another
Letting my agents delete extraction folders made a config generator drop a deny glob. That glob had been the only thing stopping $(echo rm) -rf in one agent.
- Stop docker compose from orphaning anonymous volumes
Run docker compose rm -fsv, then down, in the script's EXIT trap: anonymous volumes go with their containers, named volumes stay.
- "Terminating immediately" took 90 seconds
systemd and a wrapper's EXIT trap sent llama-server two SIGTERMs. Its Ctrl+C-twice exit() ran inside the signal handler and deadlocked in glibc.
- Every way my GPU job queue went quiet
A file-based job queue ran one GPU box unattended for six days. It never crashed. Here are six ways it went quiet, or nearly did, and the fixes.
- The benchmark was talking to the previous server
A Flash-Next-only engine, three modes, and a mode result that was really the previous run's server: how cd && server & made $! lie.
- Designing alerts you'll actually understand at 3am
The first SMART digest was technically complete and humanly useless. re=344 means nothing at 3am. Here's the redesign that does the thinking for you.
- Four Bugs, Three Exit Codes From a Benchmark Orchestrator
Benchmark orchestrators that loop over branches for hours. Four bash bugs that made them look finished.