pub enum TrustRootKind {
HubCheckpoint,
Ship,
AgentCert,
SessionHost,
}Expand description
What this trust root is allowed to verify. Encoded kebab-case in JSON because the rest of the codebase (CheckpointKind, etc.) does the same.
Adding a variant is a wire-format event: every JSON consumer that
matches exhaustively on this enum must add the new arm in the same
release. Phase 1 of the agent-invitations spec adds SessionHost
for invitation issuer pinning; that addition is called out as a
breaking change in the CHANGELOG for the same release.
Variants§
HubCheckpoint
Merkle Checkpoint produced by treeship merkle checkpoint. This is
the ship-local journal checkpoint, distinct from the hub-org
JournalCheckpoint kind below.
Ship
JournalCheckpoint of kind hub-org – signed by a remote Hub to
promote a local journal claim to a global single-use claim.
AgentCert
AgentCertificate issued by a ship to one of its agents.
SessionHost
Phase 1 of agent invitations: the host’s signing key that mints
InvitationStatement envelopes. Verifiers (and the
treeship session join flow) require the invitation’s issuer
pubkey to be present in the trust root store under this kind
before honoring the invitation. Separate from Ship so a
machine can trust hub-org checkpoints without implicitly
trusting that hub to host multi-agent rooms.
Implementations§
Trait Implementations§
Source§impl Clone for TrustRootKind
impl Clone for TrustRootKind
Source§fn clone(&self) -> TrustRootKind
fn clone(&self) -> TrustRootKind
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for TrustRootKind
Source§impl Debug for TrustRootKind
impl Debug for TrustRootKind
Source§impl<'de> Deserialize<'de> for TrustRootKind
impl<'de> Deserialize<'de> for TrustRootKind
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for TrustRootKind
Source§impl Hash for TrustRootKind
impl Hash for TrustRootKind
Source§impl PartialEq for TrustRootKind
impl PartialEq for TrustRootKind
Source§fn eq(&self, other: &TrustRootKind) -> bool
fn eq(&self, other: &TrustRootKind) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for TrustRootKind
impl Serialize for TrustRootKind
impl StructuralPartialEq for TrustRootKind
Auto Trait Implementations§
impl Freeze for TrustRootKind
impl RefUnwindSafe for TrustRootKind
impl Send for TrustRootKind
impl Sync for TrustRootKind
impl Unpin for TrustRootKind
impl UnsafeUnpin for TrustRootKind
impl UnwindSafe for TrustRootKind
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.