fix(node): clear consumed invitations after confirmed pairing

This commit is contained in:
DCCONSTRUCTIONS
2026-09-05 21:37:56 +03:00
parent e82d012907
commit 3616acc648
6 changed files with 41 additions and 3 deletions
+26 -1
View File
@@ -1,6 +1,6 @@
# Привязка БК к Mission Core — протокол v1
Дата: 05.09.2026. Инкремент Node 0.5.0. Основание: MISSIONCOR-76 и согласованная
Дата: 05.09.2026. Инкремент Node 0.5.0; исправление отображения и очистки приглашения 0.5.1. Основание: MISSIONCOR-76 и согласованная
поверхность `03_SYSTEM_AND_VEHICLE_PAIRING_SURFACE.md`. Чистая установка ОС
отложена владельцем; она не закрыта текущими проверками и не блокирует этот этап.
@@ -153,3 +153,28 @@ Bootstrap ограничен 16 одновременными соединени
автономные миссии. Следующий отдельный инкремент: реальный RealSense D455 за Node;
после него K1 через Wi-Fi Bridge. Их полномочия и API добавляются к существующим
границам Node/Core, а не к SSH или UI браузера.
## Фактическая проверка 05.09.2026
На тестовом Mini с установленным 0.5.0 через UI созданы приглашение и аппарат,
подтверждены идентичность, исходящий mTLS и живые сведения БК. Через UI Core
проверены список, глаз конфигурации, отзыв доверия; через UI Node — получение
отзыва и создание нового приглашения. Повторная привязка вернула тот же аппарат
в сеть без второй строки. Управление датчиками при этом не запускалось.
Для проверки отказа служба Node была кратко остановлена инженерным SSH:
интерфейс Core показал «Нет связи»; после запуска служба сама восстановила пару
и UI показал «В сети». Это проверка сохранения пары после перезапуска службы,
не квалификация чистой ОС или полного холодного старта Mini.
GUI-прогон использовал реальные интерфейсы Core и Node (к последнему — временный
loopback-туннель и штатный одноразовый вход). Встроенное desktop-окно Node 0.5.0
также запущено на Mini. Туннель относится только к инженерному управлению UI;
сам канал Node → Core работал непосредственно через частную LAN с mTLS.
Выявленная при GUI-проверке неточность: после отзыва показывался срок уже
использованного приглашения. В 0.5.1 приглашение удаляется при commit и при
чтении старого paired/revoked-состояния; его срок UI показывает только пока оно
открыто. Новое приглашение сбрасывает время связи предыдущей пары. Исправление
внесено в пакет и регрессионный тест, а не в настройки тестовой ОС.