Deferred Operation Status v1¶
Source schema: doc/schemas/deferred-operation-status.v1.schema.json
Status payload for an operation previously accepted as deferred-operation.v1. Pending and running statuses keep the caller suspended; terminal statuses either resume with result or end the continuation.
Governing Basis¶
Project Lineage¶
Fields¶
| Field | Required | Shape | Description |
|---|---|---|---|
schema |
yes |
const: deferred-operation-status.v1 |
Schema tag for deferred operation status payloads. |
schema/v |
yes |
const: 1 |
Schema version. |
status |
yes |
enum: pending, running, completed, failed, timed-out, cancelled, expired, unknown |
Lifecycle status. pending/running suspend processing; completed resumes with result; failed/timed-out/cancelled/expired/unknown are terminal failures unless the parent runtime has an explicit retry policy. |
operation/id |
yes |
string | Id from the initial deferred-operation.v1 payload. |
operation/kind |
yes |
string | Operation class that owns the continuation semantics. |
updated_at |
yes |
string | RFC 3339 timestamp at which this status was produced. |
retry_after_seconds |
no |
integer | Host-clamped lower bound before the next poll/resume attempt. Required by convention for pending/running statuses that are not immediately resumable. |
expires_at |
no |
string | Current absolute expiry deadline, if still applicable. |
result |
no |
unspecified | Domain result only for completed status. It MUST be validated by the owning operation kind before downstream use. |
diagnostics |
no |
array | Optional diagnostics for operator and caller visibility. |
extensions |
no |
object | Open extension map for experimental or deployment-local metadata. Stable protocol fields MUST be promoted to first-class schema properties. |
Conditional Rules¶
Rule 1¶
When:
{
"properties": {
"status": {
"const": "completed"
}
},
"required": [
"status"
]
}
Then:
{
"required": [
"result"
]
}
Field Semantics¶
schema¶
- Required:
yes - Shape: const:
deferred-operation-status.v1
Schema tag for deferred operation status payloads.
schema/v¶
- Required:
yes - Shape: const:
1
Schema version.
status¶
- Required:
yes - Shape: enum:
pending,running,completed,failed,timed-out,cancelled,expired,unknown
Lifecycle status. pending/running suspend processing; completed resumes with result; failed/timed-out/cancelled/expired/unknown are terminal failures unless the parent runtime has an explicit retry policy.
operation/id¶
- Required:
yes - Shape: string
Id from the initial deferred-operation.v1 payload.
operation/kind¶
- Required:
yes - Shape: string
Operation class that owns the continuation semantics.
updated_at¶
- Required:
yes - Shape: string
RFC 3339 timestamp at which this status was produced.
retry_after_seconds¶
- Required:
no - Shape: integer
Host-clamped lower bound before the next poll/resume attempt. Required by convention for pending/running statuses that are not immediately resumable.
expires_at¶
- Required:
no - Shape: string
Current absolute expiry deadline, if still applicable.
result¶
- Required:
no - Shape: unspecified
Domain result only for completed status. It MUST be validated by the owning operation kind before downstream use.
diagnostics¶
- Required:
no - Shape: array
Optional diagnostics for operator and caller visibility.
extensions¶
- Required:
no - Shape: object
Open extension map for experimental or deployment-local metadata. Stable protocol fields MUST be promoted to first-class schema properties.