Этапы MVP и дальнейшие работы

4 мин. чтения

Статус Актуально
Последняя проверка 2026-10-07 (соответствует Git на момент импорта; содержание повторно не проверялось)
Источник Git
Исходный файл TODO.md — открыть на GitHub
Язык статьи перевод с английского оригинала (файл перевода: translations/ru/TODO.md)
Git-репозиторий git@github.com:advertech/signage-estimator.git (сервер: /root/signage-estimator)
Git-коммит d22587c1f7e3add9efd54c7ffc0be0a01b296fa3 (master)
Файл последний раз изменён 79bbaf22f0a9 от 2026-09-27
Последний импорт 2026-10-07T09:14:19+02:00
Примечание Источник истины — Git. Меняйте файл в репозитории и перезапускайте /root/wiki-sign-expert/import_git_docs.py; правки, сделанные здесь, будут перезаписаны следующим импортом.

Допущения: на этом сервере не было репозитория приложения, Docker, PostgreSQL или Caddy. Локальная разработка использует SQLite и Vite, так как установлен Node 18; Docker-развёртывание использует PostgreSQL и собранный frontend на React. Цены и скорости станков в начальном списке — иллюстративные демо-значения, их нужно заменить до выставления предложений клиентам. Валюта намеренно не зафиксирована.

  • [x] M1: независимый репозиторий, реляционная схема, миграция, REST API, оболочка React.
  • [x] M2: нормализованная модель полигонов, создание прямоугольников/кругов, SVG-превью.
  • [x] M3: векторные пути PDF, включая кривые Безье и отверстия; импорт SVG и DXF; размеры и масштаб.
  • [x] M4: раскладка с проверкой столкновений контуров, SVG листа, ручное размещение, разрезание деталей.
  • [x] M5: материалы, операции, типы изделий на данных, редактируемая таблица калькуляции.
  • [x] M6: сохраняемые URL, ревизии, восстановление, токен шаринга только для чтения.
  • [x] M7: API действий Copilot с ограниченной областью и детерминированный адаптер естественного языка.
  • [x] Итерация 2: сохраняемые асинхронные задания раскладки с реальным прогрессом и отменой; история Copilot на уровне проекта; все листы в вертикально прокручиваемом векторном рабочем пространстве; векторный предпросмотр печати A4; исправлена регрессия восстановления вложенных ревизий.
  • [x] Итерация 3: серверные сессии, две роли, профиль, каталог/импорт поставщиков, подтверждённые сопоставления, замороженные цены предложений, станки/технологии, правила, шлюз провайдеров, голосовой мост/мок, структурированные логи запросов и аудита.
  • [x] Сверка безопасности: границы чисел и размеров тела запроса, изолированные парсеры, дедлайн раскладки, лимиты частоты, allowlist хостов, отзыв сессий, adversarial-тесты и реестр находок A/B.
  • [x] Производительность раскладки: воспроизведён тайм-аут на 32 кругах, заменены декартовы сетки опорных точек и повторный разбор геометрии, добавлены грубые ограничивающие проверки, кэш ориентаций, тайминги решателя и регрессионные тесты производительности; сохранён прерываемый воркер, его предел безопасности поднят до 180 секунд.
  • [x] Прототип конфигурируемого изделия / Channel Letters: версии технологий, поля оценки и правила на данных, независимые кэши раскладки BACK/FACE, разбивка стоимости по операциям/материалам, замороженные снимки ставок и снимки конфигурации в ревизиях. Добавлено 12 изолированных приёмочных тестов; полный набор API-тестов, приёмка в браузере и развёртывание остаются заблокированы зависимостями ограниченного окружения и доступом к хосту.
  • [x] Основа интерпретации геометрии: сохранение исходных контуров, запись топологических подсказок, производственные элементы/роли в снимках ревизий, блокировка неоднозначной раскладки до проверки, производная производственная геометрия BODY минус CUTOUT, векторная группировка и управление ролями в Geometry Review. Извлечение открытых обводок и калькуляция графических слоёв — будущая работа.
  • [x] Подготовка к переключению на production: проверенный бэкап SQLite/хранилища, сайт Caddy, systemd-сервис/таймер проверки здоровья, приватное production-окружение и инструкции по проверке развёртывания.
  • [ ] Активировать calc.sign-expert.eu на хосте: DNS, Caddy/TLS, systemd, firewall, вход, проверки печати/голоса в браузере и push в GitHub. Ограниченная сборочная оболочка не имеет доступа к systemd/сетевым сокетам хоста.
  • [ ] M8: полная проверка на реальных PDF вывесок, продвинутый оптимизатор, границы организаций, мониторинг production и HTTPS-развёртывание.

Текущие следующие работы:

  • Проверить контуры букв и многостраничные PDF на реальных макетах клиентов; доработать группировку контуров там, где экспортёры используют составные clipping-пути или открытые обводки.
  • Улучшить раскладку произвольных форм с помощью no-fit polygons или проверенного оптимизатора и сравнить на разнообразных деталях.
  • Заменить однопроцессный воркер раскладки на надёжную очередь перед развёртыванием нескольких реплик API. Добавить отчёт об итерациях/лучшем решении, когда появится настоящий итеративный оптимизатор.
  • Доработать форматирование колонтитулов A4 и проверить поля принтера в разных браузерах; рассмотреть серверную генерацию векторного PDF для контролируемого производственного вывода.
  • Добавить интерактивное перетаскивание и экспорт раскладки в DXF.
  • Заменить демо-ставки и добавить доступ к расчётам в рамках организации. Сейчас роли Admin и Estimator по замыслу видят все расчёты.
  • Добавить production TLS, SESSION_COOKIE_SECURE=true, внешнее ограничение частоты входа, учения по восстановлению из бэкапа и мониторинг перед внешним использованием.
  • Добавить тайм-аут простоя сессии, распределённые лимиты частоты, фиксацию хэшей зависимостей и аудит уязвимостей, корпус враждебных файлов для фаззинга; проверить CSP/Nginx и secure-cookie на staging с HTTPS.
  • Замораживать коэффициент продажи материала в снимках предложения; правки мастер-данных материалов/операций больше не пересчитывают все предложения сразу.
  • Проверить вызов инструментов текстом через Gemini и Gemini Live с реальными учётными данными; проверить захват PCM в браузере и воспроизведение аудио на развёрнутом HTTPS-источнике.
  • Добавить парсеры PDF под конкретных поставщиков и нормализацию единиц, валют, наличия и размеров листов; строки из общих PDF остаются только для проверки.
  • Добавить UI архивации и явной истории обновления цен; для создания правил нужен пошаговый редактор и стенд тестирования сценариев.
  • Поддержать разные размеры листов для расчётов со смешанными материалами.
  • Расширить правила типов изделий до полноценных многокомпонентных спецификаций (BOM) и формул операций для объёмных букв и световых коробов.
Обновлено 07.10.2026