task_complete
- Category: tasks
- Access: write
- Audience: ordinary (an ordinary user normally calls this directly)
Purpose
Complete a task or note (explicit done transition).
Arguments
Required: task_id.
-
task_id. Note: UUID of the task or note to complete.
Result
JSON object with completed (id), status done and previous_status, or unchanged 1 when already done.
Boundaries
Only the addressed task visible under the caller's project grants is touched; foreign projects read as not found.
Lifecycle / side effects
Explicit done transition through the canonical mutation path with field versions and ledger events.
Errors
Missing/foreign id reads as not found. Cancelled or archived rows fault (restore/reconsider first); already-done rows are a successful no-op. Failures move nothing (atomic).
Example
{
"task_id": "<uuid>"
}
Result shape:
{
"completed": "<uuid>",
"status": "done"
}