Setu-TS
    Preparing search index...

    Interface OutboxRelayOptions

    The outbox relay's schedule, budgets and failure policy (M107 §3.6–§3.8).

    Every numeric option must be a finite integer in its range, and publishTimeoutMs + 2 * storeTimeoutMs must be less than sweepDeadlineMs; a violation is refused at construction, naming the option.

    0.9.0

    interface OutboxRelayOptions {
        baseBackoffMs?: number;
        claimLeaseMs?: number;
        intervalMs?: number;
        maxAttempts?: number;
        maxBackoffMs?: number;
        maxClockSkewMs?: number;
        maxFailedScan?: number;
        pageSize?: number;
        publishLimit?: number;
        publishTimeoutMs?: number;
        scanLimit?: number;
        schedule?: boolean;
        storeTimeoutMs?: number;
        sweepDeadlineMs?: number;
    }
    Index
    baseBackoffMs?: number

    First retry delay; doubled per attempt. Default 1000.

    claimLeaseMs?: number

    Row lease in ms, integer 1–3600000. Default 30000. Must cover publishTimeoutMs + 2 * storeTimeoutMs + maxClockSkewMs.

    0.9.0

    intervalMs?: number

    Milliseconds between scheduled sweeps. Default 1000.

    maxAttempts?: number

    Publish attempts before a row becomes failed. Default 10.

    maxBackoffMs?: number

    Retry delay ceiling. Default 300000.

    maxClockSkewMs?: number

    Assumed maximum wall-clock disagreement in ms, integer 0–60000. Default 5000. Zero assumes perfectly agreeing clocks and is unsafe across hosts.

    0.9.0

    maxFailedScan?: number

    Failed keys read at lap start; a full answer caps the lap. Default 1000.

    pageSize?: number

    Rows read per scanPending page. Default 100.

    publishLimit?: number

    Publishes and poison transitions per sweep. Default 100.

    publishTimeoutMs?: number

    Bound on one publish. Default 5000.

    scanLimit?: number

    Rows examined per sweep, skips included. Default 1000.

    schedule?: boolean

    Register the relay on CAPABILITIES.SCHEDULER at onInit. Set false on Cloudflare Workers and call outbox.sweep() from a Cron Trigger. Default true.

    storeTimeoutMs?: number

    Bound on one store call. Default 5000.

    sweepDeadlineMs?: number

    One deadline over the whole sweep, measured on the monotonic clock. Default 30000. Must be greater than publishTimeoutMs + 2 * storeTimeoutMs. Rows start while the remaining budget covers that reserve: the first 15000 ms with default options. EXCEPT that the status write settling an already-invoked publish runs to its own storeTimeoutMs even when a pause has exhausted the budget: a sweep that overran by a pause can outlive this deadline by at most one storeTimeoutMs, and the shutdown drain that waits for it is bounded by the same amount.