Tradelynx keeps three registers: incidents, underlying problems, and known errors. Every defect gets a numbered record with what happened, what it cost, and what was done. It is the discipline you would expect of a platform that asks to hold a record of your house.
Last week we checked whether those registers were telling the truth. They were not, in thirty-three places.
The one that mattered
There is a public page on Tradelynx where somebody can verify a property pack we generated. Because the link contains an unguessable code rather than a login, it needs protection against being hammered with automated requests.
Our register said it had none.
It has had that protection since May. The fix shipped, the code is there, and the register never caught up. Worse, the note telling every future piece of work to treat the gap as still open was in the file our tooling reads at the start of every job. So for four months, anything built on that pattern was being told to inherit an exemption that had already ended.
The rest
Four known errors marked as live problems that had been fixed months earlier. Five records whose status was sitting in the wrong column, where nothing could read it. Three records with no index entry at all. And one that turned out to be leftover test data which had been sitting in the register for a fortnight, pretending to be a real fault.
Why we are writing this down instead of quietly tidying it
Because a register nobody audits is a comfort blanket. The whole value of keeping one is that somebody can read it and know where they stand, and that stops being true the moment it drifts from reality.
Two things came out of it. Every claim is now checked against the running system rather than against another document, which is how the May fix went unnoticed: every record agreed with every other record and none of them agreed with the code. And there is a check that refuses to let the registers and their records drift apart again, which we tested by deliberately breaking it, because a check nobody has seen fail is a check nobody should trust.
The first time that new check ran it produced thirty-three findings, and fourteen of them were the check being wrong rather than the data. We fixed the check. Had we trusted it, we would have rewritten fourteen perfectly good records to satisfy a bug of our own making.