Work / AskCal / Wiki / Surfaces
failed
Surfacecanonicalverified 2026-09-26
SURFACE.MOBILE.SCAN.FAILEDSummary
The scan that did not work, and the fact that it was free.
Raw wireframe
- .context/designs/mobile/scan/failed.html
Why it is drawn this way
Three failure modes, one screen, switched by the copy block: no food found, too dark, offline, server busy.
A failed scan does not burn a scan, and we say so. Charging for a failure is how a metered app earns one-star reviews. See metering.
Related
The other copy is not drawn
This screen carried a card headed "Same screen, other copy" listing the offline,
too-dark and server-busy wordings. failed.tsx picks ONE variant from its COPY
table per failure, so that card was an annotation about the screen rather than
the screen — which §5 forbids. The variants live here instead:
- Offline — "You're offline. Barcode and search still work; photo scans need a connection."
- Too dark — "Too dark to read. Turn on a light or use the flash."
- Server busy — "Our side is busy. Try again in a moment — no scan used."
Sources
- .context/designs/mobile/scan/failed.html
Every project of mine is written down like this.
Read the résumé