AbortSignal.timeout() requires Node 17.3+. The API container likely runs an older Node version, so timeouts never fired -> fetch hung forever when FMCSA API is down -> nginx proxy timeout -> 'Failed to fetch' in the browser. Fix: use AbortController + manual setTimeout() which works on all Node versions. All 3 external fetch points (fmcsaFetch x2, SOS x2) now actually abort at 5s. Also: guard final res.json() with !res.headersSent so the 12s deadline fallback and the normal response path can't double-send. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| migrations | ||
| src | ||
| Dockerfile | ||
| package-lock.json | ||
| package.json | ||
| start-dev.sh | ||
| tsconfig.json | ||