Рулинг R-3 дописан в design.md; CLAUDE.md больше не ссылается на активный change. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
3.9 KiB
Why
Живой запуск моста 12.10.2026 упёрся в сеть: доступ к Jira банка на виртуалке даёт VPN «Континент ZTN», и его пакетный
фильтр (pf-anchor continentztn) закрывает локальную сеть в обе стороны — роутер 192.168.0.1 отвечает, Mac mini
(192.168.0.108) нет, nc на порт хаба 8790 — таймаут; входящие на виртуалку (:22) тоже режутся. Фильтр включается при
первом подключении Континента и остаётся загруженным после отключения VPN, до выхода из клиента или перезагрузки. Агенту
одновременно нужны Jira (только через VPN) и хаб, поэтому сеть для моста не годится. Править правила Континента нельзя —
это средство защиты банка.
Канал, который фильтр не видит, — общая папка гипервизора UTM (VirtioFS): на Mac mini /Volumes/externalSSD/utm/rshb,
на виртуалке /Volumes/My Shared Files/RSHB. Проверка 12.10.2026 при включённом Континенте: 30 обменов из 30 через
временный файл и переименование, время круга 0,75–0,82 с независимо от размера (200 Б – 300 КБ), недописанных и
«залипших» удалённых файлов 0 с обеих сторон.
Решения владельца 12.10.2026 (сессия brainstorming): транспорт через общую папку; вариант A — реле внутри jira-hub serve
(не отдельный процесс и не обмен пакетами целиком); HTTP API хаба и обработчики не меняются; у агента транспорт выбирается
по hub_url; HTTP-транспорт остаётся; дизайн частей 1–4 (формат обмена, ошибки и уборка, настройки и запуск, тесты)
одобрен.
What Changes
- jira-hub: поток реле в
serve, включаемый настройкойrelay_dir. Реле забирает файлы-запросы агента из<relay_dir>/req/, пересылает их в свой HTTP на127.0.0.1:<port>и кладёт ответы в<relay_dir>/resp/. Новая настройкаrelay_dir(строка илиnull), проверяется при записи. - jira-agent: транспорт
folder:—hub_url = "folder:<путь>"создаёт файловый клиент хаба с тем же интерфейсом, ошибки сводятся к тем жеConnectionError/HttpError;checkсообщает транспорт; версия агента 2. - Спеки:
hub-api(ADDED: реле),data-model(MODIFIED: настройки),agent(MODIFIED: состав и настройки; ADDED: транспорт через общую папку).
Non-goals
- Изменения HTTP API, обработчиков, токенов, очереди и контракта команд.
- Обмен пакетами команд целиком через файлы (вариант C), работа агента без хаба.
- Несколько агентов на одной папке, шифрование файлов в общей папке.
- Обход или настройка фильтра Континента; запрос исключения в ИБ банка — вне репозиториев.
- Исправление находки M-2 (потерянный ответ
claim) в общем виде; здесь только защита по запасу времени для реле.