Перейти к содержанию

Финальный статус сдачи (после волны M2)

Ветка интеграции: feat/geoscan-m2. Снимок документации и метрик: 17.09.2026, nubble.

Сводка по R-xx (обязательные пункты)

Метод подсчёта: одна строка таблицы чеклиста = одна единица. Учитываются только строки с типом обяз. в группах R-IN … R-DOC и R-X (без R-PLT-3 «рекоменд.»). R-SUB — отдельно (артефакты процесса). Итого 44 обязательных требования.

Детальная трассировка: 04-requirements-checklist.md (../00-brief/04-requirements-checklist.md).

R-SUB (процесс хакатона)

ID Статус Комментарий
R-SUB-1…4 частично Концепция/архитектура/алгоритм в docs/task5/; прототип UI — фронт
R-SUB-5 закрыто Исходники в репозитории
R-SUB-6 частично Демо: CLI + gateway; прод geoscan.ff зависит от деплоя UI и образов
R-SUB-7 не в репо Презентация вне git (см. блокер 15 приёмки)
R-SUB-8 частично Документация в 95-manual/; переиздание 17.09 — quickstart, limitations, algorithm-notes, scaling CSV
R-SUB-9 закрыто 02-quickstart.md (../95-manual/02-quickstart.md)

Метрики качества (факт 17.09.2026)

Метрика Значение
uv run pytest planner/tests validator/tests tests/barriers -q см. 02-quickstart.md (../95-manual/02-quickstart.md) §3 (ядро, как CI python-unit)
validator check s01 план допущен (G3-04 ok)
docker compose build gateway успех (~22 с)
s04-mixed-fleet makespan / покрытие ~8.8 ч / 0.340 (см. limitations §8)

Что работает сквозным путём

CLI planner + validator (s01):

$ uv run python -m planner run --scenario scenarios/s01-simple.json --objective makespan --out /tmp/plan.json
$ uv run python -m validator check --scenario scenarios/s01-simple.json --plan /tmp/plan.json
...
ВЕРДИКТ: план допущен

HTTP (при поднятом стенде): tests/integration/test_gateway_api.py::test_plan_s01_completes_with_metrics.

Масштабируемость (R-X-8)

Артефакты: ../95-manual/scaling-benchmark.csv, scaling-benchmark.md (../95-manual/scaling-benchmark.md), scaling-benchmark-meta.txt: поле git= — короткий SHA коммита замера (run_scaling_benchmark.py); предок текущего HEAD. Совпадение с git rev-parse --short HEAD на clone не требуется — барьер проверяет предка и отсутствие diff по ядру планировщика (см. test_scaling_benchmark_meta_git_matches_head).

Команда:

cd src/backend
PYTHONPATH=tests/perf uv run python tests/perf/run_scaling_benchmark.py
uv run pytest tests/perf tests/barriers/test_manual_docs_freshness.py -q

Известные риски для защиты

Проблема Влияние
s04 34 % покрытия при зелёном вердикте Демо смешанного парка показывает неполное задание
s07 / s10 и политика «нулевых нарушений» См. приёмку 96-acceptance/, тесты solver
UI на geoscan.ff Зависит от деплоя фронта (блокер 2)
Контракт UI → API сценария turnaround_time_*, energy_reserve (блокер 3)

Команды приёмки документации (блокер 14)

$ cd src/backend && uv run pytest tests/barriers/test_manual_docs_freshness.py tests/perf -q
(passed)

$ git rev-parse --short HEAD
$ grep ^git= docs/task5/95-manual/scaling-benchmark-meta.txt
(git= — коммит замера, предок HEAD; после правок planner/validator/scenarios/10-hardware — regen)

См. также 03-self-deception-audit.md, 02-customer-assumptions.md.