pub struct Act {
pub sub: String,
pub act: Option<Box<Act>>,
}Expand description
The acting party (RFC 8693 §4.1), and — through Self::act — the
delegation chain behind it.
Wire shape is the RFC’s: {"sub": "…", "act": {"sub": "…"}}. The
outermost value is the current actor; each nested act is the party
that authorized the one enclosing it.
Fields§
§sub: StringIdentifier of the acting party. PAS stamps the actor’s ppnum_id
(ULID); the engine does not validate the format, because a future
Token Exchange phase may carry non-ppoppo principals here.
act: Option<Box<Act>>The prior link in the delegation chain, if any. Box because the
type is self-referential; None for the common single-hop case.
Implementations§
Source§impl Act
impl Act
Sourcepub fn new(sub: impl Into<String>) -> Self
pub fn new(sub: impl Into<String>) -> Self
A single-hop actor — the shape both PAS agent-flow mint sites emit.
There is deliberately no chain builder: no mint site nests today
(the retired flat delegator claim could not express a chain
either, so nothing regresses). The engine still enforces
Self::depth on inbound tokens regardless, because a nested
act arriving at verify is either another issuer’s or a forgery.