pub struct CapabilityManifest {Show 22 fields
pub id: String,
pub contract_version: String,
pub content_digest: String,
pub kind: CapabilityKind,
pub input_schema: Value,
pub output_schema: Value,
pub effect: Effect,
pub deterministic: bool,
pub idempotency_mode: IdempotencyMode,
pub retry: RetryPolicy,
pub permissions: BTreeSet<String>,
pub required_guards: BTreeSet<GuardKind>,
pub taint_rules: Value,
pub resource_cost: Value,
pub supports_simulation: bool,
pub supports_replay: bool,
pub supports_paper: bool,
pub supports_live: bool,
pub clock_requirements: Value,
pub data_requirements: Value,
pub supports_reconciliation: bool,
pub lifecycle: CapabilityLifecycle,
}Expand description
Immutable contract of a trigger, expression, guard, action or sink.
Fields§
§id: StringStable identifier of this record.
contract_version: StringContract version of the capability.
content_digest: StringContent hash that makes the referenced artifact immutable.
kind: CapabilityKindDiscriminator naming the variant of this record.
input_schema: ValueJSON Schema for provider input.
output_schema: ValueJSON Schema for provider output.
effect: EffectSide-effect class of the action.
deterministic: boolWhether equal inputs always produce equal outputs.
idempotency_mode: IdempotencyModeRetry safety class.
retry: RetryPolicyRetry policy.
permissions: BTreeSet<String>Permissions granted or required.
required_guards: BTreeSet<GuardKind>Guards that must dominate the action.
taint_rules: ValueWhich inputs may be LLM-tainted.
resource_cost: ValueDeclared cost for budgeting.
supports_simulation: boolUsable in simulation.
supports_replay: boolUsable in backtest replay.
supports_paper: boolUsable in paper mode.
supports_live: boolUsable live.
clock_requirements: ValueClock guarantees the provider needs.
data_requirements: ValueData freshness the provider needs.
supports_reconciliation: boolWhether the provider can observe a dispatched action’s outcome.
lifecycle: CapabilityLifecycleDeployment state.
Implementations§
Source§impl CapabilityManifest
impl CapabilityManifest
Sourcepub fn action(
id: impl Into<String>,
contract_version: impl Into<String>,
content_digest: impl Into<String>,
effect: Effect,
idempotency_mode: IdempotencyMode,
supports_reconciliation: bool,
) -> Self
pub fn action( id: impl Into<String>, contract_version: impl Into<String>, content_digest: impl Into<String>, effect: Effect, idempotency_mode: IdempotencyMode, supports_reconciliation: bool, ) -> Self
Manifest for an action capability with conservative defaults (one attempt, 30 s timeout).
Sourcepub fn validate(&self) -> Result<(), ContractError>
pub fn validate(&self) -> Result<(), ContractError>
Check this contract’s invariants; returns the first violation.
Sourcepub fn can_start_new_work(&self) -> bool
pub fn can_start_new_work(&self) -> bool
Whether new intents may pin this provider (installed or active).
Trait Implementations§
Source§impl Clone for CapabilityManifest
impl Clone for CapabilityManifest
Source§fn clone(&self) -> CapabilityManifest
fn clone(&self) -> CapabilityManifest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more