карьерчик.ПРОЕКТНАЯ ДОКУМЕНТАЦИЯ / V1.0.0 / 16 ОКТЯБРЯ 2026
QUALITY / RELEASE V1

Проверяемый результат.
Понятный следующий шаг.

1. Матрица трассировки

ПотребностьТребованияКомпонентыПроверка
Найти материалFR-01, FR-02, FR-03Catalog API, поиск, фильтры, карточкаUI: категория + поиск, сортировка, открытие карточки
Понять полную суммуFR-04, BR-01..06POST quotes, калькуляторAPI: эталонные суммы, рейсы, тонны, самовывоз
Рассчитать слойFR-05Помощник объёмаUI: 100 м² × 10 см = 10 м³
Сохранить запросFR-06, BR-07..11POST orders, формаAPI: валидация, 201, повтор, конкурентные запросы
Проверить заявкуFR-07, BR-13GET orders/{id}, диалогAPI: верный/неверный секрет, перезапуск
Понять статус MVPFR-08..10Баннеры, HTML, READMEОшибки API, локальные ссылки и ограничения

2. Сценарии ручной приёмки

IDДействияОжидаемый результат
UI-01Открыть главную, выбрать «Щебень», ввести «20»Только подходящие щебни; счётчик соответствует
UI-02Установить сортировку «дешевле»Цена за м³ возрастает
UI-03Открыть карточку, закрыть Escape, открыть и нажать расчётДиалог работает с клавиатурой; выбранный товар перенесён
UI-0410 м³ карьерного песка, до 30 км, рассчитать6 500 ₽ материал + 6 500 ₽ доставка = 13 000 ₽
UI-05После расчёта сменить зону или количествоСтарые сумма и форма заявки скрываются до нового расчёта
UI-06Помощник: 100 м², слой 10 см; использоватьВ калькулятор перенесены 10 м³
UI-07Выбрать самовывозСтоимость доставки и рейсы равны 0
UI-08Оставить согласие пустым; выбрать организацию без названияФорма/сервер не разрешают отправку
UI-09Отправить с тестовыми контактамиНомер KR-…, статус, код; без обещания реальной поставки
UI-10Проверить заявку через «Моя заявка»Последний номер подставляется; сервер подтверждает сводку
UI-11Остановить API, перезагрузить порталОшибка загрузки; нет фиктивных цен или успешной заявки
UI-12Проверить 390 px и 1440 px, навигацию, формы, диалогЧитаемый адаптивный интерфейс и доступные кнопки
UI-13Открыть HTML-документацию с диска без сетиВсе 5 страниц связаны и читаемы; стили встроены

3. Автоматизированные проверки

Сценарий tests/api.test.mjs собирает/запускает отдельный API с изолированным временным хранилищем, проверяет каталог, расчёт, пределы, ошибки, защиту суммы, повтор и конкурентность заявки, доступ по коду и сохранность после перезапуска. Тестовые данные не используются рабочим сервером.

Результаты конкретного запуска фиксируются в docs/verification.json и кратко в docs/verification.html. Отсутствие проверки или ограничение инструмента должно быть явно указано, а не отмечено успешным.

4. Ограничения и риски

РискПриоритетУменьшение / решение
Тестовые цены ошибочно воспринимаются как реальныеВысокийМаркировка демо в нескольких местах; заменить каталог перед запуском
Заявка воспринимается как бронированиеВысокийЯвный текст, единственный статус; далее CRM и подтверждение
JSON и персональные данныеВысокийТолько локальный тест; далее БД, права, шифрование, сроки
Нет доступа менеджера / уведомленийВысокийИнтеграция CRM, очередь событий, кабинет с ролями
Зональный тариф не отражает фактический маршрутСреднийПредварительная сумма; далее точки отгрузки, геокодер и ограничения дорог
Плотность меняется по партии и влажностиСреднийДемо-плотность указана; далее показатели партии и допуски
Дубликаты клиента по разным расчётамСреднийv1 исключает повтор только для одного quoteId; далее нормализация и дедупликация
Нет нагрузочного и полного security-аудитаВысокий для публичного запускаОпределить SLO, провести нагрузочные и security-проверки
Контент каталога доступен только после client fetchСредний для SEOДемо noindex; для реального каталога SSR/ISR и отдельные URL

5. План версий

ВерсияЦельКритерий готовности
v1 / текущаяЛокальный end-to-end MVP и аналитикаСборка, расчёт, сохранение, HTML и версия в папке
v2Рабочий пилот оператораPostgreSQL, реальные тарифы, кабинет менеджера, auth/RBAC, CRM/email, аудит
v3Управление поставкойПартии, паспорта, остатки, маршруты, рейсы, статусы, согласование
v4Коммерческий масштабДоговоры, платежи, документооборот, SLA, мониторинг, нагрузка

6. Условия публичного запуска

  1. Утвердить юрлицо, реквизиты, контакты и документы оператора.
  2. Заменить тестовые данные подтверждёнными ценами и характеристиками.
  3. Подключить ответственных менеджеров, CRM и подтверждение заявок.
  4. Внедрить транзакционную БД, резервирование, сроки хранения и удаление.
  5. Добавить аутентификацию, роли, журналирование и защиту секретов.
  6. Настроить домен, TLS, наблюдаемость, квоты и антибот-защиту.
  7. Провести проверку безопасности, доступности и нагрузочный пилот.

Публикация и коммерческий запуск не входят в текущую локальную поставку.