Commit Graph
58 Commits
Author SHA1 Message Date
DenozordecandCursor a9e3cce113 feat(launcher): требовать интерфейс для проверок MikroTik
Docker / build (push) Failing after 22s
Все пробы и ingest идут через src-address выбранного WAN, scheduler сохраняет vtIface.

Co-authored-by: Cursor <[email protected]>
2026-08-26 00:22:25 +07:00
DenozordecandCursor c844874b0a feat(launcher): добавить скрипты GEO и blocking для MikroTik 7.22+
Docker / build (push) Failing after 27s
Пробы выполняются на роутере через /tool fetch и уходят в те же ingest API. Ежедневный запуск ставит scheduler, который каждый день заново качает .rsc со свежим токеном.

Co-authored-by: Cursor <[email protected]>
2026-08-25 17:47:04 +07:00
DenozordecandCursor b03318800f feat(launcher): добавить ежедневный запуск проверок cc и ic
Docker / build (push) Failing after 24s
Флаг --daily ставит cron, который раз в сутки заново качает launcher со свежим токеном. Снять: --remove-daily.

Co-authored-by: Cursor <[email protected]>
2026-08-25 16:18:14 +07:00
DenozordecandCursor 7480b9dc11 fix(geo): распознать CDN-локации и добавить иконки сервисов
Docker / build (push) Failing after 22s
CDN-значения вида SE (ARN) больше не помечаются как ошибка. У каждого GeoIP-сервиса — бренд-иконка, как в разделе блокировок.

Co-authored-by: Cursor <[email protected]>
2026-08-25 15:54:04 +07:00
DenozordecandCursor 235ae03489 feat(geo): добавить раздел IP-регионов
Docker / build (push) Failing after 26s
Co-authored-by: Cursor <[email protected]>
2026-08-25 15:16:17 +07:00
DenozordecandCursor 60a22b9450 feat(blocking): определять и показывать хостер в матрице блокировок
Docker / build (push) Failing after 26s
Co-authored-by: Cursor <[email protected]>
2026-08-25 13:19:02 +07:00
DenozordecandCursor efebcaf16d feat(blocking): добавить шкалу снимков над матрицей
Docker / build (push) Failing after 24s
Co-authored-by: Cursor <[email protected]>
2026-08-25 12:32:46 +07:00
DenozordecandCursor ca7f37f980 fix(censorcheck): показывать прогресс-бар во время проверки сайтов
Docker / build (push) Failing after 21s
JSON остаётся в stdout, бар пишет в stderr; launcher больше не перехватывает прогресс.

Co-authored-by: Cursor <[email protected]>
2026-08-22 11:15:18 +07:00
DenozordecandCursor 8ec1ccfecc fix(censorcheck): восстановить vendor-скрипт и ставить зависимости по ОС
Сломанный here-doc съел is_installed; launcher определяет дистрибутив и ставит jq/dig/column без prompt, скрипты отдаются с LF.

Co-authored-by: Cursor <[email protected]>
2026-08-22 11:06:06 +07:00
DenozordecandCursor 5c43d88f1a feat(censorcheck): добавить статус блокировок и launcher curl | bash
Docker / build (push) Failing after 25s
Прогон с VPS через HMAC-токен матчится к существующим серверам; UI /blocking показывает текущие проверки и историю.

Co-authored-by: Cursor <[email protected]>
2026-08-22 10:52:22 +07:00
DenozordecandCursor 9e0311b53a feat(settings): добавить Bot API URL и ячейку ошибок уведомлений
Docker / build (push) Failing after 26s
Монитор больше не ставит «Внимание» по скрытому счётчику. Telegram можно слать через локальный telegram-bot-api.

Co-authored-by: Cursor <[email protected]>
2026-08-22 02:29:07 +07:00
Denozordec edf1da165a feat(reui): update ReUI components and documentation to reflect 20 building blocks
Docker / build (push) Failing after 19s
- Expanded the ReUI skill description to include 20 free building blocks.
- Updated references in various documentation files to reflect the new count of components.
- Enhanced the data-grid documentation to specify the use of TanStack Table v9.
- Added new component details, including the icon-tile, and clarified usage instructions across multiple files.

This update improves clarity and ensures that all references are consistent with the latest component offerings.
2026-08-07 16:40:14 +07:00
Denozordec c14cf3953e fix(tests): enhance fetch mocks and type safety in settings and audit tests
Docker / build (push) Failing after 30s
Updated fetch mocks in settings and audit test files to improve type safety by specifying the fetch type. Adjusted handling of mock call parameters to ensure proper access to request options. This enhances test reliability and clarity in error handling scenarios.
2026-08-02 19:52:18 +07:00
DenozordecandCursor d4d59f4b8e fix(integrations): sync только по сохранённым cfdmApiUrl и токену
Docker / build (push) Failing after 18s
Убран fallback на локальный App Switcher (192.168.x). URL из portal подставляется в форму для сохранения; кнопка sync требует URL в БД.

