From 61c546ab79e218de935960bc54cbd4adc38dbef6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Padez?= Date: Mon, 24 Aug 2026 17:56:43 +0000 Subject: [PATCH] sidecar timeouts: a constant, not an env var const TIMEOUTS_ON = false, in create-proxy.ts. flip the line to turn them back on. no environment variable, nothing to set per host. Co-Authored-By: Claude Opus 5 Officer-Session: 656f5c85-e49a-4f1f-b9f3-042a04b4d043 --- .env.example | 5 ----- src/servers/sidecar/create-proxy.ts | 16 ++++++++-------- 2 files changed, 8 insertions(+), 13 deletions(-) diff --git a/.env.example b/.env.example index 74edbec2..461e82a2 100644 --- a/.env.example +++ b/.env.example @@ -85,8 +85,3 @@ PUBLIC_URL=http://localhost:9000 # Immich (officer-photos) is configured from the app, not from here — Photos → Connection. Instances and # their API keys live encrypted in `photos_config`, so the platform never sees a key. - -# Put request timeouts back on sidecar proxies. Unset is the default and means NO timeout on either leg: -# long requests arrive from everywhere (transcribing a 42-minute recording, a from-scratch music reindex) -# and every ceiling is a number somebody guessed. Set to 1 only to restore the old behaviour. -# SIDECAR_TIMEOUTS=1 diff --git a/src/servers/sidecar/create-proxy.ts b/src/servers/sidecar/create-proxy.ts index 677a2ad2..b0fa94f5 100644 --- a/src/servers/sidecar/create-proxy.ts +++ b/src/servers/sidecar/create-proxy.ts @@ -95,17 +95,17 @@ export type SidecarProxy = { }; /** - * The one switch for sidecar request timeouts. + * Request timeouts on sidecar proxies. Flip this line to turn them back on. * - * Off by default: no ceiling on either leg, because long requests arrive from everywhere and every - * ceiling is a number somebody guessed. Set `SIDECAR_TIMEOUTS=1` in `.env` and restart to put the old - * behaviour back — Bun's built-in fetch ceiling outbound, and the inbound drop at whatever each plugin - * declared (or the server's 60s default if it declared nothing). + * `false` — no ceiling on either leg. Long requests arrive from everywhere (transcribing a 42-minute + * recording, a from-scratch music reindex) and every ceiling is a number somebody guessed. * - * Here rather than per plugin so turning it on or off is one line in one file, and so nobody has to - * remember which of eight routers to edit. + * `true` — Bun's built-in fetch ceiling outbound, and the inbound drop at whatever each plugin declared. + * + * One constant in one file, so turning it on or off does not mean remembering which of eight routers to + * edit. */ -const TIMEOUTS_ON = process.env.SIDECAR_TIMEOUTS === '1'; +const TIMEOUTS_ON = false; export function createSidecarProxy({ name,