diff --git a/src/shared/api/client.ts b/src/shared/api/client.ts index 48e90d91..c183dfef 100644 --- a/src/shared/api/client.ts +++ b/src/shared/api/client.ts @@ -36,7 +36,11 @@ export class ApiClient { this.locale = options.locale; this.traceId = options.traceId; this.fetchFn = options.fetchImpl ?? globalThis.fetch.bind(globalThis); - this.timeoutMs = options.defaultTimeoutMs ?? 5000; + // Upstream schedule endpoint regularly returns 7MB+ payloads over + // a slow WAF-protected connection and can take 8–10 seconds in + // dev. 5s was far too aggressive — the fetch would abort mid-body + // and cascade into retry loops. 30s matches Angular's default. + this.timeoutMs = options.defaultTimeoutMs ?? 30_000; this.maxRetries = options.retry?.maxRetries ?? 3; this.timeoutFactor = options.retry?.timeoutFactor ?? 2; this.retryStatusCodes = new Set(