pub struct RequestIdentity {
pub namespace: String,
pub actor_id: Option<String>,
pub visible_namespaces: Vec<String>,
}Expand description
Per-request identity context that overrides a VerbRegistry’s
construction-baked default_namespace / actor_id / visible_namespaces
for exactly one VerbRegistry::dispatch_with_identity call (ADR-096
Fork 1 — warm-daemon per-request identity).
A single warm registry is built once with a baked identity, but must be
able to serve requests whose caller resolved a different attribution
identity (e.g. a different project-local [actor]) without a cold
fallback and without mis-stamping writes under the registry’s own baked
actor. Supplying Some(RequestIdentity { .. }) threads the caller’s
identity through token minting for that one call; the registry’s fields
(and every other in-flight call) are untouched. None is exactly
VerbRegistry::dispatch — the baked scalars apply, unchanged from
before this type existed.
Fields§
§namespace: StringStorage/gate default namespace for this request (used when the verb’s
own params carry no explicit namespace field). Overrides
VerbRegistry::default_namespace.
actor_id: Option<String>Write-stamp / gate actor label for this request (ADR-057). Overrides
VerbRegistry::actor_id. None mints ActorRef::anonymous(), same
as an unconfigured baked actor_id.
visible_namespaces: Vec<String>Extra read-visibility namespaces for this request (ADR-007 Rev 4 Rule
3b). Overrides VerbRegistry::visible_namespaces. Entries that fail
Namespace::parse are skipped with a tracing::warn! rather than
failing the whole request — a single malformed visibility entry from a
caller-supplied frame must not block dispatch.
Trait Implementations§
Source§impl Clone for RequestIdentity
impl Clone for RequestIdentity
Source§fn clone(&self) -> RequestIdentity
fn clone(&self) -> RequestIdentity
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more