Opinion
The Model Should Not Write the Tests for the Code It Wrote
Asking a model to test its own output produces tests that confirm the implementation rather than the intent, and the confirmation is invisible in a green…
I write about why software breaks and how people figure it out. Founder of Krova Cloud, building isolated microVMs on our own hypervisor. Years of Shopify theme work and shared hosting before that. If I have not reproduced it, I do not publish it.
Opinion
Asking a model to test its own output produces tests that confirm the implementation rather than the intent, and the confirmation is invisible in a green…
Bug Hunt
The generated pattern passed every test in the suite, then a single long string made it run for nine minutes. The pattern was not wrong.
Error Autopsy
The model suggested a dependency that did not exist, the install command ran anyway, and the name resolved because a stranger had registered it.
Ecommerce
A draft order reserves inventory the moment it is created, and the reservation outlives the draft, so abandoned drafts held stock for days, and the…
Security
A key passed as a query parameter is copied into access logs, proxy logs, referrer headers and browser history, and rotation does not unlog it.
Performance
A context value rebuilt on every render made every consumer re render on every tick, and the consumers included the provider's own parent, so the cascade…
DevOps
The check that detects the leaked credential ran in CI, which runs after the push, which is after the credential is cloned by every mirror, fork and CI runner.
Tooling
The extension records every query's call count, total time and rows, normalised by shape, and the slow query you chase for a week is one aggregation away…
Code Review
A one character change to an immutable attribute shows as a tidy edit in the diff and executes as a destroy plus create, and the review that prices the edit…
Opinion
The diff shows what changed and the tests show what was checked, but the description is the only place the intent lives.
Deep Dive
Node's DNS and file system work share a threadpool of four threads by default, and one slow file read queues every lookup behind it, so the event loop is…
Bug Hunt
The report listed tomorrow's events before today's, and the comparison never raised an error, only returned the wrong order, because aware and naive…