> ## Content Index
> Fetch the complete content index at: https://new-blog.dougals.me/llms.txt
> Use this file to discover other available public pages before exploring further.

# Is Claude making more mistakes?
- URL: https://new-blog.dougals.me/is-claude-making-more-mistakes/
- Published: 2026-05-12T20:30:33.000Z
- Updated: 2026-05-12T20:30:33.000Z
- Author: Dougie Richardson
- Tags: Coding, AI, Claude, #Migrated-1789219936886, #wp, #wp-post, #Import 2026-09-12 13:32

OK so that's a bait headline but using Sonnet 4.6 for a simple test driven React application revealed some odd decisions. For example, attempting to scaffold code outside the current directory into `/tmp`:

![](https://blog.dougals.me/wp-content/uploads/2026/05/image-1.png)

This is concerning. Although the command would fail due to insufficient privileges, operations should strictly be constrained to the current working directory. Furthermore, it generated absolute paths using the `git -C` flag:

![](https://blog.dougals.me/wp-content/uploads/2026/05/image-2.png)

Combining `stdout` and `stderr` captures test output with command errors. However, chaining it with `git commit` effectively bypasses validating test results:

![](https://blog.dougals.me/wp-content/uploads/2026/05/image-3.png)

Despite specifying Test Driven Design (TDD), I noticed a missing test:

![](https://blog.dougals.me/wp-content/uploads/2026/05/image-4.png)

The proposed solution contains a flaw: it fails if the markdown file lacks default values. This prompted me to have a good look at the test coverage:

![](https://blog.dougals.me/wp-content/uploads/2026/05/image-5.png)

Excluding `main.tsx` from testing is standard practice. It handles application mounting rather than business logic, and mocking the DOM adds unnecessary complexity. I recommend adding it as an exception in `vite.config.ts` to prevent it from skewing coverage metrics. Line 23 in `ThemeProvider.tsx` is a placeholder for the default context toggle (`() => {}`). It is never called outside the provider, which is an anti-pattern, so it can be safely ignored. The two untested lines in `eventConfigPlugin.ts` represent the aforementioned missing tests.

Claude then opted to mock the markdown file itself, before I suggested an alternative approach.

![](https://blog.dougals.me/wp-content/uploads/2026/05/image-6.png)

The key takeaway from this is that (as we've all been told and as an architect I spend my life repeating), **pay attention when asked to confirm a command** and **check outputs**. Consider an adversarial approach by using another LLM to check the solution.