Co-authored-by: Cursor <[email protected]>
2026-08-01 00:46:28 +07:00
DenozordecandCursor c5198cdd7f fix(integrations): pull bindings из CFDM вместо обратного push
Docker / build (push) Failing after 19s
Устраняет fetch failed при ручном sync, когда CFDM не может достучаться до VPS Tracker. Ошибки показывают URL; UI подсказывает URL из App Switcher.

Co-authored-by: Cursor <[email protected]>
2026-08-01 00:36:04 +07:00
Denozordec fd2d5f39c0 feat(settings): add CFDM API URL handling and improve integration form
Docker / build (push) Failing after 22s
Introduced a new test to verify the persistence of the CFDM API URL via the settings endpoint. Updated the integration form to reflect saved credentials more clearly, enhancing user feedback for the API URL and integration token. Improved sync button behavior to prevent actions without saved credentials. Updated settings schema to include CFDM API URL validation.
2026-08-01 00:20:59 +07:00
Denozordec b8ee99ca03 fix(settings): update CFDM sync tests and improve error handling
Docker / build (push) Failing after 21s
Renamed test cases for clarity and added new tests for handling missing CFDM URL and token scenarios. Removed unnecessary checks in the sync request function to streamline the process. Updated integration form to ensure proper boolean handling for settings. Enhanced sync button behavior based on saved credentials.
2026-08-01 00:07:50 +07:00
DenozordecandCursor 033557a859 feat(integrations): добавить ручной sync с CFDM
Docker / build (push) Failing after 22s
Кнопка в настройках запрашивает полную выгрузку bindings из CFDM.

Co-authored-by: Cursor <[email protected]>
2026-07-31 23:24:04 +07:00
DenozordecandCursor a02daba69b feat(audit): dual-write журнала в auth-portal ingest
Docker / build (push) Failing after 23s
Добавлены event_id/actorUserId и async push source_app=vps без блокировки CRUD.

Co-authored-by: Cursor <[email protected]>
2026-07-21 13:24:30 +07:00
DenozordecandCursor d25beec289 fix(dashboard): запас дней по paidUntil вместо balance/burn
Docker / build (push) Failing after 20s
Переименован Runway в «Запас дней»; минимум дней до оплаты активных VPS.

Co-authored-by: Cursor <[email protected]>
2026-07-20 00:47:28 +07:00
DenozordecandCursor b7a4a10333 feat(billmanager): профили ihor, cloudrix, servhost, landvps, datacheap
Docker / build (push) Failing after 19s
Гео из datacentername, specs через vds.order/vds.edit; парсер ДЦ/городов РФ.

Co-authored-by: Cursor <[email protected]>
2026-07-20 00:30:15 +07:00
DenozordecandCursor 11a0a85ff0 feat(billmanager): гео Waicore из datacentername
Docker / build (push) Failing after 20s
Страна и город VPS из `[DE] Город | …` и `Страна, Город` через enrichVds.

Co-authored-by: Cursor <[email protected]>
2026-07-20 00:08:35 +07:00
DenozordecandCursor 4c6240c636 feat(sync): FirstByte daily paidUntil из баланса и гео 4VPS
Docker / build (push) Failing after 21s
Для daily FirstByte считать dailyRate из cost/30 и общий paidUntil по балансу аккаунта; для 4VPS парсить страну/город из dc_name+flag.

Co-authored-by: Cursor <[email protected]>
2026-07-19 23:26:50 +07:00
DenozordecandCursor 83ed3b8a42 feat(billmanager): профиль FirstByte — ДЦ, оплата и specs VPS
Docker / build (push) Failing after 19s
Парсинг страны/города и paidUntil из list vds; CPU/RAM/диск из vds.order по pricelist_id, иначе vds.edit.

Co-authored-by: Cursor <[email protected]>
2026-07-19 22:38:33 +07:00
DenozordecandCursor 4dda77f118 feat(billmanager): унифицированные профили хостеров (waicore vds.vps)
Docker / build (push) Failing after 20s
Overrides по apiBaseUrl: DEFAULT + partial merge; Waicore использует func=vds.vps.

Co-authored-by: Cursor <[email protected]>
2026-07-19 22:15:13 +07:00
DenozordecandCursor 670b5a4468 feat(spaces): корзина, hard purge, transfer и полный backup
Docker / build (push) Failing after 20s
Soft-delete/restore/purge пространств, смена владельца, импорт JSON с spaces, proxy portal-users и polish Settings/ConfirmDialog.

