pub struct HumanStepIR {
pub kind: HumanKind,
pub base: StepBase,
pub mode: HumanMode,
pub prompt: String,
pub presents: Vec<Expr>,
pub decisions: Option<Vec<String>>,
pub output_schema: Option<JsonSchemaDocument>,
pub timeout_ms: u64,
pub on_timeout: OnTimeout,
}Expand description
Human step (02 §4.4): human collaboration is a formal node (principle 8).
onTimeout is const "unknown": a human step that times out never
defaults to pass or fail (principles 4/8). timeoutMs is required
(unbounded waits are runSuspended, not silent hangs). The
provideInput ⇒ outputSchema requirement is a schema conditional.
Fields§
§kind: HumanKindConst "human".
base: StepBaseCommon step envelope (flattened on the wire).
mode: HumanModeInteraction mode.
prompt: StringThe question posed to the human.
presents: Vec<Expr>Evidence/values presented to the human (expressions).
decisions: Option<Vec<String>>Enumerated options for judge/confirm modes.
output_schema: Option<JsonSchemaDocument>Input contract for provideInput mode (required there, schema-enforced).
timeout_ms: u64Required budget; expiry yields verdict unknown.
on_timeout: OnTimeoutConst "unknown" (principle 4).
Trait Implementations§
Source§impl Clone for HumanStepIR
impl Clone for HumanStepIR
Source§fn clone(&self) -> HumanStepIR
fn clone(&self) -> HumanStepIR
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 HumanStepIR
impl Debug for HumanStepIR
Source§impl<'de> Deserialize<'de> for HumanStepIR
impl<'de> Deserialize<'de> for HumanStepIR
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 HumanStepIR
impl JsonSchema for HumanStepIR
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 HumanStepIR
impl PartialEq for HumanStepIR
Source§impl Serialize for HumanStepIR
impl Serialize for HumanStepIR
impl StructuralPartialEq for HumanStepIR
Auto Trait Implementations§
impl Freeze for HumanStepIR
impl RefUnwindSafe for HumanStepIR
impl Send for HumanStepIR
impl Sync for HumanStepIR
impl Unpin for HumanStepIR
impl UnsafeUnpin for HumanStepIR
impl UnwindSafe for HumanStepIR
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