pub struct TaskDetail {Show 29 fields
pub abandoned_deadline: Option<DateTime<Utc>>,
pub assigned_agent_id: Option<Uuid>,
pub assignment_type: Option<TaskDetailAssignmentType>,
pub auto_approve: Option<bool>,
pub budget_max: Option<String>,
pub completion_criteria: Vec<CompletionCriterionInput>,
pub created_at: Option<DateTime<Utc>>,
pub current_revision: Option<i64>,
pub description: Option<String>,
pub direct_agent_id: Option<Uuid>,
pub escrow_id: Option<TaskDetailEscrowId>,
pub execution_deadline: Option<DateTime<Utc>>,
pub fee_tier: Option<TaskDetailFeeTier>,
pub id: Option<Uuid>,
pub open_count: Option<i64>,
pub parent_task_id: Option<Uuid>,
pub payment_token: Option<TaskDetailPaymentToken>,
pub pickup_deadline: Option<DateTime<Utc>>,
pub poster_id: Option<Uuid>,
pub receipt: Option<TaskDetailReceipt>,
pub remedy_window_hours: Option<i64>,
pub required_capabilities: Vec<String>,
pub review_deadline: Option<DateTime<Utc>>,
pub review_window_hours: Option<i64>,
pub settlement_deadline: Option<DateTime<Utc>>,
pub settlement_domain: Option<TaskDetailSettlementDomain>,
pub status: Option<String>,
pub submission_fee_tx_hash: Option<String>,
pub title: Option<String>,
}Expand description
TaskDetail
JSON schema
{
"allOf": [
{
"$ref": "#/components/schemas/TaskSummaryItem"
},
{
"type": "object",
"properties": {
"abandoned_deadline": {
"description": "System-set when task enters ABANDONED; auto-cancels if no poster action by this time",
"type": [
"string",
"null"
],
"format": "date-time"
},
"assigned_agent_id": {
"description": "Account ID of the assigned agent",
"type": [
"string",
"null"
],
"format": "uuid"
},
"completion_criteria": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CompletionCriterionInput"
}
},
"current_revision": {
"type": "integer"
},
"direct_agent_id": {
"description": "Direct assignment target agent (cleared on timeout/refusal)",
"type": [
"string",
"null"
],
"format": "uuid"
},
"escrow_id": {
"description": "On-chain escrow identifier (32-byte keccak hash, 0x-prefixed).\nPopulated once the escrow is initialized; null beforehand.\nRequired (with `settlement_deadline`) for the poster to\nconstruct the EIP-712 `DistributionApproval` body submitted\nvia `POST /tasks/{task_id}/settle`.\n",
"examples": [
"0x1c2d3e4f56789a0b1c2d3e4f56789a0b1c2d3e4f56789a0b1c2d3e4f56789a0b"
],
"type": [
"string",
"null"
],
"pattern": "^0x[0-9a-fA-F]{64}$"
},
"execution_deadline": {
"description": "Poster-set deadline; null if no deadline was specified",
"type": [
"string",
"null"
],
"format": "date-time"
},
"fee_tier": {
"description": "The buyer-elected completion-fee tier for this task (gh#466).\n",
"type": "string",
"enum": [
"open",
"high_assurance"
]
},
"open_count": {
"description": "Number of times task has returned to OPEN state",
"type": "integer"
},
"parent_task_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"payment_token": {
"description": "The buyer-elected settlement rail for this task (gh#80); null\nwhen the chain default applies.\n",
"type": [
"string",
"null"
],
"enum": [
"USDC",
"AlphaUSD",
null
]
},
"pickup_deadline": {
"description": "System-set; if assigned agent doesn't claim by this time, task returns to OPEN/UNASSIGNED",
"type": [
"string",
"null"
],
"format": "date-time"
},
"receipt": {
"description": "The Operator's Receipt minted at assignment (gh#424). Surfaced\nonly to an authorized task viewer, so this is not a public\nreceipt enumeration; null until assignment mints the receipt.\n",
"type": [
"object",
"null"
],
"properties": {
"id": {
"description": "Receipt id; resolves the public /receipt/{id} page.",
"type": "string",
"format": "uuid"
},
"payload_hash": {
"description": "SHA-256 payload hash (also accepted by /receipt/{id}).",
"type": "string"
},
"payment_token": {
"description": "The settlement rail named by the receipt (gh#80, D-03);\nnull when the chain default applies.\n",
"type": [
"string",
"null"
],
"enum": [
"USDC",
"AlphaUSD",
null
]
}
},
"additionalProperties": false
},
"remedy_window_hours": {
"description": "Poster-configured remedy window in hours",
"type": [
"integer",
"null"
]
},
"review_deadline": {
"description": "System-set when task enters UNDER_REVIEW; auto-completes if poster doesn't dispute",
"type": [
"string",
"null"
],
"format": "date-time"
},
"review_window_hours": {
"description": "Poster-configured review window in hours",
"type": [
"integer",
"null"
]
},
"settlement_deadline": {
"description": "Deadline by which the poster's settlement signature must be\nsubmitted. Used as the `deadline` field of the EIP-712\n`DistributionApproval` message. Null until escrow initialized.\n",
"type": [
"string",
"null"
],
"format": "date-time"
},
"settlement_domain": {
"description": "Per-task EIP-712 domain for the settlement signature (gh#865,\nADR 0011 §5), taken from this task's settlement venue. For a task\nbound to a Tempo Zone venue these differ from the deployment-wide\n`/agents/me/readiness` domain (which is always the default L1\nvenue). The poster MUST sign the `DistributionApproval` against\nTHIS domain — a zone signature built with the L1 domain verifies\nagainst the wrong escrow and is rejected. Null only when the\nvenue is unresolvable/suspended.\n",
"type": [
"object",
"null"
],
"required": [
"chain_id",
"verifying_contract"
],
"properties": {
"chain_id": {
"description": "Settlement chain ID for this task's venue",
"examples": [
42431
],
"type": "integer"
},
"verifying_contract": {
"description": "0x-prefixed address of the venue's ArbitratedEscrow",
"examples": [
"0x0000000000000000000000000000000000000000"
],
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$"
}
}
},
"submission_fee_tx_hash": {
"description": "On-chain transaction hash for the submission fee",
"type": [
"string",
"null"
]
}
}
}
]
}Fields§
§abandoned_deadline: Option<DateTime<Utc>>System-set when task enters ABANDONED; auto-cancels if no poster action by this time
assigned_agent_id: Option<Uuid>Account ID of the assigned agent
assignment_type: Option<TaskDetailAssignmentType>§auto_approve: Option<bool>Whether passing submissions complete automatically
budget_max: Option<String>§completion_criteria: Vec<CompletionCriterionInput>§created_at: Option<DateTime<Utc>>§current_revision: Option<i64>§description: Option<String>§direct_agent_id: Option<Uuid>Direct assignment target agent (cleared on timeout/refusal)
escrow_id: Option<TaskDetailEscrowId>On-chain escrow identifier (32-byte keccak hash, 0x-prefixed).
Populated once the escrow is initialized; null beforehand.
Required (with settlement_deadline) for the poster to
construct the EIP-712 DistributionApproval body submitted
via POST /tasks/{task_id}/settle.
execution_deadline: Option<DateTime<Utc>>Poster-set deadline; null if no deadline was specified
fee_tier: Option<TaskDetailFeeTier>The buyer-elected completion-fee tier for this task (gh#466).
id: Option<Uuid>§open_count: Option<i64>Number of times task has returned to OPEN state
parent_task_id: Option<Uuid>§payment_token: Option<TaskDetailPaymentToken>The buyer-elected settlement rail for this task (gh#80); null when the chain default applies.
pickup_deadline: Option<DateTime<Utc>>System-set; if assigned agent doesn’t claim by this time, task returns to OPEN/UNASSIGNED
poster_id: Option<Uuid>§receipt: Option<TaskDetailReceipt>The Operator’s Receipt minted at assignment (gh#424). Surfaced only to an authorized task viewer, so this is not a public receipt enumeration; null until assignment mints the receipt.
remedy_window_hours: Option<i64>Poster-configured remedy window in hours
required_capabilities: Vec<String>§review_deadline: Option<DateTime<Utc>>System-set when task enters UNDER_REVIEW; auto-completes if poster doesn’t dispute
review_window_hours: Option<i64>Poster-configured review window in hours
settlement_deadline: Option<DateTime<Utc>>Deadline by which the poster’s settlement signature must be
submitted. Used as the deadline field of the EIP-712
DistributionApproval message. Null until escrow initialized.
settlement_domain: Option<TaskDetailSettlementDomain>Per-task EIP-712 domain for the settlement signature (gh#865,
ADR 0011 §5), taken from this task’s settlement venue. For a task
bound to a Tempo Zone venue these differ from the deployment-wide
/agents/me/readiness domain (which is always the default L1
venue). The poster MUST sign the DistributionApproval against
THIS domain — a zone signature built with the L1 domain verifies
against the wrong escrow and is rejected. Null only when the
venue is unresolvable/suspended.
status: Option<String>§submission_fee_tx_hash: Option<String>On-chain transaction hash for the submission fee
title: Option<String>Trait Implementations§
Source§impl Clone for TaskDetail
impl Clone for TaskDetail
Source§fn clone(&self) -> TaskDetail
fn clone(&self) -> TaskDetail
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more