code dari envelope API, bukan hanya HTTP status.request_id untuk tracing issue ke backend logs.| HTTP | Typical Code/Scenario | FE Action |
|---|---|---|
| 400 | bad request payload | tampilkan general error + form highlight jika relevan |
| 401 | access token invalid/expired | jalankan refresh flow |
| 401 | refresh gagal | clear session lokal + redirect login |
| 403 | tenant context mismatch | clear tenant context + minta pilih tenant ulang |
| 403 | missing ability | tampilkan forbidden/unauthorized module |
| 403 | step-up/password confirmation required | trigger confirm flow lalu retry action |
| 404 | resource not found | tampilkan empty/not found page |
| 422 | validation error | map errors ke field-level message |
| 429 | throttled | tampilkan retry info + backoff |
| 500 | server error | tampilkan fallback error + support message |
| 503 | service unavailable | tampilkan temporary outage + retry |