When two numbers on one screen disagree
A dashboard that says six items are live while the customer menu shows five is worse than one that says nothing. We have now caught this three releases running, always the same cause.
One card said 6 of 6 items live. The card directly beneath it said one item was being held back. Both were drawn by the same screen, from the same data, about the same menu, and they could not both be right.
Why it keeps happening
Never because somebody was careless with arithmetic. Always because two bits of code separately describe the same idea.
Somewhere there is a question — which items can a customer be shown? — and it has a real answer with four or five conditions in it. Then a new screen needs that number too. Writing the conditions out again takes thirty seconds and is correct on the day it is written. Three months later somebody adds a fifth condition to one of the two copies, and the screen starts telling an operator something that is not true about their own business.
The cheap fix that actually holds
Write the question once, in one place, and have every screen ask that. Not a comment saying "keep these in sync" — those never survive the person who wrote them — but literally one definition that the guest menu, the back office and the reports all import.
We have had to do this three releases in a row now, on three different questions, and each time the second copy had already drifted. One of them had drifted within a single day of being written.
Why this matters more than it sounds
An operator cannot audit their own POS. They have no way to check whether the number on the dashboard matches what a customer's phone is showing — they see one screen, at one time, and they act on it. If it says six items are live, they will assume six items are live.
A number nobody can verify has to be right by construction, because nothing downstream is going to catch it. Two numbers on one screen disagreeing is the lucky case: it is the only version of this bug that announces itself.