pub struct BootstrapRequest<'a> {
pub target: &'a str,
pub inputs: &'a [(&'a str, &'a [u8])],
}Expand description
Host-supplied bootstrap input staging request — borrowed shape per
the F5 host-driven bootstrap spec
(docs/internal/superpowers/specs/2026-06-25-host-driven-bootstrap.md
§3.1). The host hands the engine a target name plus an ordered
(input_name, value_bytes) slice; the engine validates against the
target’s declared formal input ports and runs the Principle 1a copy
(cap-check → try_reserve_exact → extend_from_slice) so the
caller’s borrowed buffers can drop the moment
crate::engine::core::Engine::enqueue_bootstrap_request returns.
Owned-form storage on the engine’s internal conflict queue lives in
OwnedBootstrapRequest; the borrowed form here is the host-facing
request shape only.
Fields§
§target: &'a strTarget function name. Must match an entry in the engine’s
install_order queue (i.e. a Module whose bootstrap
FunctionProto landed via install_function_library).
inputs: &'a [(&'a str, &'a [u8])]Ordered (input_name, value_bytes) pairs. Validated against
the target’s declared input formals; missing required inputs
surface as BootstrapError::MissingInput and unknown ones as
BootstrapError::UnknownInput before any staging happens.
Auto Trait Implementations§
impl<'a> Freeze for BootstrapRequest<'a>
impl<'a> RefUnwindSafe for BootstrapRequest<'a>
impl<'a> Send for BootstrapRequest<'a>
impl<'a> Sync for BootstrapRequest<'a>
impl<'a> Unpin for BootstrapRequest<'a>
impl<'a> UnsafeUnpin for BootstrapRequest<'a>
impl<'a> UnwindSafe for BootstrapRequest<'a>
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T> ErasedComponent for T
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request