Skip to content

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.