"Optimistic-Update"
- 時間感知與回應策略:Loading 的形式由等待時間門檻決定 100ms / 400ms / 1s / 10s 時間門檻對應不同回饋策略 — 決定操作該不該顯示 loading、用 spinner、skeleton 還是進度條的判準。
- 單調狀態機與樂觀更新的回滾契約:前台不得顯示後端沒記錄的狀態 POS App 的品項處理狀態只能遞增——現實世界的動作不可逆,狀態機跟著不可逆。樂觀更新讓 UI 先行,但後端拒絕時必須回滾:因為這個狀態是其他防護規則的資料來源,前台多顯示一格進度,防護就會在錯誤的前提上放行。