pub trait RuntimeBootstrapPolicy: AllocationPolicy {
// Required method
fn runtime_bootstrap_identity(
&self,
) -> Result<PolicyIdentity, PolicyIdentityError>;
// Provided method
fn prepare_bootstrap(
&self,
_admission: &mut BootstrapAdmission<'_>,
) -> Result<(), Self::Error> { ... }
}Expand description
RuntimeBootstrapPolicy
Allocation policy with an explicit semantic identity for runtime bootstrap.
crate::MemoryRuntime binds its successful bootstrap to this identity.
Repeated bootstrap is idempotent only when the caller supplies the same
sealed declaration snapshot and the same policy identity. Implementations
should change the identity whenever policy configuration or semantics
change. Configuration-dependent policies should include a digest derived
from their effective configuration.
Required Methods§
Sourcefn runtime_bootstrap_identity(
&self,
) -> Result<PolicyIdentity, PolicyIdentityError>
fn runtime_bootstrap_identity( &self, ) -> Result<PolicyIdentity, PolicyIdentityError>
Construct the bounded semantic identity of this policy configuration.
Provided Methods§
Sourcefn prepare_bootstrap(
&self,
_admission: &mut BootstrapAdmission<'_>,
) -> Result<(), Self::Error>
fn prepare_bootstrap( &self, _admission: &mut BootstrapAdmission<'_>, ) -> Result<(), Self::Error>
Admit recovered identity and complete declarations before resolution.
Runs once per cold bootstrap attempt after validated recovery. Warm bootstrap/adoption does not replay it. The default selects no historical keys. Hosts compose generated consumers here under their existing policy and bucket profile. Include these semantics in the policy identity.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".