Why successful demos still fail in production
The happy path demonstrates possibility. Production is the accumulation of unusual inputs, interrupted requests, and ambiguous ownership.
The real system begins where the demo ends: timeouts, rate limits, malformed documents, stale sessions, and retries after partial success.
I now treat failure behavior as part of the feature specification. If the system cannot explain its state or recover safely, the workflow is not finished.
A useful review question is: what will the user see if the request succeeds in one store and fails in another? The answer should name a visible state, the owner of the retry, and the cleanup boundary. Adding another spinner does not answer any of those questions.