Principal and actor
A principal owns the rights and obligations created by a market. An actor sends a request to Ambient. A person acting directly can be both. An agent has its own actor identity and usually represents a different principal. Ambient authenticates the actor, then checks whether that actor may perform the requested action for the named principal.Delegation
A delegation is a scoped, revocable grant from a principal to an agent. It names the delegate actor, allowed actions, and optional expiry. Every delegated command cites the delegation asauthorityRef.
The implemented scopes are:
Market
A market combines:- a public subject describing what is offered or requested;
- a versioned mechanism describing how participants act and how an outcome is selected;
- capacity, timing, pricing, and confirmation rules; and
- an optional funding policy.
funding.mode: none, so any
price or bid is an agreement term rather than money collected by Ambient.
See Market mechanisms for the four implemented choices: direct
claim, sealed auction, request for offers and lottery.
Commitment
A commitment records the agreement produced by a market. Depending on the mechanism, it may be created immediately or wait for one or more principals to confirm.Command and event
Every state-changing action is a command with an actor-scopedcommandId.
Ambient records whether it was accepted or deterministically rejected.
Accepted commands produce ordered events describing their transitions.
Server order and server time are authoritative. An exact retry with the same
command ID returns the stored decision. Reusing the ID for changed input is an
idempotency conflict. Deadline firings are recorded system commands rather
than invisible background changes.