pub struct ServiceMutationResponse {
pub log_entry_version_id: String,
pub effective_at: String,
pub drain_until: Option<String>,
pub vta_did: String,
pub serverless: bool,
}Expand description
Shared response body for every successful service-mutation operation (REST + DIDComm enable/update/disable/rollback).
drain_until is Some(rfc3339) only for DIDComm operations
that scheduled a drain (update_didcomm, disable_didcomm,
or a rollback_didcomm whose fail-forward target was a drain
transition). REST mutations always set it to None.
All timestamps are RFC 3339 strings to match the existing wire
convention from DisableDidcommResponse::drains_until.
Fields§
§log_entry_version_id: StringVersion-id of the new WebVH LogEntry produced by the mutation. Joins telemetry events to chain history.
effective_at: StringRFC 3339 timestamp when the mutation took effect — the same instant stamped on the new LogEntry.
drain_until: Option<String>Some(rfc3339) when the mutation scheduled a DIDComm
drain; None otherwise.
vta_did: StringThe VTA’s own DID — subject of the LogEntry this mutation
wrote. Carried so the CLI can print follow-up commands like
pnm webvh did-log <vta_did> for serverless deployments
without forcing the operator to look it up.
#[serde(default)] + skip_serializing_if = "String::is_empty"
keep the wire compact and back-compat with older servers.
serverless: boolTrue when the VTA’s DID is self-hosted (server_id = "serverless"). The new LogEntry is persisted locally but
NOT pushed to any webvh host — the operator must fetch the
updated did.jsonl and redeploy. #[serde(default)] for
back-compat — older servers don’t emit the field; old
clients treat absent → false (no spurious hint).
Trait Implementations§
Source§impl Clone for ServiceMutationResponse
impl Clone for ServiceMutationResponse
Source§fn clone(&self) -> ServiceMutationResponse
fn clone(&self) -> ServiceMutationResponse
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more