Skip to content

Retry Server long-poll capacity responses instead of stopping workers #32

Description

@rmcdaniel

Problem

A published Rust 2.0.0 worker registered successfully against a Cloud Dev 1-vCPU/1-GB cell, then exited when its activity poll received the Server's intentional 429 long_poll_capacity_exhausted response. The response was explicitly retryable and advertised retry_after_seconds: 1; PHP and Python workers completed equivalent journeys on the same cell.

A bounded Server admission response must not terminate an otherwise healthy Rust worker.

Acceptance criteria

  • Workflow, activity, and query poll loops treat retryable 429 capacity responses as transient.
  • Retry delay honors the response-provided retry hint where available while retaining bounded backoff.
  • Non-retryable 4xx responses still fail promptly.
  • Regression coverage proves the worker survives the capacity response and subsequently processes work.
  • Publish the semver patch and rerun the managed Rust playground against the same Cloud Dev cell.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions