Cloud Development Environment Platform · View 04 of 21 · People and journeys
Where it hurts, and the answer
- The trough is the wait. A resume that takes twelve seconds is read as a broken editor, not as a slow one, which is why the whole design is organised around resume rather than create.
- The second moment is walking away: the honest answer to "did it keep my work?" is a stated RPO of 5 minutes and a resume that reports the lost interval rather than resuming silently.
- Progress with a cause (restoring memory, fetching blocks) beats a spinner, so the gateway holds the connection open and streams state instead of failing it.
Assumptions
- Resume with memory state p50 ≤ 900 ms, p95 ≤ 2.5 s, p99 ≤ 6 s in-region; terminal round-trip p95 ≤ 45 ms.
- Asynchronous filesystem snapshots every 5 minutes while running (RPO 5 min).
Risks
- A hibernation that fires during a long build turns the best feature into the worst bug; the liveness signal is composite for exactly this reason (ADR-10).
- Memory-state restore carries stale sockets, an old clock and expired tokens — all three are reconciled on resume (view 13), and a miss here looks like a haunted machine.