DashboardcliApiError status preservation

ApiError status preservation

Category: gotcha
Confidence: 1.00
ID: 01a08352-dc43-7db4-81d0-42c7ba13e5bd
Project ID: c760f4f9-42b0-4ce0-b36d-6b8c38d770b2
Cross-project: No
Recalled in other projects: 1
Source session: 0LqkXkB0SnijwlaQB
Created: 2026-09-08 23:20:40
Updated: 2026-09-08 23:20:40

Cross-Project Recalls

ProjectHitsLast recalled
opencode-lore 3 1d ago

Content

Trap: wrapping an HTTP failure in generic CliError looks useful for adding context, but discards ApiError.status, detail, and endpoint, causing expected 401–499 responses to reach Sentry. Fix: rethrow new ApiError(message, error.status, error.detail, error.endpoint) with a terse message because ApiError.format() appends detail and endpoint.

Move to: