0.134.15
Changed
Реализованы 4 из 8 задач Группы 2 (большие рефакторинги) из аудита docs/audit/web-2026-06-06.md. Остальные 4 (W-015 chat, W-016 profile, W-019 memory, W-020 permissions) выполнены частично или отложены — требуют больших поэтапных декомпозиций, см. отчёт в аудите.
- W-014:
lib/api/client.ts(2113 строк) → 3 файла + re-export — монолитныйclient.tsразделён на: client.ts(195 строк) — ядро:request/rawRequest/tryRefresh/onAuthRefresh/initAuth/getAccessToken/setAccessToken/loginRequest, без интерфейсов.types.ts(1190 строк) — все 50+ интерфейсов API (User, Agent, ChatMessage, Memory*, KG*, etc.).endpoints.ts(841 строка) — объектapiсо всеми эндпоинтами, импортируетrequest/typesизclient.ts.index.ts— re-exportapiи*из типов для удобства.client.tsостаётся точкой входа (re-exportapiи*), все 50+ импортовfrom '$lib/api/client'работают без изменений.- W-025:
ChatStoreвладеетmessagesкак$state<ChatMessage[]>([])— добавлены мутаторыsetMessages/appendMessage/prependMessages/clearMessages. Из интерфейсаChatStoreCallbacksудаленыgetCurrentMessages/setCurrentMessages/getAgentId/getStickToBottom/setStickToBottom/resyncMessages(теперь это часть store). Остались только DOM-зависимые callbacks:getAgentDisplayName,setupResizeObserver,scrollToBottom. Вroutes/chat/+page.svelteдобавлен$effectдля двусторонней синхронизацииchatStore.messages↔messages(для scroll-логики). - W-018:
routes/settings/providers/+page.svelte(504 → 374 строк) +lib/features/providers/ProviderFormModal.svelte(150 строк) — модалка создания/редактирования извлечена в отдельный компонент, страница потеряла ~130 строк inline-разметки. Создана директорияlib/features/providers/для будущих подкомпонентов. - W-017 (частично):
lib/features/system/SystemActions.svelte(внешний компонент) — извлечены кнопки restart/shutdown, polling cleanup и их модалки подтверждения.routes/settings/system/+page.svelteостаётся ~600 строк, секции Info/Updates/Diagnostics не вынесены.