diff --git a/ROADMAP.md b/ROADMAP.md index 359563c..f1831b2 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -499,6 +499,63 @@ CI-раннер ми запустили 2026-08-27. Бракує лише тог Дашборди з NOC TV-режимом зроблено 2026-08-25. Що лишається — нижче, окремим переліком із причинами. +## Що лишається — стан на 2026-08-28 + +Перелік нижче (розділ «Чого немає») складено 2026-08-25 і частина його +вже неправдива. Тут — те, що справді відкрите СЬОГОДНІ, у порядку ціни +помилки. Нижчий розділ лишено як довший опис причин. + +### Перше: до першого тегу (Етап 13) + +Це єдина річ, яка блокує продаж, і вона не про код. + +1. **Оновлення з версії на версію не перевіряв ніхто.** Пісочниця + перевіряє установку з нуля. Шлях «стояла 0.1 — стала 0.2» ламається + частіше, а перевіряє його зараз перший клієнт. +2. **Немає версіонування.** Образ завжди `v0.1.0`, реєстру немає, тега + немає. Поки цього немає, «оновитись» означає «залити дерево й + зібрати», тобто те, що роблю я вручну. +3. **Сумісність зонда й сервера ніде не записана.** Зонди стоять у + чужих мережах і оновлюються не разом із сервером. + +### Друге: перевірки, які є, але не бігають самі + +4. **`scripts/dbtest.sh` не в CI.** Раннер уже стоїть (контейнер + `netpulse-ci-runner`), `check.sh` у конвеєрі є, `build.py --check` + теж. Бракує саме тестів проти бази — тобто тих, що 28 серпня знайшли + чотири справжні вади за один прогін. Зараз їх запускаю руками я. +5. **Токен у `origin` замість ключа розгортання.** + +### Третє: діри, названі рецензіями й не закриті + +6. **`LoadChannels` падає цілком через один нерозшифровний секрет** — + кабінет лишається без ескалацій до стелі життя драбини. +7. **Перетягування вузла на мапі не покрите тестом і не буде** (d3-drag + не запускається синтетичними подіями). Наслідок відомий: вузол стає + на місце, запит не йде, тести зелені. +8. **SNMPv3-трапи не перевіряються** — розбираються й зберігаються, + підпис і шифрування не звіряються. +9. **Тригери шаблонів не можуть отримати драбину ескалації.** +10. **`plural()` повертає число разом із рядком**, а частина викликів + додає його ще раз: «5 5 хостів». + +### Четверте: ніколи не працювало на живому залізі + +11. **Відкат конфігурації** — код є, на справжньому обладнанні не + виконувався жодного разу. +12. **Джерело тригера `trap`** — свідомо не зроблено без словника MIB. +13. **Прототипи шаблонів** (0059) увімкнені, але `snmp.if` через них не + виражається. + +### П'яте: велике й відоме + +14. **Білінг** — схема з 0009 і 0069 є, продавати без нього не можна. +15. **Web Push**, **збережені подання**, **прокрутка дашбордів на TV**, + **підкладки-плани приміщень**, **мобільний режим мапи**. +16. **Справжній TLS** — потрібен домен; на IP Let's Encrypt не видає. + +--- + ## Чого немає: повний перелік Стан на 2026-08-25, після розгортання на бойовому сервері. Перелік