const LOOP_BODY: g::Program<LoopBodySteps> = g::seq(
g::send::<Agent, Browser, BrowserAction, 0>(),
g::send::<Browser, Agent, BrowserObservation, 0>(),
);
const ADD_TO_CART_APPROVAL: g::Program<AddToCartApprovalSteps> = g::seq(
g::send::<Agent, Human, RequestApproval, 0>(),
g::seq(
g::send::<Human, Agent, ApprovalDecision, 0>(),
g::route::<0, _>(
g::route_chain::<0, AddToCartArm>(ADD_TO_CART_ARM)
.and::<SkipAddToCartArm>(SKIP_ADD_TO_CART_ARM),
),
),
);
So even AI-agent behavior is confined by protocol structure: illegal traces (skip/reorder/reuse/wrong branch) are unrepresentable, not merely blocked by ad hoc runtime checks.