Event system, EventActions, and Hook trait for the behest agent runtime.
This crate provides:
- [
AgentEvent]: a unified enum covering the full agent lifecycle - [
EventActions]: side-effect declarations that accompany events - [
Hook]: single-method observer that returns optionalEventActions - [
HookStack]: ordered dispatch of multiple hooks
Design
Hooks use a single-method pattern (inspired by Rig): one on_event()
method receives an [AgentEvent] and returns Vec<EventActions>. Adding
new event types never requires changing the Hook trait signature.