{
  "id": "approval_gate",
  "name": "Approval Request",
  "description": "Simple yes/no decision gate with optional feedback. The standard human-in-the-loop pattern for AI agents that need human authorization before proceeding.",
  "pattern": "approval_gate",
  "fields": [
    {
      "name": "decision",
      "label": "Decision",
      "type": "select",
      "required": true,
      "options": ["Approve — proceed", "Approve with notes", "Reject — revise", "Reject — stop"]
    },
    {
      "name": "feedback",
      "label": "Feedback or notes",
      "type": "textarea",
      "required": false,
      "placeholder": "Any notes, concerns, or requested changes..."
    }
  ],
  "metadata": {
    "agent_context": "Attach session_id, agent_turn, and action_description",
    "webhook_handler": "Check decision field: 'Approve — proceed' → continue workflow, 'Approve with notes' → continue with notes context, 'Reject — revise' → loop with feedback, 'Reject — stop' → halt workflow"
  },
  "example_payload": {
    "decision": "Approve with notes",
    "feedback": "Looks good, but please add the budget breakdown"
  }
}