Files
frontend-svelte/src/shared/api/nonRetryableError.ts
T

15 lines
720 B
TypeScript
Raw Normal View History

/**
* Marker base class for errors that retrying will never fix — schema-validation
* failures, unauthorized responses, contract violations, etc.
*
* The queryClient retry handler short-circuits when it sees this; without it,
* a non-transient backend bug pins the UI through the full retry budget
* (default 3× exponential backoff ≈ 7s).
*
* Lives in its own module — free of `@tanstack/query-core` — so error types that
* extend it (e.g. `FontResponseError`) can be imported without dragging the
* TanStack client and its eager `new QueryClient()` instantiation into the
* importer's module graph. See the barrel-coupling notes in the FSD audit.
*/
export class NonRetryableError extends Error {}