3 KiB
Часовой дайджест — 2026-10-02 09:00–10:00 UTC
Главное: фикс TG-подключения из UI дашборда (запрос Алекса) — в проде
Кнопка «Подключить Telegram» для simbiot-агентов падала: старый путь
шёл по SSH на машину агента (вход закрыт, e2e 01.10) с hermes-конфигами.
Алекс спросил в 08:14 (m-516173361); мин-триаж закрыл его ответом, поэтому
полный отчёт доставлен идемпотентным tg-notify (ключ settg-fix-hour-2610020925).
Решение (канал, без SSH): api_agent_set_tg для simbiot/portal-channel
агентов шлёт команду /set-tg-bot <token> (+ allowed=<tg_id> владельца из users.tg_id) через agent_portal_chat; харнес перехватывает её в
portal_channel.pull() до инбокса (токен-секрет не попадает в стор/LLM,
команда мгновенно ack'ается), апплаер: getMe-самотест → атомарный .env
(SIMBIOT_TG_TOKEN + SIMBIOT_TG_ALLOWED, старый аллоулист сохраняется) →
рестарт только simbiot-harness-tg → отчёт «✅ Telegram подключён: @{bot}»
в чат портала. Идемпотентно на повтор (тот же токен — «уже подключён»).
E2E на живом канале: команда → consumed=1, стор чист (0 инбоксов),
.env цел (все ключи на месте), TgChannelConfigured в сторе, отчёт в чате
портала. UI (agent_detail.html) показывает message из ответа вместо
жёсткого «Подключено» — для канала «заработает через 1–2 мин».
Коммиты/деплой: coop 30e156a (github + forgejo), harness 46a4728
(git.cil.by); coop-portal рестартнут, HTTP 200.
Эскалации
e-261002085000-b2253c(warn, min→hour) — закрыта. Диагноз: min-тик падал по 300с-таймауту, а воркер после SchedulerTimeout продолжал писать BudgetSpent/ToolCalled (race процесс-группы → burn 9router вхолостую). Фиксы вisolated_runner(kill процесс-группы + ожидание смерти) иtick_timeoutmin 300→480; закрыто задачей t-261002090242 (result: complete, тесты 3/3 зелёные). Повтор на 480с → следующий часовой переэскалирует day.
Система
- Фоновые задачи: пусто. Доска: 3 L ready (дневному уровню), S/M ready: 0.
- Контекст-схема по тактам не тронута: min 256k / hour 512k / day 1M.
- getMe live: текущий бот
@juno42bot, self-test нового пути — ok.