Heartbeat Decision Task
talonic_heartbeat_decision_taskExtend the lease on a claimed decision task to avoid losing it when processing runs past its expiry. Provide task ID and current execution epoch to refresh the lease before the deadline.
Instructions
Extend the lease on a claimed decision task, never past its sla_deadline_at.
USE WHEN: deciding may run past lease_expires_at; heartbeat before expiry using the epoch from claim. NOT FOR: acquiring a task (talonic_claim_decision_task) or finishing one (talonic_submit_decision_task / talonic_release_decision_task / talonic_fail_decision_task). ARGS: task_id and execution_epoch. A stale or foreign epoch returns HTTP 409: stop, discard the work, and re-list. AUTH: a tlnc_ key needs a per-app 'decide' grant; an OAuth connector session needs the apps:decide scope (consented at connect) and a live workspace role of senior_member or above. A 403 (decide_grant_required, insufficient_scope, insufficient_tier) names what is missing — tell the user, do not retry.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Decision task UUID. | |
| execution_epoch | Yes | Execution epoch returned by the successful claim. Stale epochs are rejected with 409. |