perago.TaskControls#

class perago.TaskControls(*, retry=<factory>, timeout=<factory>, limits=<factory>, publish_budget=None)[源代码]#

Task-level controls consumed by TaskDef generation and runtime code.

TaskControls is the only public entry point for retry, timeout, execution limit, and publish budget controls. Task authors pass it to perago.task(); Perago expands the supported fields into the generated Conductor TaskDef.

Parameters:
retryRetryPolicy, optional

Retry controls. Defaults to RetryPolicy().

timeoutTimeoutPolicy, optional

General timeout controls. Defaults to TimeoutPolicy().

limitsExecutionLimits, optional

Optional concurrency and rate-limit controls. Defaults to ExecutionLimits().

publish_budgetPublishBudget or None, default=None

Workspace publication budget. Only workspace tasks may configure it.

Attributes:
response_timeout_secondsint

Effective response timeout for the generated Conductor TaskDef.

参数:

Examples

>>> TaskControls(
...     retry=RetryPolicy(count=4),
...     timeout=TimeoutPolicy(response_seconds=900),
...     limits=ExecutionLimits(concurrent_exec_limit=2),
... )
TaskControls(...)

Attributes

response_timeout_seconds

Effective response timeout for the generated Conductor TaskDef.

retry

timeout

limits

publish_budget