Co-authored-by: Cursor <[email protected]>
2026-07-19 12:50:18 +07:00
DenozordecandCursor e079a61811 fix: EmptyState по центру и импорт SQLite без 413
Docker / build (push) Failing after 19s
Центрирование заглушек в графиках/Frame; лимит тела backup 100 MiB;
WAL checkpoint при экспорте и очистка -wal/-shm при импорте.

Co-authored-by: Cursor <[email protected]>
2026-07-19 04:41:42 +07:00
DenozordecandCursor 2931d6ee0f fix(db): bootstrap полной схемы на чистой установке и логи Docker
Docker / build (push) Failing after 18s
Пустой volume больше не отдаёт 500 на /api/data из-за отсутствующих таблиц. В compose добавлены json-file логи с ротацией и LOG_LEVEL для Fastify.

Co-authored-by: Cursor <[email protected]>
2026-07-19 04:27:42 +07:00
DenozordecandCursor da818fe104 feat(topology): добавить схему инфраструктуры на React Flow
Docker / build (push) Failing after 19s
Редактор схем с VPS-нодами, связями и персистом в SQLite по space.

Co-authored-by: Cursor <[email protected]>
2026-07-18 16:52:36 +07:00
DenozordecandCursor e360efb885 feat(spaces): добавить изолированные пространства и multi-user
Docker / build (push) Failing after 20s
Полная изоляция данных по space, Share (ACL) и Assign, switcher и участники в UI.

Co-authored-by: Cursor <[email protected]>
2026-07-18 15:42:54 +07:00
DenozordecandCursor 812aa614df fix(auth): редирект на portal по runtime /api/auth/config при 401
Docker / build (push) Failing after 20s
Co-authored-by: Cursor <[email protected]>
2026-07-18 13:49:36 +07:00
Denozordec 84cc800d54 fix(web): улучшить адаптивность сетки графиков и дашборда
Docker / build (push) Failing after 22s
Добавлены классы для двухколоночного макета в компоненты ChartsGrid и OpsDashboard, улучшая отображение на больших экранах. Теперь элементы будут более эффективно использовать доступное пространство.
2026-07-18 13:26:16 +07:00
DenozordecandCursor 0e9a6a6a21 feat: интеграция с CF Domain Manager
Docker / build (push) Failing after 22s
Синхронизация bindings в vps_domains с привязкой по IP, API приёма с Bearer-токеном, настройки и App Switcher из SQLite, UI доменов на VPS и уведомление CFDM при vps_down.

Co-authored-by: Cursor <[email protected]>
2026-06-30 16:45:16 +07:00
DenozordecandCursor 447d499a8d feat(projects): переработать проекты и отчётность по проектам
Docker / build (push) Failing after 20s
Добавлены карточка проекта, KPI и фильтры на /projects, отчёты с разрезом по проектам, cascade rename и защита удаления на API.

Co-authored-by: Cursor <[email protected]>
2026-06-29 19:21:04 +07:00
DenozordecandCursor 5998887148 fix(veesp): читать acc_credit вместо acc_balance при получении баланса
Docker / build (push) Failing after 24s
Co-authored-by: Cursor <[email protected]>
2026-06-29 15:43:54 +07:00
DenozordecandCursor 9a29d88b95 feat(api, web): интеграция RuVDS API v2
Docker / build (push) Failing after 21s
Синк VPS, баланса, платежей и тарифов через Bearer-токен из личного кабинета.

Co-authored-by: Cursor <[email protected]>
2026-06-29 14:10:15 +07:00
DenozordecandCursor ce6414c65f fix(veesp): обновление IP, характеристик и валюты при повторном синке
Docker / build (push) Failing after 21s
Перезапись vcpu/ram/disk/ip на update, fetch VM ips, приоритет валюты из balance API.

Co-authored-by: Cursor <[email protected]>
2026-06-29 12:10:47 +07:00
DenozordecandCursor 5983c911f2 fix(veesp): IP и характеристики VPS при синке, валюта аккаунта
Docker / build (push) Failing after 21s
Парсинг object-map ответов API (vms/ips), cpus, memory в МБ, IP-массив.
Приоритет валюты аккаунта над baseCurrency хостера; поле в UI для Veesp.

Co-authored-by: Cursor <[email protected]>
2026-06-29 11:50:25 +07:00
DenozordecandCursor 87aa6949b3 fix(userapi): период тарифа Macloud и отображение ставки на списке VPS
Docker / build (push) Failing after 1m45s
Месячные планы Macloud определяются через inferPlanPeriod; в UI показывается суточная или месячная ставка по tariffType, а не месячный эквивалент.

