The interpreter we forgot to sandbox
Hundreds of malicious package versions across three ecosystems, and the uncomfortable fact that installing one runs arbitrary code.

Hundreds of malicious package versions across three ecosystems, and the uncomfortable fact that installing one runs arbitrary code.

Building an AI dungeon master to test a Go chat client, and the bug that kept resurrecting a goblin the player had definitively killed.

Generate-and-hope does not work for codegen. Handing the draft to a repair agent with a fixed toolset that has to make build, test and lint pass.

Tool calling and the reason-act-observe loop explained, and how to define a tool in Go so the schema comes from the type rather than by hand.
