job_release
- Category: jobs_lanes
- Access: write
- Audience: advanced (ordinary users do not normally call this directly)
Purpose
Releases a claimed job back to queued for another executor to claim. Call it when the current holder cannot finish the unit and it must return to the pool without losing its attempt history.
Arguments
Required: job_id.
-
job_id.
Result
JSON object with job_id and state (always queued after release).
Boundaries
Owner or conductor only. Out-of-scope entries read as missing with job not found vocabulary. Attempts are kept, so a released entry remains closer to its retry bound. Operates only inside the caller's profile boundary.
Lifecycle / side effects
Returns a claimed entry to queued, clearing owner and lease while keeping attempts, and records an audit/history event. The entry becomes claimable again. The whole move fails atomically on error.
Errors
job not found covers missing and out-of-scope identically. Entries that are not claimed are rejected as job is not claimed. Unknown arguments are rejected.
Example
{
"job_id": "<uuid>"
}
Result shape:
{
"job_id": "<uuid>",
"state": "queued"
}