pub struct PluginManifest {
pub plugin_version: PluginManifest_PluginVersion,
pub plugin_id: String,
pub actor_id: ActorId,
pub kind: PluginManifest_Kind,
pub entry: String,
pub identity_pub: String,
pub signature: SignatureEnvelope,
pub capabilities: Vec<Capability>,
pub imports: Option<Vec<String>>,
pub proof_profile: Option<ProofLevel>,
pub conformance_profile: Option<Vec<String>>,
pub description: Option<String>,
}Expand description
Declarative manifest describing a TrustForge plugin. See TF-0008.
Fields§
§plugin_version: PluginManifest_PluginVersionVersion of the plugin-manifest schema itself.
plugin_id: StringReverse-DNS-style plugin identifier, e.g. com.example.my-plugin.
actor_id: ActorIdActor URI the plugin operates as once loaded. Use tf:actor:plugin:…
kind: PluginManifest_KindPlugin runtime kind.
entry: StringPath (relative to the manifest) to the plugin entry point — a .js/.ts/.mjs module for native, or a .wasm file for WASM.
identity_pub: StringBase64-encoded ed25519 public key that signs this manifest.
signature: SignatureEnvelopeSignature envelope over the canonical form of this manifest with signature.signature cleared.
capabilities: Vec<Capability>Capabilities the plugin declares it needs. Enforced by the registry + guard.
imports: Option<Vec<String>>WASM-only: host functions the plugin is allowed to import. The registry enforces that only these imports are supplied.
proof_profile: Option<ProofLevel>Optional proof level at which this plugin’s actions should be emitted.
conformance_profile: Option<Vec<String>>Conformance profile labels this plugin claims (e.g. tf-plugin-compatible, tf-bridge-compatible). The registry surfaces this so daemons can refuse plugins that don’t claim a profile they require.
description: Option<String>Human-readable description.
Trait Implementations§
Source§impl Clone for PluginManifest
impl Clone for PluginManifest
Source§fn clone(&self) -> PluginManifest
fn clone(&self) -> PluginManifest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PluginManifest
impl Debug for PluginManifest
Source§impl<'de> Deserialize<'de> for PluginManifest
impl<'de> Deserialize<'de> for PluginManifest
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 PluginManifest
Source§impl PartialEq for PluginManifest
impl PartialEq for PluginManifest
Source§fn eq(&self, other: &PluginManifest) -> bool
fn eq(&self, other: &PluginManifest) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for PluginManifest
impl Serialize for PluginManifest
impl StructuralPartialEq for PluginManifest
Auto Trait Implementations§
impl Freeze for PluginManifest
impl RefUnwindSafe for PluginManifest
impl Send for PluginManifest
impl Sync for PluginManifest
impl Unpin for PluginManifest
impl UnsafeUnpin for PluginManifest
impl UnwindSafe for PluginManifest
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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§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.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more