Co-authored-by: Cursor <[email protected]>
2026-06-29 11:21:44 +07:00
DenozordecandCursor 579c00392d feat(api, web): интеграция Veesp client area API
Docker / build (push) Has been cancelled
Добавлен отдельный модуль veesp для синка VPS, баланса, счетов и тарифов через JWT/Basic auth.

Co-authored-by: Cursor <[email protected]>
2026-06-29 10:25:12 +07:00
DenozordecandCursor b15e10f117 fix(userapi): корректно определять суточные ставки Macloud/VDSina при синке
Docker / build (push) Has been cancelled
Учитываются server-group, full_cost при нулевом cost и неактивные тарифные планы из индекса.

Co-authored-by: Cursor <[email protected]>
2026-06-29 10:04:42 +07:00
DenozordecandCursor 031fc3aaa0 fix(userapi): валюта и ставки Macloud/VDSina при синке
Docker / build (push) Has been cancelled
Валюта VPS берётся из baseCurrency хостера, ставки — из тарифных планов с fallback и parsePlanCost. На списке VPS цены в валюте провайдера. Расширен parseTariffPrice для форматов UserAPI. Добавлены фильтры на странице тарифов.

Co-authored-by: Cursor <[email protected]>
2026-06-29 02:48:04 +07:00
DenozordecandCursor 6c5eb04fae fix(userapi): подтягивать стоимость VPS Macloud/VDSina из тарифных планов
Docker / build (push) Has been cancelled
При синке UserAPI цена и период берутся по server-plan.id из индекса тарифов, а не остаются нулевыми.

Co-authored-by: Cursor <[email protected]>
2026-06-29 02:23:34 +07:00
DenozordecandCursor 87ab13e9f6 fix(accounts): учитывать baseCurrency хостера при отображении и синке баланса
Docker / build (push) Has been cancelled
API не всегда возвращает валюту (VDSina UserAPI); раньше подставлялся RUB вместо USD из настроек провайдера.

Co-authored-by: Cursor <[email protected]>
2026-06-29 02:18:40 +07:00
DenozordecandCursor f2c4c7a412 feat(api, web): интеграция Macloud и VDSina через унифицированный UserAPI
Docker / build (push) Has been cancelled
Один модуль userapi для идентичного API обоих хостеров: синк VPS, баланса, тарифов и пополнений.

Co-authored-by: Cursor <[email protected]>
2026-06-29 02:02:03 +07:00
DenozordecandCursor 9be50aa03b feat(api, web): интеграция хостера 4VPS.SU — синк VPS, баланса и тарифов
Docker / build (push) Has been cancelled
Добавлен адаптер 4vps, обобщён pipeline синхронизации через ProviderAdapter и обновлён UI для Panel ID и API Key.

Co-authored-by: Cursor <[email protected]>
2026-06-29 01:13:50 +07:00
DenozordecandCursor 05e7bf829e feat(api, web): тест Telegram из формы, подсказки ошибок API и UX настроек
Docker / build (push) Has been cancelled
Тест отправки использует значения формы без предварительного сохранения; пустой токен при сохранении не затирает сохранённый. Добавлены подсказки по частым ошибкам Telegram API и колонка ошибок в журнале уведомлений.

Co-authored-by: Cursor <[email protected]>
2026-06-29 00:54:51 +07:00
DenozordecandCursor 7f91bc3624 feat(api, web): добавить поддержку уведомлений и журнал уведомлений
Docker / build (push) Has been cancelled
Добавлены новые функции для отправки уведомлений через Telegram и webhook, включая настройки для интервалов уведомлений и проверки uptime. Реализован журнал уведомлений для отслеживания статуса отправленных сообщений. Обновлены схемы и интерфейсы для поддержки новых полей и функционала.

Co-authored-by: Cursor <[email protected]>
2026-06-29 00:36:05 +07:00
DenozordecandCursor 2c66d0c0ee fix(dashboard): унифицировать расчёт проблем инвентаря между API и UI
Docker / build (push) Has been cancelled
Счётчик issuesCount и таблица «Проблемы» теперь используют общую логику в @cfdm/shared; добавлены категории «истекает 7 дн» и «низкий баланс».

Co-authored-by: Cursor <[email protected]>
2026-06-29 00:24:49 +07:00
DenozordecandCursor c80090ed08 feat(accounts): доработать управление аккаунтами хостеров
Docker / build (push) Has been cancelled
Добавить apiLogin из credentials, сводку и health-индикаторы на /accounts, фильтры, раздельную форму логина и пароля, безопасное удаление с 409 и тесты API/repository.

Co-authored-by: Cursor <[email protected]>
2026-06-28 16:53:51 +07:00