“The user attempted to deploy a project but the session timed out during processing—no payment was charged and no deployment URL was generated. The core issue: the system was doing long synchronous work that exceeded the relay's timeout threshold; when the user manually requested async background processing, it acknowledged immediately and started correctly, revealing the fix should be to default all time-consuming operations (clones, builds, network calls) to background tasks with upfront acknowledgment. However, the background task then stalled indefinitely with a static "running" message and no progress updates, making it impossible to distinguish from failure—long-running tasks need either advancing progress signals or failure timeouts. On the positive side, the system quickly self-corrected outd”