Skip to content

Osinara v0.16.6

Choose a tag to compare

@github-actions github-actions released this 24 Aug 15:29
Immutable release. Only release title and notes can be modified.
4c8722a

Osinara v0.16.6

Patch-релиз ограничивает ожидание пользовательского подтверждения, после которого Eve держала
turn припаркованным бессрочно.

Confirmation Window

  • Неотвеченные tool-approval и question отменяются через пять минут; tool не исполняется.
  • Причина уходит в session context, поэтому агент предупреждает пользователя, что подтверждение
    не получено и действие не отработало, и продолжает работу.
  • Повторный запрос того же подтверждения агент не делает, пока пользователь не попросит явно.
  • Framework session-limit и OAuth-авторизация в окно не входят; строки без доказанного типа
    запроса fail-closed и не отменяются никогда.

Почему это понадобилось

Approvals не имели срока жизни, а sessionNeedsRotation безусловно ветовал ротацию, пока
pending_operation истинно. Один неотвеченный запрос от 21 августа заморозил личный чат владельца
почти на трое суток: каждый следующий turn парковался с неразрешённым input batch, ответа не было,
при этом группы работали в своих сессиях. Ручное восстановление уже применялось в v0.16.3 и v0.16.4,
но механизма самовосстановления не появилось.

Границы

  • Ответ Eve несёт заново провалидированный Telegram auth: Eve заменяет auth сессии доставленным,
    и фиктивный принципал лишил бы возобновлённый turn прикладного контекста.
  • Отмена берёт строку под lease и требует, чтобы сессия всё ещё владела припаркованным Eve run.
  • Терминальное состояние пишется только после того, как Eve приняла отмену.
  • Погашенное по таймауту подтверждение не является доказательством исполнения tool.
  • Sweep живёт за приватным роутом, недоступным с edge и защищённым внутренним токеном.

Проверка

  • Unit- и integration-контракты на окно, lease, гонку с нажатием кнопки, исключение session-limit
    и fail-closed для строк без типа.
  • TypeScript typecheck, полный Vitest suite и Docker Compose gate с реальной PostgreSQL.