Skip to content
Developer Preview

turn/retryScheduled

A failing model attempt’s retry is scheduled and waiting out its backoff; observable mid-turn, non-terminal.

Type: TurnRetryScheduledParams

turn/retryScheduled params: a durable turn retry-scheduled fact folded — the failing model attempt’s scheduled retry is observable BEFORE the turn terminates, so a streaming client can render “attempt N/M · retrying in Ss · reason” instead of dead air. Non-terminal: it never resolves a turn-wait. The delay is the recorded scheduled backoff, never an absolute fire time — clients derive any countdown locally. sourceRange cites the session stream’s mirror of the task-lifecycle record.

Field Type Stability Presence Description
attempt integer required The attempt that failed (producer-normalized, >= 1).
maxAttempts integer required The turn’s model-retry chain bound.
nextAttempt integer required The attempt about to run (producer contract: attempt < nextAttempt <= maxAttempts; not a schema constraint).
reason string required The recorded stopping reason through the shared task-detail normalization (non-empty; capped at 160 characters).
retryDelayMs integer required The scheduled backoff delay in milliseconds, verbatim from the durable fact.
sessionId string required The owning session.
sourceRange SourceRange required The durable record this event folded from (the session stream’s mirror of the retry-scheduled task status; first == last).
turnId string required The running turn whose model attempt is being retried.
viewCursor string required Opaque, strictly monotonic view cursor.
Source

schema/msp/experimental/msp.schema.json#/notifications/turn~2FretryScheduled

{
"description": "A failing model attempt's retry is scheduled and waiting out its backoff; observable mid-turn, non-terminal.",
"params": {
"$ref": "#/$defs/TurnRetryScheduledParams"
}
}