Architecture
Модули, версии контрактов, capabilities и подписки. Граф показывает устройство программы, а не технические if/switch/merge.
Module accepts(event, state) execute(context) emits(events, effects, waits)
Agent остаётся продуктовой сущностью. Под ним может жить визуальный процесс или нативная Program с событиями, состоянием, ожиданиями и изолированным исполнением.
PostgreSQL хранит journal, state и outbox. Redis ускоряет пробуждения и может быть восстановлен.
Модули, версии контрактов, capabilities и подписки. Граф показывает устройство программы, а не технические if/switch/merge.
Module accepts(event, state) execute(context) emits(events, effects, waits)
Каждое событие получает correlation и causation. Подписчики независимо решают, принимать его или нет.
cron.reconciliation.requested → source.loaded → reconciliation.completed → report.created
Run закреплён за неизменяемым Release. Активации, попытки, effects и waits остаются наблюдаемыми после перезапуска.
running → waiting_approval
→ resumed
→ completedState patch, новые события и outbox фиксируются одной транзакцией. Неопределённый результат внешней записи требует reconciliation.
transaction {
state + events + outbox
}
redis = recoverable acceleratorПользователи, пространства, Agent identity, Connections, Secrets, Policies, billing и registry раннеров.
Programs, Releases, event journal, state, activations, barriers, waits, timers и effect intents.
Изолированно исполняет ActivationSpec и возвращает результат. Следующий модуль выбирает Runtime.
Не заявляем exactly-once, unrestricted code, универсальный failover или «память агента». Эти свойства появятся только после соответствующих технических gates.