Loading
Security
Properties
No client can cause a world-state commit by sending a message.
An actor cannot attempt anything its role did not declare.
The same observation, manifest and goal produce the same plan.
A plan that cannot pay for itself never partially executes.
Data the agent was not given cannot leak from the agent.
An external model can propose. It cannot act.
Degradation stops the actor; it does not loosen the rules.
The runtime does not gather account identifiers on your behalf.
Capability boundaries
| Capability | Client | Server runtime | External model |
|---|---|---|---|
| Read world state | Replicated view only | Full authoritative state | Redacted observation, if enabled |
| Submit a goal | As a request, subject to validation | Directly | As a proposal |
| Select the next action | Never | Planner output | May rank or suggest |
| Skip authority validation | Never | Validation is not optional | Never |
| Move resources | Never | Atomic transaction | Never |
| Commit world state | Never | Sole writer | Never |
Failure behaviour
| Condition | Behaviour |
|---|---|
| The external provider times out or is unreachable | The deterministic local planner continues. The actor keeps operating. |
| A role manifest fails to load or fails validation | Attachment is refused. The actor does not run with a partial or default role. |
| A proposed action fails authority validation | A typed rejection is returned and the actor re-plans without that action. |
| A resource transaction cannot be satisfied | The whole plan is discarded before actuation. Nothing partially applies. |
| The planner cannot produce a valid plan | The actor holds its last safe state and stops issuing actions. |
| An adapter throws during actuation | The action is marked failed, the transaction is rolled back, and the fault is recorded in diagnostics. |
Privacy posture