Almost exactly one year ago, I was building Eloquence — our visual language for data analysis — and Claude Code had just been released. Like most builders that month, I was giddy. An agent that could write code with me, read my files, run my commands. The future, finally, felt within arm's reach. So I put it to work. And then I started waiting. Not for long. Ten seconds. Forty. The agent was searching the codebase for something — a function name, a usage, a reference. Find. Grep. Read. Find. Grep. Read. Sometimes it found what it was looking for. Often it didn't, and tried again. Sometimes it convinced itself it had found something it hadn't, and confidently changed it. The next morning I'd discover the damage: a renamed function with three forgotten callers, a variable updated everywhere except inside a callback two levels deep, a "fix" that introduced a worse problem than the original. I didn't blame the model. The model was brilliant.…