# Schema for kanban_update_task MCP tool
# Validates task status updates and reordering
{
  tool_name = "kanban_update_task",

  description = "Update task status and order in Kanban board",

  parameters = {
    # Task UUID
    task_id
      | String
      | doc "UUID of the task to update"
      | std.string.NonEmpty
      | std.string.match "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",

    # New status - enum validation
    status
      | String
      | doc "New task status"
      | std.string.NonEmpty
      | std.enum.TaggedUnion
      | [| 'todo, 'doing, 'review, 'done |],

    # Optional order within column
    order
      | Number
      | doc "Order within column (0-based index, optional)"
      | std.number.greater_than (-1)
      | default = 0,
  },
}
