Operations · Reporting

The second check ran on the first one's mess

We ran three checks in a row on one till and the second one measured nothing, because the first had already changed the thing it was about. It looked like a pass. It was a blank.


We ran three checks back to back this week to see whether a particular door was locked. The first one came back correctly refused. The second came back refused too. We nearly wrote both down as proof.

The second one was measuring nothing. The first check had already changed the state of the record, and by the time the second ran it was being refused for an entirely unrelated reason — the right answer, arrived at by the wrong road. If we had written it up, we would have recorded a door as locked when nobody had tried the handle.

Why this is so easy to do

Because running things in sequence is what you naturally do. You have a till open, a test order on it, and three things to check. Checking them one after the other on the same order is obviously faster than resetting between each one. And it is fine, right up until one of the checks changes something a later check depends on.

The clearest venue example: you want to test that a discount applies correctly, and that a void works, and that a refund works. Run them in that order on one order and the refund test is running against an order that has already been voided. It will do something. What it does tells you nothing about refunds.

How to avoid it without doubling the work

Start each check from a clean order. Not a clean day, not a clean till — a clean order takes thirty seconds to ring in. The cost of resetting is almost always lower than the cost of a wrong conclusion, because a wrong conclusion gets written down and believed for months.

And when a check passes, ask one question before you record it: could this have passed for a reason other than the one I am testing? If the answer is yes, you have not finished. We now pair every "it was refused" with the same action performed by somebody who should be allowed to do it. If both are refused, the thing is broken, not secure — and those two look identical from the outside.

The broader habit

Any time you are checking several things, make the order of them not matter. If the order matters, the results are about the order. That applies to a stock count, a close-down check, a new starter's first shift and a software test in exactly the same way.


Try it on tonight’s service.

Nothing to install, no card. Not better by the weekend? Close the tab.