Files
manure-removal-owen/TASKS.md
T
2026-05-03 10:39:15 +00:00

6.0 KiB

TASKS.md — Открытые задачи и баги

🔴 Критическое

[BUG] acs-monitoring упал (PM2 stopped)

Статус: Требует немедленного исправления
Симптом: PM2 показывает stopped, 238+ рестартов
Действие:

pm2 logs acs-monitoring --lines 100
pm2 restart acs-monitoring
# Если не стартует — смотреть ошибку в логах

🟠 Высокий приоритет

[FEATURE] Прошивка ESP32 v2.0 — установка и тестирование

Статус: Код написан, не прошит на железо
Путь: /var/www/acs-monitoring/firmware/door-controller-v2.0/
Что нужно:

  • Прошить через Arduino IDE / PlatformIO
  • Пройти AP Mode конфигурацию (WiFi + MQTT + Device ID + Provision Token)
  • Проверить provision → синхронизацию карт → события доступа
  • Проверить offline режим (отключить WiFi → карта должна работать по кешу)
  • Проверить OTA обновление

[FEATURE] Датчик воды — деплой v3.5.8 (journal-first архитектура)

Статус: Требует USB flash деплой (не OTA)
Что сделано: journal-first, SPIFFS, монотонные счётчики, FIFO очередь, isFresh логика на backend
Что нужно: Физически подключить к компьютеру и прошить через Arduino IDE

[FEATURE] MQTT обработчики СКУД — проверка интеграции

Статус: skud-handlers.ts написан, не проверялась end-to-end
Что проверить:

  • Provision нового устройства
  • Синхронизация карт при подключении
  • Запись событий в access_events
  • Статус heartbeat в devices

🟡 Средний приоритет

[FEATURE] Станция регистрации карт

Статус: Не начато
Описание: ESP32 + RC522 (RFID) + ESP32 + CC1101 (RF 433 МГц) + OLED + Зуммер
API уже есть: registration-station.ts
Нужно: Hardware сборка + прошивка

[FEATURE] Шлагбаумы (RF брелоки 433 МГц)

Статус: Не начато
Компоненты: ESP32 + CC1101, реле 2-канальное, антенна
Функционал: RF брелоки + RFID карты + распознавание номеров (Линия 8)

[FEATURE] Telegram уведомления

Статус: Не настроено
API: telegram.ts есть, таблица telegram_settings есть
Что нужно: Задать TELEGRAM_CHAT_ID в .env, настроить события

[FEATURE] Расписание доступа по уровням

Статус: Не реализовано
Описание: Разные карты открывают разные двери в разное время

[FEATURE] Датчики давления и электроэнергии

Статус: Не начато
Таблицы: pressure_data, electricity_data уже в БД
Нужно: Прошивка + backend API + frontend страницы


🟢 Низкий приоритет / Идеи

[FEATURE] Real-time уведомления на frontend

Описание: WebSocket push при новом событии доступа, устройство оффлайн, несанкционированный доступ
Инфраструктура: Socket.IO уже в стеке

[FEATURE] Отчёты и аналитика

  • Графики активности по времени суток
  • Отчёты по проходам сотрудников
  • Экспорт в Excel
  • Аномалии доступа (карта в двух местах одновременно)

[FEATURE] Discovery — авто-обнаружение устройств

Описание: Сканирование сети, обнаружение ESP32 в AP mode, provision через веб-панель
Таблица: device_discovery есть
API: discovery.ts есть

[FEATURE] QR-коды для временного доступа

[FEATURE] Мобильное приложение (React Native)

[FEATURE] Интеграция с 1С (учёт рабочего времени)

[FEATURE] Биометрия (отпечатки / facial recognition)

[FEATURE] Visitor management system


🐛 Известные баги

[BUG] Датчик воды — аномальные показания > 900 л

Статус: Исправлено в v3.5.8 (timezone + journal logic)
Причина: Timezone offset +3h приводил к задвоению readings; isJournalisFresh fix

[BUG] Датчик воды — 3-часовой offset временных меток

Статус: Исправлено — pure UTC конфигурация NTP

[BUG] Frontend — /scud/keys и /scud/employees вели на одну страницу

Статус: Исправлено в App.tsx


📋 Мелкие улучшения

  • DiscoveryPage — доработка UI
  • DevicesPage — индикатор последней синхронизации карт
  • AccessLogPage — фильтр по сотруднику (сейчас есть только по устройству)
  • FirmwarePage — загрузка .bin файла через UI (сейчас вводится путь)
  • Dark mode для всей панели
  • Backup БД (pg_dump по расписанию)
  • Unit тесты для backend API
  • Docker контейнеры / CI-CD

Обновлено: май 2026