Work / AskCal / Wiki / Surfaces
today-unconfirmed
Surfacecanonicalverified 2026-09-27
SURFACE.MOBILE.HOME.TODAY-UNCONFIRMEDSummary
Today with photo scans paused, because the store could not confirm the plan.
Raw wireframe
- .context/designs/mobile/home/today-unconfirmed.html
Why it is drawn this way
"We could not check" is not "you have not paid", and this screen is where that
distinction is kept. checkEntitlement returns three values and unknown
answers 409 unverified without touching any counter. Collapsing it into false
metered a paying subscriber against a LIFETIME free allowance they had spent
months earlier, and then sold them the plan they already owned. The whole incident
is in .context/ops/incidents/2026-09-22-entitlement-lockout.md.
So it is its own screen and not a locked state of today. The closed set
cannot name it: not empty, not loading, not offline, and emphatically not
locked — locked is the allowance honestly spent, this is the allowance we
failed to look up. Drawing one for the other is the bug.
Only the shutter is paused; the rest of the day is untouched. Barcode and search do not consult entitlement at all, so a day can still be logged while this card is on screen. The card is the only thing that is new.
Type it is paused too, and struck through rather than removed. It is a billed estimate that spends a scan exactly as the shutter does. This screen used to offer it as a tappable tile priced "1 scan", forty pixels under its own sentence saying photo scans were paused — a second door to the allowance the screen had just admitted it could not read. Struck through follows the rule today keeps for the locked state: a control that vanishes when it stops working moves everything beside it and leaves the user unsure it was ever there.
The card is info, not danger. Nothing is wrong with the user's account as
far as anyone knows, and nothing has been charged. Red would be the app accusing
the user of a problem it has itself.
Tapping it restores. One action, straight to unverified, which is the same explanation at full length for the user who wants it.
Related
Sources
- .context/designs/mobile/home/today-unconfirmed.html
- .context/ops/incidents/2026-09-22-entitlement-lockout.md
Every project of mine is written down like this.
Read the résumé