Serious coding with LLMs. Lab notes 2026-09-27: Codex succeeds, Claude reviews the result.

“The horror! The absolute horror!”

To find out more about the reality of all the (generally overblown) promises about LLMs, I have been doing a very serious experiment on the poster child for Generative AI: coding. I wrote one critical post, and I am close to writing up my conclusions, but I am hitting some work that I have to do first before I can publish that (e.g. create a demo video which is a lot of work, and before that I need to finish some final functionalities and improvements.

This is Lab Note #2. Some basic explanations about my setup are in Lab Note #1.

Something happened yesterday. While being halfway the phases of implementing a refactor of the undo/redo setup and approaching the end my limit, out of the blue my Codex limit got reset. Jay! With that new limit Codex (GPT-6 Astra xhigh) was able to complete the implementation this morning.

Short note what I was doing: I was busy getting Codex to implement an improved auto-layout in my visual modelling app, when I found out about an undo/redo issue (behaviour bug), behind which lurked an architectural issue: the implementation of undo/redo was very vulnerable to coding errors and needed a refactor to improve its structural robustness. In my book, I fix that architectural issue first instead of fixing the bugs that a lack of that architectural structure has made easy to appear. This is not something an agent will always do or suggest, they may happily keep on adding bug fix after bug fix. In this case, it was Codex that actually pointed out that this was an issue when I asked it to analyse the cause of the bug.

When Codex finally finished with the refactor today, a short manual test went fine. So, problem solved and move on, right? Wrong.

The next step I did was to let Claude (Opus 5.5 at xhigh) do a review. I could have let Codex do its own, but it is a bit of a hassle to create a copy where one review cannot influences another, so I let Claude do it. My prompt was:

> Our current branch holds autolayout work and a complete refactor of undo/redo based on bug findings in the original implementation. I want you to do a deep analysis, as deep as you can, on the work done. Focus on code quality, architecture quality, robustness, and performance. Write the result in docs/20260927-review.md

Let me first show you the summary of Claude’s review. If you’re not a software engineer, skim it and get the gist of it.

Observations and Conclusions

So, on first sight, Codex did a good job with a decent refactor. But as a software engineer I am (initially, at least) horrified by the findings of Claude (and note: I have enough experience with Claude Code reviewing Claude Code code to tell you that this is not Claude Opus 5.5 being better than GPT-6. My initial use of reviews had Claude Code review what Claude Code had created and it made mince meat out of it…).

Many of the medium-rated problems are a disaster waiting to happen. Take A4: “setters silently drop refused writes; the action continues on half-applied state”. Say what?! So, the code can create half-applied states and simply move on? That is a hard no in my book (and in the setup/instructions I have given the agents).

Many of these findings I have to corroborate (they tend to be pretty reliable, sometimes a deeper inspection unearths that the review was wrong when you start to try to repair it). Let’s look at what Claude says about software architecture (which is key to good systems)

Claude dutifully reports the strengths of the approach that Codex created:

That is good, right? But now we return to finding A4:

I cannot stress how horrible this sounds to me. Each of these I have to investigate (together with the agent) and fix before I can move on. And the same thing that got me here can happen again: the fix may require yet another repair that enables the fix in the first place. A5 is another architectural issue, by the way, it is visual logic that has been implemented in the presentation layer, instead of in the visual logic layer.

This is quite representative of my experiences so far. My project lives at the edge of what brute force trial and error with token pattern statistics can do reliably and well enough.

So, what do we see here?

What we see is ‘statistics in action’. What we see is an approximation of the result of good coding, not good coding itself. We see a mix of success and failure. A chance of something good enough coming out of the agent (because with these kinds of defects, this is far from good enough, and we’re talking the top frontier models here in high effort settings).

And this holds for the reviews too. A review can say the architecture/code is good, but that isn’t reliable either. A Claude Fable 6.1 review from not long ago did not unearth what a Claude Opus 5.5 review did today. Again, the unpredictability/unreliability is a fundamental property of these massive, statistically constrained randomness-based systems.

The agent creating the code has the same capabilities (or more) than the one making mince meat of that same code. Of course we can massively increase the amount and roles of agents so they all work together in a mesh, more or less ‘checking’ each other. That will of course help, but try to imagine the explosion of token use and the economic unviability that comes with that and the likely diminishing returns when you scale that up. In the symbolic-AI era we already had ‘combinatorial explosion’ as the problem that was unsolvable. It really does seem we are having another version of that in the current era too. So let’s repeat it once more: this technology is astronomically unlikely to support ‘recursive self improvement’ of AI models themselves and thus open up the AGI/ASI trajectory that is being dangled before a scared humanity (next to that there are other reasons why this is likely impossible with digital technology)

In the meantime, I now have another 23 issues to investigate and get fixed. This kind of situation isn’t new for me and it is an illustration of my personal experience over the last half year that coding with LLMs slows down more, the further you get. This, of course, is generally true, but still, my feeling is that I am getting slower as I progress, not just because of complexity, but because the further I come, the more costly fixing the poor parts from the past (that only get clear now) becomes.

Hmm, maybe I’m not so close to my conclusion post after all. First fix this.

First post: Anthropic/OpenAI may be spending more than $1000 for every $100 you pay them
Previous Lab Note #1: Serious coding with LLMs. Lab notes 2026-09-25: Codex vs Claude Code, Usage Limit Resets (contains basic info on the project)

Leave a comment