{
  "id": "Q9eQ1TNw9T9xr-Kh-CDnk",
  "name": "AI-Powered Content Moderation and Governance Orchestration System",
  "tags": [],
  "nodes": [
    {
      "id": "7f0f732c-2f51-4729-bddd-a5392620b00d",
      "name": "Content Submission Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -928,
        32
      ],
      "parameters": {
        "path": "content-moderation",
        "options": {},
        "httpMethod": "POST",
        "responseMode": "lastNode"
      },
      "typeVersion": 2.1
    },
    {
      "id": "c61ffaa3-ec98-4992-83f8-22ed061140a6",
      "name": "Workflow Configuration",
      "type": "n8n-nodes-base.set",
      "position": [
        -704,
        32
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "id-1",
              "name": "toxicityThreshold",
              "type": "number",
              "value": 0.7
            },
            {
              "id": "id-2",
              "name": "spamThreshold",
              "type": "number",
              "value": 0.8
            },
            {
              "id": "id-3",
              "name": "engagementAnomalyThreshold",
              "type": "number",
              "value": 2.5
            },
            {
              "id": "id-4",
              "name": "monetizationApiUrl",
              "type": "string",
              "value": "<__PLACEHOLDER_VALUE__Creator Monetization API URL__>"
            },
            {
              "id": "id-5",
              "name": "enforcementApiUrl",
              "type": "string",
              "value": "<__PLACEHOLDER_VALUE__Content Enforcement API URL__>"
            },
            {
              "id": "id-6",
              "name": "moderatorNotificationUrl",
              "type": "string",
              "value": "<__PLACEHOLDER_VALUE__Human Moderator Notification Webhook URL__>"
            }
          ]
        },
        "includeOtherFields": true
      },
      "typeVersion": 3.4
    },
    {
      "id": "c934cd4c-b427-4eda-9f1d-712030a5d994",
      "name": "Claude Model - Content Validation",
      "type": "@n8n/n8n-nodes-langchain.lmChatAnthropic",
      "position": [
        -528,
        240
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "claude-sonnet-4-5-20250929",
          "cachedResultName": "Claude Sonnet 4.5"
        },
        "options": {}
      },
      "credentials": {
        "anthropicApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "6877dff9-a39c-4cf0-8e1a-47f88b33a3be",
      "name": "Claude Model - Governance Orchestration",
      "type": "@n8n/n8n-nodes-langchain.lmChatAnthropic",
      "position": [
        -128,
        256
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "claude-sonnet-4-5-20250929",
          "cachedResultName": "Claude Sonnet 4.5"
        },
        "options": {}
      },
      "credentials": {
        "anthropicApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "4bc98172-4bf8-45e5-9c53-8d2be4c4f4d5",
      "name": "Content Validation Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        -344,
        256
      ],
      "parameters": {
        "schemaType": "manual",
        "inputSchema": "{\n  \"type\": \"object\",\n  \"properties\": {\n    \"contentId\": {\n      \"type\": \"string\",\n      \"description\": \"Unique identifier for the content\"\n    },\n    \"toxicityScore\": {\n      \"type\": \"number\",\n      \"description\": \"Toxicity score from 0 to 1\"\n    },\n    \"spamScore\": {\n      \"type\": \"number\",\n      \"description\": \"Spam likelihood score from 0 to 1\"\n    },\n    \"engagementAnomaly\": {\n      \"type\": \"boolean\",\n      \"description\": \"Whether engagement patterns are anomalous\"\n    },\n    \"engagementAnomalyScore\": {\n      \"type\": \"number\",\n      \"description\": \"Anomaly score for engagement patterns\"\n    },\n    \"behaviorFlags\": {\n      \"type\": \"array\",\n      \"items\": {\"type\": \"string\"},\n      \"description\": \"List of behavior flags detected\"\n    },\n    \"contentCategory\": {\n      \"type\": \"string\",\n      \"description\": \"Category of content\"\n    },\n    \"riskLevel\": {\n      \"type\": \"string\",\n      \"enum\": [\"low\", \"medium\", \"high\", \"critical\"],\n      \"description\": \"Overall risk level\"\n    },\n    \"reasoning\": {\n      \"type\": \"string\",\n      \"description\": \"Explanation of the validation assessment\"\n    }\n  },\n  \"required\": [\"contentId\", \"toxicityScore\", \"spamScore\", \"engagementAnomaly\", \"riskLevel\", \"reasoning\"]\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "7ee54f97-6895-492a-a62d-c7c009357034",
      "name": "Governance Decision Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        256,
        256
      ],
      "parameters": {
        "schemaType": "manual",
        "inputSchema": "{\n  \"type\": \"object\",\n  \"properties\": {\n    \"action\": {\n      \"type\": \"string\",\n      \"enum\": [\"approve\", \"flag\", \"remove\", \"suspend_creator\", \"demonetize\"],\n      \"description\": \"Enforcement action to take\"\n    },\n    \"severity\": {\n      \"type\": \"string\",\n      \"enum\": [\"low\", \"medium\", \"high\"],\n      \"description\": \"Severity level of the issue\"\n    },\n    \"requiresHumanReview\": {\n      \"type\": \"boolean\",\n      \"description\": \"Whether human moderator review is required\"\n    },\n    \"monetizationImpact\": {\n      \"type\": \"string\",\n      \"enum\": [\"none\", \"warning\", \"temporary_suspension\", \"permanent_demonetization\"],\n      \"description\": \"Impact on creator monetization\"\n    },\n    \"enforcementDetails\": {\n      \"type\": \"object\",\n      \"properties\": {\n        \"reason\": {\"type\": \"string\"},\n        \"duration\": {\"type\": \"string\"},\n        \"appealable\": {\"type\": \"boolean\"}\n      }\n    },\n    \"reasoning\": {\n      \"type\": \"string\",\n      \"description\": \"Explanation of the governance decision\"\n    }\n  },\n  \"required\": [\"action\", \"severity\", \"requiresHumanReview\", \"monetizationImpact\", \"reasoning\"]\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "e01f98a0-ac77-4b02-b178-94ebb8879cee",
      "name": "Content Validation Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -480,
        32
      ],
      "parameters": {
        "text": "=Content Data: {{ JSON.stringify($json) }}",
        "options": {
          "systemMessage": "=You are a Content Validation Agent specialized in monitoring structured engagement, content moderation, and behavior signals.\n\nYour task is to:\n1. Analyze submitted content for toxicity, spam, hate speech, misinformation, and policy violations\n2. Evaluate engagement patterns (likes, shares, comments, view velocity) for anomalies indicating manipulation or bot activity\n3. Assess behavior signals including:\n   - Rapid follower growth patterns\n   - Coordinated inauthentic behavior\n   - Suspicious engagement ratios\n   - Content repetition or plagiarism\n4. Calculate toxicity score (0-1) based on language analysis\n5. Calculate spam score (0-1) based on content patterns\n6. Detect engagement anomalies using statistical thresholds\n7. Identify behavior flags (bot_activity, coordinated_manipulation, spam_network, etc.)\n8. Classify content category (educational, entertainment, news, promotional, etc.)\n9. Assign overall risk level (low/medium/high/critical)\n10. Provide detailed reasoning for your assessment\n\nConsider:\n- Content text, metadata, and media\n- Historical engagement patterns\n- Creator reputation and history\n- Platform policy guidelines\n- Community standards\n- Contextual factors (trending topics, current events)\n\nUse the configured thresholds from workflow configuration:\n- Toxicity threshold: {{ $('Workflow Configuration').first().json.toxicityThreshold }}\n- Spam threshold: {{ $('Workflow Configuration').first().json.spamThreshold }}\n- Engagement anomaly threshold: {{ $('Workflow Configuration').first().json.engagementAnomalyThreshold }}\n\nReturn structured JSON output with all required fields."
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 3.1
    },
    {
      "id": "20090aaa-b50a-42cc-ac14-a0ee5e07abb1",
      "name": "Governance Orchestration Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -8,
        32
      ],
      "parameters": {
        "text": "=Validation Results: {{ JSON.stringify($json.output) }}",
        "options": {
          "systemMessage": "You are a Governance Orchestration Agent responsible for coordinating enforcement workflows, creator monetization, anomaly detection, and escalation to human moderators.\n\nYour task is to:\n1. Review content validation results from the Content Validation Agent\n2. Determine appropriate enforcement action based on risk level and policy violations\n3. Coordinate monetization impacts for creators (warnings, suspensions, demonetization)\n4. Decide when human moderator review is required\n5. Execute enforcement workflows through available tools\n6. Maintain fairness, transparency, and consistency in decisions\n7. Generate detailed reasoning for audit trails\n\nAvailable Tools:\n- Monetization API Tool: Adjust creator monetization status, issue warnings, apply suspensions\n- Enforcement API Tool: Execute content actions (flag, remove, restrict visibility)\n\nEnforcement Guidelines:\n- Low severity: Approve or flag for monitoring\n- Medium severity: Flag, issue warning, or temporary restrictions\n- High severity: Remove content, suspend creator, or demonetize\n- Critical risk: Always require human review\n\nMonetization Impact Levels:\n- none: No impact on monetization\n- warning: Issue warning to creator\n- temporary_suspension: Suspend monetization for defined period\n- permanent_demonetization: Permanently remove monetization eligibility\n\nHuman Review Required When:\n- Risk level is critical\n- Severity is high AND content is borderline\n- Enforcement action involves permanent demonetization\n- Multiple policy violations detected\n- Appeal or dispute is likely\n\nActions:\n- approve: Content passes validation\n- flag: Mark for monitoring\n- remove: Delete content\n- suspend_creator: Temporarily suspend creator account\n- demonetize: Remove monetization privileges\n\nEnsure all decisions:\n- Are proportional to the violation\n- Consider creator history and context\n- Provide clear reasoning\n- Enable appeals when appropriate\n- Maintain transparency\n\nReturn structured JSON output with enforcement decision, severity, human review flag, monetization impact, and detailed reasoning."
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 3.1
    },
    {
      "id": "168dc101-72ac-4628-b80f-2514ea8b2e51",
      "name": "Monetization API Tool",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        0,
        256
      ],
      "parameters": {
        "url": "={{ $('Workflow Configuration').first().json.monetizationApiUrl }}",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"creatorId\": $fromAI('creatorId', 'Creator identifier', 'string'),\n  \"contentId\": $fromAI('contentId', 'Content identifier', 'string'),\n  \"action\": $fromAI('monetizationAction', 'Monetization action: warning, temporary_suspension, or permanent_demonetization', 'string'),\n  \"reason\": $fromAI('reason', 'Reason for monetization impact', 'string'),\n  \"duration\": $fromAI('duration', 'Duration for temporary suspensions (e.g., 7d, 30d)', 'string', 'N/A')\n}",
        "sendBody": true,
        "specifyBody": "json",
        "toolDescription": "Adjusts creator monetization status including warnings, temporary suspensions, and permanent demonetization"
      },
      "typeVersion": 4.3
    },
    {
      "id": "84d0386f-e672-4c91-94a8-84cb9fb9b983",
      "name": "Enforcement API Tool",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        128,
        256
      ],
      "parameters": {
        "url": "={{ $('Workflow Configuration').first().json.enforcementApiUrl }}",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"contentId\": $fromAI('contentId', 'Content identifier', 'string'),\n  \"action\": $fromAI('enforcementAction', 'Enforcement action: flag, remove, or restrict', 'string'),\n  \"reason\": $fromAI('reason', 'Reason for enforcement action', 'string'),\n  \"appealable\": $fromAI('appealable', 'Whether the action can be appealed', 'boolean', true)\n}",
        "sendBody": true,
        "specifyBody": "json",
        "toolDescription": "Executes content enforcement actions including flagging, removal, and visibility restrictions"
      },
      "typeVersion": 4.3
    },
    {
      "id": "33bdba20-85bf-4770-85b9-7706eda47096",
      "name": "Route by Severity",
      "type": "n8n-nodes-base.switch",
      "position": [
        544,
        0
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "Low Severity",
              "conditions": {
                "options": {
                  "leftValue": "",
                  "caseSensitive": false,
                  "typeValidation": "loose"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json.output.severity }}",
                    "rightValue": "low"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "Medium Severity",
              "conditions": {
                "options": {
                  "leftValue": "",
                  "caseSensitive": false,
                  "typeValidation": "loose"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json.output.severity }}",
                    "rightValue": "medium"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "High Severity",
              "conditions": {
                "options": {
                  "leftValue": "",
                  "caseSensitive": false,
                  "typeValidation": "loose"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json.output.severity }}",
                    "rightValue": "high"
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {
          "ignoreCase": true,
          "fallbackOutput": "extra",
          "renameFallbackOutput": "Unknown Severity"
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "23671a81-2c91-4d11-a9a7-034f4f94da8b",
      "name": "Check Human Review Required",
      "type": "n8n-nodes-base.if",
      "position": [
        752,
        96
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "leftValue": "",
            "caseSensitive": false,
            "typeValidation": "loose"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "id-1",
              "operator": {
                "type": "boolean",
                "operation": "equals"
              },
              "leftValue": "={{ $json.output.requiresHumanReview }}",
              "rightValue": true
            }
          ]
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "c5a0b504-1657-453c-90a7-e7397a32d73e",
      "name": "Notify Human Moderators",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        976,
        176
      ],
      "parameters": {
        "url": "={{ $('Workflow Configuration').first().json.moderatorNotificationUrl }}",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"contentId\": $json.output.contentId || $json.contentId,\n  \"severity\": $json.output.severity,\n  \"action\": $json.output.action,\n  \"validationResults\": $('Content Validation Agent').first().json.output,\n  \"governanceDecision\": $json.output,\n  \"timestamp\": $now.toISO(),\n  \"priority\": $json.output.severity === 'high' ? 'urgent' : 'normal',\n  \"message\": \"Human review required for content moderation decision\"\n}",
        "sendBody": true,
        "specifyBody": "json"
      },
      "typeVersion": 4.3
    },
    {
      "id": "9ce20f2a-54e5-4992-991a-f5068c6b8159",
      "name": "Merge All Paths",
      "type": "n8n-nodes-base.merge",
      "position": [
        1200,
        0
      ],
      "parameters": {
        "numberInputs": 4
      },
      "typeVersion": 3.2
    },
    {
      "id": "de3b303b-6935-4816-8894-66b3220680f6",
      "name": "Audit Log Storage",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        1584,
        32
      ],
      "parameters": {
        "options": {},
        "operation": "upsert",
        "dataTableId": {
          "__rl": true,
          "mode": "name",
          "value": "content_moderation_audit_log"
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "47fd8fcc-eb58-411e-aa30-ed152193bbb3",
      "name": "Prepare Audit Record",
      "type": "n8n-nodes-base.set",
      "position": [
        1360,
        32
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "id-1",
              "name": "auditTimestamp",
              "type": "string",
              "value": "={{ $now.toISO() }}"
            },
            {
              "id": "id-2",
              "name": "contentId",
              "type": "string",
              "value": "={{ $json.output?.contentId || $json.contentId || 'unknown' }}"
            },
            {
              "id": "id-3",
              "name": "validationResults",
              "type": "object",
              "value": "={{ JSON.stringify($('Content Validation Agent').first().json.output) }}"
            },
            {
              "id": "id-4",
              "name": "governanceDecision",
              "type": "object",
              "value": "={{ JSON.stringify($json.output) }}"
            },
            {
              "id": "id-5",
              "name": "humanReviewTriggered",
              "type": "boolean",
              "value": "={{ $('Check Human Review Required').item.json.output?.requiresHumanReview || false }}"
            },
            {
              "id": "id-6",
              "name": "workflowStatus",
              "type": "string",
              "value": "completed"
            }
          ]
        },
        "includeOtherFields": true
      },
      "typeVersion": 3.4
    },
    {
      "id": "3bddc77a-39a3-4855-940a-cf59bfe6946c",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        336,
        -544
      ],
      "parameters": {
        "color": 4,
        "width": 512,
        "height": 352,
        "content": "## Prerequisites\nClaude/OpenAI API credentials for content validation, moderation API access for policy enforcement\n## Use Cases\nSocial media platforms moderating user posts and comments, online marketplaces reviewing product listings\n## Customization\nAdjust severity thresholds for platform-specific risk tolerance\n## Benefits\nReduces content review time by 85%, ensures consistent policy enforcement across all submissions"
      },
      "typeVersion": 1
    },
    {
      "id": "efeed41f-b202-41c8-a210-cd3110704c3a",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -224,
        -464
      ],
      "parameters": {
        "width": 496,
        "height": 256,
        "content": "## Setup Steps\n1. Configure Content Submission Webhook trigger endpoint\n2. Connect Workflow Configuration node with content policy parameters\n3. Set up Content Validation Agent with Claude/OpenAI API credentials\n4. Configure parallel AI processing nodes\n5. Connect Governance Orchestration Agent with AI API credentials\n6. Set up multi-model validation \n7. Configure Route by Severity node with classification thresholds"
      },
      "typeVersion": 1
    },
    {
      "id": "521dedeb-13e2-4e5c-b89a-7df809c87a2e",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -976,
        -512
      ],
      "parameters": {
        "width": 672,
        "height": 304,
        "content": "## How It Works\nThis workflow automates intelligent content moderation and governance enforcement through multi-model AI validation. Designed for social media platforms, online communities, and user-generated content platforms, it solves the critical challenge of scaling content review while maintaining consistent policy enforcement and human oversight for edge cases. The system receives content submissions via webhook, processing them through a dual-agent AI framework for content validation and governance orchestration. It employs specialized AI models for policy violation detection, moderation API enforcement checks, and governance decision-making. The workflow intelligently routes content based on severity classification, escalating high-risk submissions for human moderator review while auto-processing clear-cut decisions. By merging parallel validation paths and maintaining comprehensive audit logs, it ensures consistent policy application across all content while preserving human judgment for nuanced cases requiring contextual understanding."
      },
      "typeVersion": 1
    },
    {
      "id": "245ab01a-dfee-4bae-9b24-02f693a5bd16",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        464,
        -160
      ],
      "parameters": {
        "color": 7,
        "width": 1296,
        "height": 656,
        "content": "## Severity-Based Human Escalation\n**What:** Routes content based on severity scores with automatic human moderator notification for edge cases requiring judgment\n**Why:** Balances automation efficiency with human oversight ensuring nuanced decisions receive appropriate review while clear violations process instantly"
      },
      "typeVersion": 1
    },
    {
      "id": "221f21f4-8086-450c-8cee-593a195921a6",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -160,
        -160
      ],
      "parameters": {
        "color": 7,
        "width": 608,
        "height": 656,
        "content": "## Multi-Model Policy Enforcement\n**What:** Validates content through Claude AI, moderation APIs, and reinforcement learning models for comprehensive policy coverage\n**Why:** Leverages specialized models for different violation types ensuring no policy breach escapes detection through single-model limitations"
      },
      "typeVersion": 1
    },
    {
      "id": "0049781a-5cd5-4150-ac1d-37ac66197f7f",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -976,
        -160
      ],
      "parameters": {
        "color": 7,
        "width": 784,
        "height": 656,
        "content": "## Dual-Agent Content Analysis\n**What:** Processes submissions through parallel AI agents for content policy validation and governance orchestration with specialized output parsing\n**Why:** Separates technical violation detection from governance decision-making to ensure thorough evaluation across compliance and contextual dimensions"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {
    "availableInMCP": false,
    "executionOrder": "v1"
  },
  "versionId": "69024db7-f691-4e54-a33e-3c08fa1af27a",
  "connections": {
    "Merge All Paths": {
      "main": [
        [
          {
            "node": "Prepare Audit Record",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Route by Severity": {
      "main": [
        [
          {
            "node": "Merge All Paths",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Merge All Paths",
            "type": "main",
            "index": 1
          }
        ],
        [
          {
            "node": "Check Human Review Required",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Enforcement API Tool": {
      "ai_tool": [
        [
          {
            "node": "Governance Orchestration Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Prepare Audit Record": {
      "main": [
        [
          {
            "node": "Audit Log Storage",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Monetization API Tool": {
      "ai_tool": [
        [
          {
            "node": "Governance Orchestration Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Workflow Configuration": {
      "main": [
        [
          {
            "node": "Content Validation Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Notify Human Moderators": {
      "main": [
        [
          {
            "node": "Merge All Paths",
            "type": "main",
            "index": 3
          }
        ]
      ]
    },
    "Content Validation Agent": {
      "main": [
        [
          {
            "node": "Governance Orchestration Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Content Submission Webhook": {
      "main": [
        [
          {
            "node": "Workflow Configuration",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check Human Review Required": {
      "main": [
        [
          {
            "node": "Notify Human Moderators",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Merge All Paths",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "Governance Orchestration Agent": {
      "main": [
        [
          {
            "node": "Route by Severity",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Content Validation Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Content Validation Agent",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Claude Model - Content Validation": {
      "ai_languageModel": [
        [
          {
            "node": "Content Validation Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Governance Decision Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Governance Orchestration Agent",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Claude Model - Governance Orchestration": {
      "ai_languageModel": [
        [
          {
            "node": "Governance Orchestration Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    }
  }
}