Финальный статус сдачи (после волны 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.