Автор выложил фреймворк Once: открытый проект и статью о том, почему AI-агенты исполняют действия дважды. Вышла техническая paper, SDK на TypeScript и Python с поддержкой MCP. Проблема. Агент бронирует, отменяет, отправляет, деплоит — и отваливается по таймауту. Действие уже произошло, но агент об этом не знает и запускает повтор. Стандартный retry-механизм не отличает «не сработало» от «сработало, но ответ потерялся». Главное: • Три состояния операции: CONFIRMED, ABSENT, UNKNOWN • Три стратегии маршрутизации: DIRECT, PROTECT, BLOCK • Логическая идентичность операции, привязанная к телу запроса • SDK на TypeScript и Python + поддержка MCP Фреймворк не даёт универсального exactly-once для любого внешнего провайдера: нужны контракты на дедупликацию или сверку с авторитетной системой. Что это значит: конкретный инструмент для инженеров, которые собирают AI-агентов с реальными побочными эффектами — бронированиями, платежами, деплоями. Не теория, а рабочий код.