Category: lh-tasks. All abilities require the capability returned by LH_Tasks_task_post_type_class::return_required_capability() (default edit_others_posts) — this applies uniformly regardless of a task’s assigned_to/assignee; assignment is enforced as an additional identity check inside claim-next-task/complete-task/fail-task/reassign-task/renew-claim, not as a substitute for this capability gate. edit-task is the sole unconditional override.
lh-tasks/create-task— create a new task. Acceptsqueue(routing),task_type(classification),post_status(draft|pending|active, defaultactive), and an optionalassigned_to(WP user ID) to hard-assign it up front.lh-tasks/claim-next-task— atomically claim the oldest available, unblocked, eligible task in a queue on behalf of the calling account (identity is always the authenticated caller, never input) — or, iftask_idis given, claim that specific task instead. Eligible means unassigned or hard-assigned to the caller. Returns aclaim_tokenrequired by the abilities below that act on a held claim.lh-tasks/complete-task— mark a claimed task Resolved with an optional result payload. Requires theclaim_tokenfromclaim-next-task; fails if the caller doesn’t currently hold the claim.lh-tasks/fail-task— mark a task failed;reason_type: retryable(default) requeues or blocks depending on remaining retries,reason_type: needs_humanskips retries and hands off via reassignment instead. Requiresclaim_token.lh-tasks/reassign-task— release the current claim and hand a task off (optionally hard-assigning it to a specific account), logging a note on what’s done and what’s left. Requiresclaim_token— this is a self-service action for whoever currently holds the claim.lh-tasks/renew-claim— heartbeat for a long-running claimed task: pushesclaimed_atforward to now, without changing status or assignee, so the task stays ahead of the stale-claim sweep (default 10 minute cutoff) instead of risking auto-release mid-work. Requiresclaim_token. Optionally accepts anote, logged toprogress_log(eventheartbeat) the same wayreassign-tasklogs its note — letting a heartbeat double as a lightweight progress trail. Added 1.7.0.lh-tasks/edit-task— unconditional,edit_others_posts-gated queue-management override: set/clearassigned_to, release a stuck claim, and/or change status/queue, without needing to hold the current claim.lh-tasks/get-task— retrieve a single task by ID.lh-tasks/list-tasks— paginated, filterable list (status, queue, task_type, assignee, assigned_to).