# Решения ## 2026-10-16, до кикоффа - Отдельный клиент, а не форк Firefly и не PR в апстрим. Мотив: Firefly на проде на `:latest` с `auto_update`, а релизы выходят примерно дважды в неделю (v6.7.1 15.09, v6.7.9 11.10). Форк пришлось бы постоянно сливать руками. Большой фронт, написанный нейронкой, автор-одиночка в апстрим не возьмёт. - Клиент живёт на домене Firefly (`firefly.hhhhh.dev`) и ходит в `/api/v1` с кукой `laravel_token`. Вход, MFA и выход остаются за Firefly. Мотив: не нужны ни OAuth, ни токены в браузере. - Экраны занимают те же пути, что в Firefly; чего нет, отдаёт сам Firefly. Мотив человека: «не сломались пути». - Раскладка, меню и состав страниц как у Firefly v1, качество новое. Мотив человека: привык к раскладке, а пользоваться невозможно (таблицы, отчёты, поиск, редактор транзакций, клавиатура). - Объём: надмножество Firefly. Редактирование автоматизаций (правила, повторяющиеся, вебхуки) уходит в старый UI. Мотив человека: «ими всё равно не пользуюсь», скоуп не резать. - Без попапов, для power user, vim-навигация. - Тема claddcn-svelte (`lib/claddcn-svelte`), цвета от Firefly, не розовый msos. - Шаблон: `newproject --parts frontend,caddy --frontend svelte --serve static --mcp svelte,context7`, `ui_library=shadcn`, линтер biome. Потом `claddcn init --strip-vars`. - SvelteKit 3 даёт алиас `#lib` (subpath imports), а шаблонный `components.json` и компоненты claddcn писали `$lib`. Переписано на `#lib`, иначе `svelte-check` давал 87 ошибок. Это стоит поправить в шаблоне `frontend-svelte` и в claddcn-svelte. - Вендорный UI (`src/lib/components/ui`, `src/routes/claddcn.css`) исключён из biome целиком: правила ultracite спорили с кодом shadcn и claddcn. - Эталоны старого интерфейса: образ `fireflyiii/core:version-6.6.6`, последний с v1 и v2 (убраны в коммите `4c29d34ef7` 02.09.2026, первым без них вышел v6.7.0).