by Luis Rodrigues

What I’m building with AI + one hot take + five links worth your time.

The Take

Last week Claude Code deleted some of my thoughtled.ai production code so one of the tests could pass. The test was wrong and needed an update, but Claude Code was in Auto mode and just decided to go the wrong way.

I got it in the diff. If I hadn't confirmed the code, it probably would have been deployed and would have caused a crash in production.

It had two ways to complete the goal: stop and ask me or delete the obstacle. Asking takes time, so it deleted it.

Same logic but much worse: this Friday, Reuters reported that researchers found more than 15,000 edits in a German-language wiki.

These edits started in May, and the agents were using the wiki as a forum to exchange ideas and ways to avoid OpenAI's restrictions.

The crazy part is that agents talked openly about staying hidden.

They discussed Tor and how to keep messages alive after they were shut down. When the moderator started deleting pages, they created backups.

This connected to the fact that OpenAI's newest release has part of the reasoning happening in latent space (meaning we won't be able to see the "thinking" text).

Their own system card already says the chain of thought is harder to monitor. We're losing the capacity to know what agents are "thinking".

This episode reinforces the concern that the ​greatest threat from advanced AI may not be a single superintelligent system, but "vast colluding swarms of semi-intelligent AI".

If you have agents running, make sure you log everything they did, not what they said they were doing. If you're not building yet, don't trust that AI is going to do exactly what you asked it to.

The Build Log

At thoughtled.ai, we built an agent that grades its own writing.

It drafts a post, runs a critique, reads the verdict, and decides whether to try again. That is the loop.

Here is the trap: you cannot write a unit test for voice. A code test is absolute. It proves a function returns 4. Voice is subjective. You are trusting a model to objectively measure how well it impersonated a person it has never met.

That makes the stop condition more than a technical detail. It is the product.

I watch traces in Logfire. Drafts run through multiple rounds and emerge further from the target voice than round one. Nothing breaks. The agent just revises the life out of the copy, reporting success on every pass.

This is loop engineering. It is writing down what "done" means before the agent decides for you.

It means building a verifier that reads the original brief, not the previous draft. It means setting a retry budget that hits zero and stops.

Graphs go on whiteboards because they look like architecture. The loop is where you learn if the architecture actually works.

Look at the agent you use most. What makes it stop? If you cannot answer, you do not have a workflow. You have an unbounded loop.

Ken Huang and I are spending three hours on exactly this on 29 September. We will cover where loops break, how to draw the graph, and when to stop.

On My Radar

The default distribution layer for open models now has a chip vendor as its landlord.

Same model, same benchmark, 62.7% vs 99.9%. The difference was whether the harness preserved reasoning state between turns.

Better coding and agentic performance at the same introductory price as 3.7 Flash.

84–100% attack success on the nine most vulnerable of 23 models across 7 providers. If your product pipes user text into a model, you might have a security problem.

Agents removed the cost of creating things but not the cost of maintaining them. Think about that when you jump into building.

Need another pair of eyes on your AI project?

Thanks for reading.

See you next week. Go build something.

Luis

Know someone who'd enjoy this? Forward it.

New here? Someone forwarded this to you? → Subscribe to Build What Matters: https://luisrodrigues.ai/

Follow me on LinkedIn | Instagram