diff --git a/decisions/2026-06-08-swarmclaw-lxc135-deploy.md b/decisions/2026-06-08-swarmclaw-lxc135-deploy.md index 4167135..aae19c6 100644 --- a/decisions/2026-06-08-swarmclaw-lxc135-deploy.md +++ b/decisions/2026-06-08-swarmclaw-lxc135-deploy.md @@ -70,6 +70,17 @@ SwarmClaw имеет раздел **Knowledge** (`/api/knowledge`), и аген ## OmniRoute «out of usage» = баг версии (2026-06-09) Агенты на `cc/claude-opus-4-8` начали падать `400 You're out of extra usage`. Оказалось — НЕ лимит Max, а баг устаревшего OmniRoute (стоял 3.8.7, актуально 3.8.16). Обновление вылечило. Грабля апдейта: entry-point переехал `app/server.js`→`dist/server.js` → поправлен `ExecStart` в `omniroute.service` (иначе crash-loop). Подробно — [[../claude-memory/omniroute]] + memory `feedback_omniroute_update`. Агенты SwarmClaw остаются на **Opus 4.8** (Sonnet Олега не устроил). +## iPad/iPhone Safari — чаты не отвечали (2026-06-09) +На Mac (Chromium/Yandex) чаты работали, на iPad Safari открывалось, но ответы агента не приходили. Причина — чат отдаёт ответ через **SSE** (`text/event-stream` из `POST /api/chats/[id]/chat`), а NPM (nginx) по умолчанию буферизирует proxy → Safari iOS/iPadOS строг к буферизированному стриму. **Фикс — `advanced_config` у NPM-хоста #32:** +``` +proxy_buffering off; +proxy_request_buffering off; +proxy_set_header X-Accel-Buffering no; +proxy_read_timeout 3600s; +proxy_send_timeout 3600s; +``` +После reload — чаты на iPad заработали. Покрывает и iPhone. (Применять к любому SSE/стрим-сервису за NPM.) + ## Схема API (для будущих правок headless) - `POST /api/providers` → `{id,name,baseUrl,models[],requiresApiKey,isEnabled}` (type всегда `custom`), хранит JSON в таблице `provider_configs`. - `POST /api/agents` → zod `AgentCreateSchema`; обяз. `name`,`provider`; `ollamaMode` только `local|cloud|null` (не `off`).