pub struct WorkerPayload {
pub task_id: StepId,
pub attempt: u32,
pub agent: String,
pub system: Option<String>,
pub prompt: String,
pub context: Option<AgentContextView>,
}Expand description
Response body for HTTP /v1/worker/prompt — the shape that lets a
SubAgent pull its task input in a single round-trip.
system: the renderedAgentDef.profile.system_prompt(Nonewhen the profile is absent).prompt:TaskSpec.initial_directiverendered toStringat this boundary (issue #18). The engine storesinitial_directiveasValueend-to-end (EngineState.prompts/Engine::fetch_prompt); the coercion toString(strings verbatim, anything else serde-stringified) happens here inEngine::fetch_worker_payload*because the/v1/worker/promptHTTP wire format is a plain string.agent:TaskSpec.agent— the agent name this dispatch is targeting.attempt: the 1-based attempt number, matching the currenttask.attempt.context: GH #20 Contract C — the materializedcrate::core::agent_context::AgentContextViewfor this(task_id, attempt), whenAgentContextMiddlewarewas layered onto the spawner stack that dispatched it.Noneon pre-#20 payloads (backward compat) and whenever the middleware was never layered.
Fields§
§task_id: StepIdThe task this payload was fetched for. Typed StepId since issue
#14 — serde keeps the wire shape a plain string.
attempt: u321-based attempt number, matching the current task.attempt.
agent: StringName of the agent this dispatch is targeting.
system: Option<String>Rendered system prompt, if the agent profile defines one.
prompt: StringThe task’s initial directive, baked in at dispatch preparation.
context: Option<AgentContextView>GH #20 Contract C: the materialized task-level context view — see the struct doc above.
Trait Implementations§
Source§impl Clone for WorkerPayload
impl Clone for WorkerPayload
Source§fn clone(&self) -> WorkerPayload
fn clone(&self) -> WorkerPayload
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for WorkerPayload
impl Debug for WorkerPayload
Source§impl<'de> Deserialize<'de> for WorkerPayload
impl<'de> Deserialize<'de> for WorkerPayload
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl JsonSchema for WorkerPayload
impl JsonSchema for WorkerPayload
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreSource§impl PartialEq for WorkerPayload
impl PartialEq for WorkerPayload
Source§fn eq(&self, other: &WorkerPayload) -> bool
fn eq(&self, other: &WorkerPayload) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for WorkerPayload
impl Serialize for WorkerPayload
impl StructuralPartialEq for WorkerPayload
Auto Trait Implementations§
impl Freeze for WorkerPayload
impl RefUnwindSafe for WorkerPayload
impl Send for WorkerPayload
impl Sync for WorkerPayload
impl Unpin for WorkerPayload
impl UnsafeUnpin for WorkerPayload
impl UnwindSafe for WorkerPayload
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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