pub struct StepPointer {
pub name: String,
pub size_bytes: u64,
pub file_path: Option<String>,
pub content_url: String,
pub sha256: String,
}Expand description
A pointer to one preceding step’s OUTPUT, embedded into
AgentContextView::steps by crates/mlua-swarm-server/src/worker.rs’s
GET /v1/worker/prompt handler (the projection-adapter ST5 Worker
axis) — never the OUTPUT content itself (pointer-only invariant: no
preview, no content bytes, matching the “worker payload never
inline-embeds a projected value” contract crate::core::projection’s
module doc establishes for the directive header).
A worker resolves the pointed-at content either by Reading
Self::file_path (when Some, the step’s OUTPUT was materialized to
disk — see crate::core::projection::FileProjectionAdapter) or by
fetching Self::content_url (always present; the HTTP debug-plane
route GET /v1/tasks/:id/runs/:run/steps/:step/content this URL
addresses serves the same content regardless of whether a materialized
file exists).
Fields§
§name: StringThe producing step’s name (the Blueprint AgentDef.name /
flow.ir Step.ref that emitted this OUTPUT).
size_bytes: u64Byte length of the OUTPUT body as served by Self::content_url
(the exact bytes an HTTP GET of that URL returns).
file_path: Option<String>Absolute filesystem path to the materialized projection file
(crate::core::projection::FileProjectionAdapter’s
crate::core::projection_placement::ProjectionPlacement
resolver’s target — byte-compat default layout
<root>/workspace/tasks/<step_id>/ctx/<name>.md), when the
step’s submission was materialized to disk. None when the OUTPUT
is only resolvable via Self::content_url (in-memory Data-plane
record, or a RunRecord.result_ref fallback — see
crates/mlua-swarm-server/src/projection.rs’s module doc).
content_url: StringFetch URL for the step’s OUTPUT content — absolute
(AppState.base_url-prefixed) when the server has a configured
base URL, relative otherwise. Always present, regardless of
Self::file_path.
sha256: StringSHA-256 hex digest of the OUTPUT body — change detection, matching
the HTTP debug-plane route’s ETag header value (sha256:<hex>,
minus the sha256: prefix).
Trait Implementations§
Source§impl Clone for StepPointer
impl Clone for StepPointer
Source§fn clone(&self) -> StepPointer
fn clone(&self) -> StepPointer
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 StepPointer
impl Debug for StepPointer
Source§impl<'de> Deserialize<'de> for StepPointer
impl<'de> Deserialize<'de> for StepPointer
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>,
Source§impl JsonSchema for StepPointer
impl JsonSchema for StepPointer
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for StepPointer
impl PartialEq for StepPointer
Source§fn eq(&self, other: &StepPointer) -> bool
fn eq(&self, other: &StepPointer) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for StepPointer
impl Serialize for StepPointer
impl StructuralPartialEq for StepPointer
Auto Trait Implementations§
impl Freeze for StepPointer
impl RefUnwindSafe for StepPointer
impl Send for StepPointer
impl Sync for StepPointer
impl Unpin for StepPointer
impl UnsafeUnpin for StepPointer
impl UnwindSafe for StepPointer
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
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<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> 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