primus.command_worker.adapters.celery_delivery module

Typed-envelope Celery delivery adapter for the Task-backed command worker.

Celery is transport only; Task conditional claims and fencing provide lifecycle safety and absorb the stream transport’s at-least-once delivery semantics.

class primus.command_worker.adapters.celery_delivery.OwnerFactory(*args, **kwargs)

Bases: Protocol

__init__(*args, **kwargs)
primus.command_worker.adapters.celery_delivery.register_portable_command_task(app: Celery, *, task_name: str, lifecycle: LifecycleStore, executor: Executor, clock: Clock, owner_factory: OwnerFactory, lease_duration: timedelta, heartbeat_interval: timedelta | None = None, heartbeat_scheduler: HeartbeatScheduler | None = None, task_scale_in_protection: TaskScaleInProtection | None = None) → Any

Register an isolated, late-acknowledged Celery command task.

A released delivery is rejected with requeue=True so the broker retains ownership of retry timing. An integrity mismatch is rejected without requeue so broker-native dead-letter configuration receives the message.