The model that wouldn't be forced
My structured output worked by forcing Claude to call a tool that didn't exist. Opus 5.5 stopped playing along, and the fix was to stop doing the trick.

My structured output worked by forcing Claude to call a tool that didn't exist. Opus 5.5 stopped playing along, and the fix was to stop doing the trick.

I asked an agent to diagnose a failing pipeline and leave it broken. It fixed it, then wrote a commit message about something it hadn't done, which bothered me a lot more than the fix.

The tool had comments on under ten per cent of its lines and ninety pages of documentation built into the binary, and I'd argue that was one decision made for two very different readers.

Forty-two comments telling a checker to stand down. I went through them one at a time to see what each was actually asserting, and some of them were wrong.

Publish an OpenPGP certificate a researcher can encrypt to, and read what they send, without a private key ever existing in your process.

How big is a tool that does nothing? For go-tool-base it was 81 MB, and a comment in the code said it shouldn't have been.

I wrote my own OpenPGP packet code, then deleted the lot to prove I needed it. The reason I'd given turned out to be nonsense, and there was a better one waiting for me.

A commit landed a month before I noticed it. By the time somebody told me, two of my own tools had already written workarounds for it without mentioning it.

Ten minutes, a throwaway directory and no cloud account, to find out what a release signature actually is before you decide whether you want one in your pipeline.

A wedding-photo culler ran out of memory compiling an LLM SDK it has never once called. The release had been running for thirty-eight minutes at that point.
