{
  "generatedAt": "2026-04-11T15:52:39.462Z",
  "sourceOfTruth": {
    "estateManifestPath": "W:\\Websites\\estate.yml",
    "siteFiltersPath": "W:\\Websites\\shared\\website-tools\\pipelines\\news\\site-filters.json",
    "sourcesPath": "W:\\Websites\\shared\\website-tools\\pipelines\\news\\config\\sources.json"
  },
  "summary": {
    "estateSiteCount": 6,
    "activeNewsSiteCount": 5,
    "configuredSourceCount": 12,
    "automatedSourceCount": 12,
    "manualReviewSourceCount": 0,
    "officialFirstSourceCount": 4,
    "crossCheckSourceCount": 8,
    "routingTagCount": 52,
    "lookbackHours": 24,
    "sectionCount": 4
  },
  "siteOrder": [
    "kols-korner",
    "axylusion",
    "ai-resource-hub",
    "ghost-in-the-models",
    "kol-tregaskes-photography",
    "elusion-works"
  ],
  "sections": [
    "Top Stories",
    "Industry",
    "Research & Products",
    "Policy & Ethics"
  ],
  "sourceCategories": [
    {
      "id": "academic",
      "label": "Academic"
    },
    {
      "id": "ai-newsroom",
      "label": "AI Newsroom"
    },
    {
      "id": "analysis",
      "label": "Analysis"
    },
    {
      "id": "consumer-tech",
      "label": "Consumer Tech"
    },
    {
      "id": "curated-digest",
      "label": "Curated Digest"
    },
    {
      "id": "enterprise-ai",
      "label": "Enterprise AI"
    },
    {
      "id": "industry-media",
      "label": "Industry Media"
    },
    {
      "id": "newsletter",
      "label": "Newsletter"
    },
    {
      "id": "official-lab",
      "label": "Official Lab"
    },
    {
      "id": "open-source",
      "label": "Open Source"
    },
    {
      "id": "platform-blog",
      "label": "Platform Blog"
    },
    {
      "id": "provider-blog",
      "label": "Provider Blog"
    },
    {
      "id": "research-feed",
      "label": "Research Feed"
    },
    {
      "id": "research-lab",
      "label": "Research Lab"
    },
    {
      "id": "technical-analysis",
      "label": "Technical Analysis"
    }
  ],
  "routingTags": [
    {
      "id": "3d_gen",
      "label": "3D Gen",
      "keywordCount": 6
    },
    {
      "id": "acquisition",
      "label": "Acquisition",
      "keywordCount": 5
    },
    {
      "id": "agent_sdk",
      "label": "Agent SDK",
      "keywordCount": 4
    },
    {
      "id": "agentic_framework",
      "label": "Agentic Framework",
      "keywordCount": 7
    },
    {
      "id": "ai_agents",
      "label": "AI Agents",
      "keywordCount": 6
    },
    {
      "id": "ai_safety",
      "label": "AI Safety",
      "keywordCount": 7
    },
    {
      "id": "announcement",
      "label": "Announcement",
      "keywordCount": 4
    },
    {
      "id": "api_update",
      "label": "Api Update",
      "keywordCount": 8
    },
    {
      "id": "architecture",
      "label": "Architecture",
      "keywordCount": 7
    },
    {
      "id": "art_ai",
      "label": "Art AI",
      "keywordCount": 4
    },
    {
      "id": "autonomous_systems",
      "label": "Autonomous Systems",
      "keywordCount": 5
    },
    {
      "id": "benchmark",
      "label": "Benchmark",
      "keywordCount": 11
    },
    {
      "id": "camera",
      "label": "Camera",
      "keywordCount": 14
    },
    {
      "id": "camera_release",
      "label": "Camera Release",
      "keywordCount": 5
    },
    {
      "id": "capture_one",
      "label": "Capture One",
      "keywordCount": 2
    },
    {
      "id": "creative_tool",
      "label": "Creative Tool",
      "keywordCount": 7
    },
    {
      "id": "creative_workflow",
      "label": "Creative Workflow",
      "keywordCount": 4
    },
    {
      "id": "crypto",
      "label": "Crypto",
      "keywordCount": 12
    },
    {
      "id": "crypto_defi",
      "label": "Crypto Defi",
      "keywordCount": 8
    },
    {
      "id": "crypto_regulation",
      "label": "Crypto Regulation",
      "keywordCount": 7
    },
    {
      "id": "crypto_trading",
      "label": "Crypto Trading",
      "keywordCount": 10
    },
    {
      "id": "dataset",
      "label": "Dataset",
      "keywordCount": 6
    },
    {
      "id": "evaluation",
      "label": "Evaluation",
      "keywordCount": 7
    },
    {
      "id": "funding",
      "label": "Funding",
      "keywordCount": 7
    },
    {
      "id": "hardware",
      "label": "Hardware",
      "keywordCount": 10
    },
    {
      "id": "image_gen",
      "label": "Image Gen",
      "keywordCount": 9
    },
    {
      "id": "industry_move",
      "label": "Industry Move",
      "keywordCount": 7
    },
    {
      "id": "inference",
      "label": "Inference",
      "keywordCount": 6
    },
    {
      "id": "lens",
      "label": "Lens",
      "keywordCount": 7
    },
    {
      "id": "lightroom",
      "label": "Lightroom",
      "keywordCount": 3
    },
    {
      "id": "mcp",
      "label": "MCP",
      "keywordCount": 4
    },
    {
      "id": "model_release",
      "label": "Model Release",
      "keywordCount": 15
    },
    {
      "id": "multi_agent",
      "label": "Multi Agent",
      "keywordCount": 6
    },
    {
      "id": "music_gen",
      "label": "Music Gen",
      "keywordCount": 6
    },
    {
      "id": "open_source",
      "label": "Open Source",
      "keywordCount": 7
    },
    {
      "id": "opinion",
      "label": "Opinion",
      "keywordCount": 6
    },
    {
      "id": "photo_editing",
      "label": "Photo Editing",
      "keywordCount": 10
    },
    {
      "id": "photography",
      "label": "Photography",
      "keywordCount": 9
    },
    {
      "id": "photography_ai",
      "label": "Photography AI",
      "keywordCount": 7
    },
    {
      "id": "photography_business",
      "label": "Photography Business",
      "keywordCount": 5
    },
    {
      "id": "photography_technique",
      "label": "Photography Technique",
      "keywordCount": 6
    },
    {
      "id": "photoshop",
      "label": "Photoshop",
      "keywordCount": 4
    },
    {
      "id": "policy",
      "label": "Policy",
      "keywordCount": 8
    },
    {
      "id": "pricing_change",
      "label": "Pricing Change",
      "keywordCount": 7
    },
    {
      "id": "product_launch",
      "label": "Product Launch",
      "keywordCount": 7
    },
    {
      "id": "reasoning",
      "label": "Reasoning",
      "keywordCount": 8
    },
    {
      "id": "regulation",
      "label": "Regulation",
      "keywordCount": 7
    },
    {
      "id": "research_paper",
      "label": "Research Paper",
      "keywordCount": 10
    },
    {
      "id": "tool_use",
      "label": "Tool Use",
      "keywordCount": 6
    },
    {
      "id": "training",
      "label": "Training",
      "keywordCount": 6
    },
    {
      "id": "video_gen",
      "label": "Video Gen",
      "keywordCount": 8
    },
    {
      "id": "voice_synthesis",
      "label": "Voice Synthesis",
      "keywordCount": 6
    }
  ],
  "sites": [
    {
      "slug": "kols-korner",
      "name": "Kol's Korner",
      "shortName": "Kol's Korner",
      "role": "broad-ai",
      "description": "Broad AI news, general-interest angle. Gets most things except deep technical and creative-only.",
      "note": null,
      "newsEnabled": true,
      "includeTags": [
        "product_launch",
        "announcement",
        "funding",
        "acquisition",
        "policy",
        "regulation",
        "opinion",
        "industry_move",
        "open_source",
        "model_release",
        "ai_agents",
        "ai_safety",
        "reasoning",
        "hardware",
        "crypto",
        "crypto_trading",
        "crypto_defi",
        "crypto_regulation"
      ],
      "excludeTags": [],
      "includeLabels": [
        {
          "id": "product_launch",
          "label": "Product Launch"
        },
        {
          "id": "announcement",
          "label": "Announcement"
        },
        {
          "id": "funding",
          "label": "Funding"
        },
        {
          "id": "acquisition",
          "label": "Acquisition"
        },
        {
          "id": "policy",
          "label": "Policy"
        },
        {
          "id": "regulation",
          "label": "Regulation"
        },
        {
          "id": "opinion",
          "label": "Opinion"
        },
        {
          "id": "industry_move",
          "label": "Industry Move"
        },
        {
          "id": "open_source",
          "label": "Open Source"
        },
        {
          "id": "model_release",
          "label": "Model Release"
        },
        {
          "id": "ai_agents",
          "label": "AI Agents"
        },
        {
          "id": "ai_safety",
          "label": "AI Safety"
        },
        {
          "id": "reasoning",
          "label": "Reasoning"
        },
        {
          "id": "hardware",
          "label": "Hardware"
        },
        {
          "id": "crypto",
          "label": "Crypto"
        },
        {
          "id": "crypto_trading",
          "label": "Crypto Trading"
        },
        {
          "id": "crypto_defi",
          "label": "Crypto Defi"
        },
        {
          "id": "crypto_regulation",
          "label": "Crypto Regulation"
        }
      ],
      "excludeLabels": [],
      "minImportanceScore": 0.45,
      "outputFormat": "markdown_digest",
      "outputPath": "W:\\Websites\\sites\\kols-korner\\news-digests",
      "maxArticlesPerRun": 15,
      "sourceCoverageCount": 12,
      "explicitSourceCoverageCount": 12
    },
    {
      "slug": "axylusion",
      "name": "Axy Lusion",
      "shortName": "Axy Lusion",
      "role": "creative-ai",
      "description": "Creative AI tools â€” image, video, music, voice, 3D generation.",
      "note": null,
      "newsEnabled": true,
      "includeTags": [
        "image_gen",
        "video_gen",
        "music_gen",
        "voice_synthesis",
        "3d_gen",
        "creative_tool",
        "creative_workflow",
        "art_ai"
      ],
      "excludeTags": [
        "photography",
        "camera",
        "camera_release",
        "lens",
        "photo_editing",
        "lightroom",
        "photoshop",
        "capture_one",
        "photography_ai",
        "photography_technique",
        "photography_business",
        "crypto",
        "crypto_trading",
        "crypto_defi",
        "crypto_regulation",
        "ai_agents",
        "multi_agent",
        "tool_use",
        "autonomous_systems",
        "ai_safety",
        "mcp",
        "reasoning",
        "agentic_framework",
        "agent_sdk",
        "research_paper",
        "benchmark",
        "evaluation",
        "architecture",
        "dataset",
        "training",
        "inference",
        "hardware"
      ],
      "includeLabels": [
        {
          "id": "image_gen",
          "label": "Image Gen"
        },
        {
          "id": "video_gen",
          "label": "Video Gen"
        },
        {
          "id": "music_gen",
          "label": "Music Gen"
        },
        {
          "id": "voice_synthesis",
          "label": "Voice Synthesis"
        },
        {
          "id": "3d_gen",
          "label": "3D Gen"
        },
        {
          "id": "creative_tool",
          "label": "Creative Tool"
        },
        {
          "id": "creative_workflow",
          "label": "Creative Workflow"
        },
        {
          "id": "art_ai",
          "label": "Art AI"
        }
      ],
      "excludeLabels": [
        {
          "id": "photography",
          "label": "Photography"
        },
        {
          "id": "camera",
          "label": "Camera"
        },
        {
          "id": "camera_release",
          "label": "Camera Release"
        },
        {
          "id": "lens",
          "label": "Lens"
        },
        {
          "id": "photo_editing",
          "label": "Photo Editing"
        },
        {
          "id": "lightroom",
          "label": "Lightroom"
        },
        {
          "id": "photoshop",
          "label": "Photoshop"
        },
        {
          "id": "capture_one",
          "label": "Capture One"
        },
        {
          "id": "photography_ai",
          "label": "Photography AI"
        },
        {
          "id": "photography_technique",
          "label": "Photography Technique"
        },
        {
          "id": "photography_business",
          "label": "Photography Business"
        },
        {
          "id": "crypto",
          "label": "Crypto"
        },
        {
          "id": "crypto_trading",
          "label": "Crypto Trading"
        },
        {
          "id": "crypto_defi",
          "label": "Crypto Defi"
        },
        {
          "id": "crypto_regulation",
          "label": "Crypto Regulation"
        },
        {
          "id": "ai_agents",
          "label": "AI Agents"
        },
        {
          "id": "multi_agent",
          "label": "Multi Agent"
        },
        {
          "id": "tool_use",
          "label": "Tool Use"
        },
        {
          "id": "autonomous_systems",
          "label": "Autonomous Systems"
        },
        {
          "id": "ai_safety",
          "label": "AI Safety"
        },
        {
          "id": "mcp",
          "label": "MCP"
        },
        {
          "id": "reasoning",
          "label": "Reasoning"
        },
        {
          "id": "agentic_framework",
          "label": "Agentic Framework"
        },
        {
          "id": "agent_sdk",
          "label": "Agent SDK"
        },
        {
          "id": "research_paper",
          "label": "Research Paper"
        },
        {
          "id": "benchmark",
          "label": "Benchmark"
        },
        {
          "id": "evaluation",
          "label": "Evaluation"
        },
        {
          "id": "architecture",
          "label": "Architecture"
        },
        {
          "id": "dataset",
          "label": "Dataset"
        },
        {
          "id": "training",
          "label": "Training"
        },
        {
          "id": "inference",
          "label": "Inference"
        },
        {
          "id": "hardware",
          "label": "Hardware"
        }
      ],
      "minImportanceScore": 0.4,
      "outputFormat": "markdown_digest",
      "outputPath": "W:\\Websites\\sites\\axylusion\\news-digests",
      "maxArticlesPerRun": 10,
      "sourceCoverageCount": 11,
      "explicitSourceCoverageCount": 11
    },
    {
      "slug": "ai-resource-hub",
      "name": "AI Resource Hub",
      "shortName": "AI Resource Hub",
      "role": "technical-ai",
      "description": "Technical AI reference. Model releases, benchmarks, pricing, research papers, infrastructure.",
      "note": null,
      "newsEnabled": true,
      "includeTags": [
        "model_release",
        "benchmark",
        "evaluation",
        "research_paper",
        "api_update",
        "pricing_change",
        "architecture",
        "dataset",
        "training",
        "inference",
        "hardware",
        "open_source"
      ],
      "excludeTags": [
        "opinion",
        "image_gen",
        "video_gen",
        "music_gen",
        "voice_synthesis",
        "creative_tool",
        "art_ai",
        "photography",
        "camera",
        "camera_release",
        "lens",
        "photo_editing",
        "lightroom",
        "photoshop",
        "capture_one",
        "photography_ai",
        "photography_technique",
        "photography_business",
        "crypto",
        "crypto_trading",
        "crypto_defi",
        "crypto_regulation"
      ],
      "includeLabels": [
        {
          "id": "model_release",
          "label": "Model Release"
        },
        {
          "id": "benchmark",
          "label": "Benchmark"
        },
        {
          "id": "evaluation",
          "label": "Evaluation"
        },
        {
          "id": "research_paper",
          "label": "Research Paper"
        },
        {
          "id": "api_update",
          "label": "Api Update"
        },
        {
          "id": "pricing_change",
          "label": "Pricing Change"
        },
        {
          "id": "architecture",
          "label": "Architecture"
        },
        {
          "id": "dataset",
          "label": "Dataset"
        },
        {
          "id": "training",
          "label": "Training"
        },
        {
          "id": "inference",
          "label": "Inference"
        },
        {
          "id": "hardware",
          "label": "Hardware"
        },
        {
          "id": "open_source",
          "label": "Open Source"
        }
      ],
      "excludeLabels": [
        {
          "id": "opinion",
          "label": "Opinion"
        },
        {
          "id": "image_gen",
          "label": "Image Gen"
        },
        {
          "id": "video_gen",
          "label": "Video Gen"
        },
        {
          "id": "music_gen",
          "label": "Music Gen"
        },
        {
          "id": "voice_synthesis",
          "label": "Voice Synthesis"
        },
        {
          "id": "creative_tool",
          "label": "Creative Tool"
        },
        {
          "id": "art_ai",
          "label": "Art AI"
        },
        {
          "id": "photography",
          "label": "Photography"
        },
        {
          "id": "camera",
          "label": "Camera"
        },
        {
          "id": "camera_release",
          "label": "Camera Release"
        },
        {
          "id": "lens",
          "label": "Lens"
        },
        {
          "id": "photo_editing",
          "label": "Photo Editing"
        },
        {
          "id": "lightroom",
          "label": "Lightroom"
        },
        {
          "id": "photoshop",
          "label": "Photoshop"
        },
        {
          "id": "capture_one",
          "label": "Capture One"
        },
        {
          "id": "photography_ai",
          "label": "Photography AI"
        },
        {
          "id": "photography_technique",
          "label": "Photography Technique"
        },
        {
          "id": "photography_business",
          "label": "Photography Business"
        },
        {
          "id": "crypto",
          "label": "Crypto"
        },
        {
          "id": "crypto_trading",
          "label": "Crypto Trading"
        },
        {
          "id": "crypto_defi",
          "label": "Crypto Defi"
        },
        {
          "id": "crypto_regulation",
          "label": "Crypto Regulation"
        }
      ],
      "minImportanceScore": 0.5,
      "outputFormat": "json_and_markdown",
      "outputPath": "W:\\Websites\\sites\\ai-resource-hub\\src\\data",
      "maxArticlesPerRun": 20,
      "sourceCoverageCount": 12,
      "explicitSourceCoverageCount": 12
    },
    {
      "slug": "ghost-in-the-models",
      "name": "Ghost in the Model",
      "shortName": "Ghost in the Model",
      "role": "agent-editorial",
      "description": "AI agents, multi-agent systems, autonomy, tool use, and safety. Used as article inspiration for the Ghost in the Models writing agents.",
      "note": "Articles here are inspiration for the writing agents, not published directly as news",
      "newsEnabled": true,
      "includeTags": [
        "ai_agents",
        "multi_agent",
        "tool_use",
        "autonomous_systems",
        "ai_safety",
        "mcp",
        "reasoning",
        "agentic_framework",
        "agent_sdk"
      ],
      "excludeTags": [],
      "includeLabels": [
        {
          "id": "ai_agents",
          "label": "AI Agents"
        },
        {
          "id": "multi_agent",
          "label": "Multi Agent"
        },
        {
          "id": "tool_use",
          "label": "Tool Use"
        },
        {
          "id": "autonomous_systems",
          "label": "Autonomous Systems"
        },
        {
          "id": "ai_safety",
          "label": "AI Safety"
        },
        {
          "id": "mcp",
          "label": "MCP"
        },
        {
          "id": "reasoning",
          "label": "Reasoning"
        },
        {
          "id": "agentic_framework",
          "label": "Agentic Framework"
        },
        {
          "id": "agent_sdk",
          "label": "Agent SDK"
        }
      ],
      "excludeLabels": [],
      "minImportanceScore": 0.4,
      "outputFormat": "markdown_digest",
      "outputPath": "W:\\Websites\\sites\\ghost-in-the-models\\news-digests",
      "maxArticlesPerRun": 10,
      "sourceCoverageCount": 12,
      "explicitSourceCoverageCount": 12
    },
    {
      "slug": "kol-tregaskes-photography",
      "name": "Kol Tregaskes Photography",
      "shortName": "Photography",
      "role": "photography",
      "description": "Photography news â€” cameras, gear, editing software, technique, AI photography tools, competitions.",
      "note": null,
      "newsEnabled": true,
      "includeTags": [
        "photography",
        "camera",
        "photo_editing",
        "lightroom",
        "photoshop",
        "capture_one",
        "photography_ai",
        "camera_release",
        "lens",
        "photography_technique",
        "photography_business"
      ],
      "excludeTags": [
        "crypto",
        "crypto_trading",
        "crypto_defi",
        "crypto_regulation"
      ],
      "includeLabels": [
        {
          "id": "photography",
          "label": "Photography"
        },
        {
          "id": "camera",
          "label": "Camera"
        },
        {
          "id": "photo_editing",
          "label": "Photo Editing"
        },
        {
          "id": "lightroom",
          "label": "Lightroom"
        },
        {
          "id": "photoshop",
          "label": "Photoshop"
        },
        {
          "id": "capture_one",
          "label": "Capture One"
        },
        {
          "id": "photography_ai",
          "label": "Photography AI"
        },
        {
          "id": "camera_release",
          "label": "Camera Release"
        },
        {
          "id": "lens",
          "label": "Lens"
        },
        {
          "id": "photography_technique",
          "label": "Photography Technique"
        },
        {
          "id": "photography_business",
          "label": "Photography Business"
        }
      ],
      "excludeLabels": [
        {
          "id": "crypto",
          "label": "Crypto"
        },
        {
          "id": "crypto_trading",
          "label": "Crypto Trading"
        },
        {
          "id": "crypto_defi",
          "label": "Crypto Defi"
        },
        {
          "id": "crypto_regulation",
          "label": "Crypto Regulation"
        }
      ],
      "minImportanceScore": 0.4,
      "outputFormat": "markdown_digest",
      "outputPath": "W:\\Websites\\sites\\kol-tregaskes-photography\\news-digests",
      "maxArticlesPerRun": 10,
      "sourceCoverageCount": 0,
      "explicitSourceCoverageCount": 0
    },
    {
      "slug": "elusion-works",
      "name": "Elusion Works",
      "shortName": "Elusion Works",
      "role": "umbrella-brand",
      "description": "Umbrella brand and estate index. No direct shared news output configured.",
      "note": "This site is part of the estate but does not currently publish a news digest.",
      "newsEnabled": false,
      "includeTags": [],
      "excludeTags": [],
      "includeLabels": [],
      "excludeLabels": [],
      "minImportanceScore": null,
      "outputFormat": null,
      "outputPath": null,
      "maxArticlesPerRun": null,
      "sourceCoverageCount": 0,
      "explicitSourceCoverageCount": 0
    }
  ],
  "sources": [
    {
      "id": "techcrunch-ai",
      "name": "TechCrunch AI",
      "adapter": "rss",
      "url": "https://techcrunch.com/category/artificial-intelligence/feed/",
      "host": "techcrunch.com",
      "listingUrl": null,
      "section": "Top Stories",
      "status": "active",
      "maxItems": null,
      "categories": [
        "industry-media",
        "ai-newsroom"
      ],
      "categoryLabels": [
        {
          "id": "industry-media",
          "label": "Industry Media"
        },
        {
          "id": "ai-newsroom",
          "label": "AI Newsroom"
        }
      ],
      "tags": [
        "announcement",
        "product_launch",
        "funding",
        "acquisition",
        "industry_move"
      ],
      "tagLabels": [
        {
          "id": "announcement",
          "label": "Announcement"
        },
        {
          "id": "product_launch",
          "label": "Product Launch"
        },
        {
          "id": "funding",
          "label": "Funding"
        },
        {
          "id": "acquisition",
          "label": "Acquisition"
        },
        {
          "id": "industry_move",
          "label": "Industry Move"
        }
      ],
      "siteScope": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteSlugs": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteNames": [
        "Kol's Korner",
        "AI Resource Hub",
        "Axy Lusion",
        "Ghost in the Model"
      ],
      "routeMode": "explicit",
      "articleLinkPattern": null,
      "sourceType": "media",
      "sourceTypeLabel": "Media / analysis",
      "collectionMode": "automated",
      "collectionLabel": "Automated public source",
      "verificationMode": "cross_check",
      "verificationLabel": "Cross-check before promotion",
      "policyRisk": "review",
      "policyRiskLabel": "Review",
      "policyNote": "Useful for fast awareness, but naming, dates, prices, and capability claims should be verified against primary sources before public promotion."
    },
    {
      "id": "the-verge-ai",
      "name": "The Verge AI",
      "adapter": "html",
      "url": "https://www.theverge.com/ai-artificial-intelligence",
      "host": "theverge.com",
      "listingUrl": "https://www.theverge.com/ai-artificial-intelligence",
      "section": "Industry",
      "status": "active",
      "maxItems": 5,
      "categories": [
        "industry-media",
        "consumer-tech"
      ],
      "categoryLabels": [
        {
          "id": "industry-media",
          "label": "Industry Media"
        },
        {
          "id": "consumer-tech",
          "label": "Consumer Tech"
        }
      ],
      "tags": [
        "announcement",
        "product_launch",
        "policy",
        "industry_move"
      ],
      "tagLabels": [
        {
          "id": "announcement",
          "label": "Announcement"
        },
        {
          "id": "product_launch",
          "label": "Product Launch"
        },
        {
          "id": "policy",
          "label": "Policy"
        },
        {
          "id": "industry_move",
          "label": "Industry Move"
        }
      ],
      "siteScope": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteSlugs": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteNames": [
        "Kol's Korner",
        "AI Resource Hub",
        "Axy Lusion",
        "Ghost in the Model"
      ],
      "routeMode": "explicit",
      "articleLinkPattern": "^https://www\\.theverge\\.com/\\d{4}/",
      "sourceType": "media",
      "sourceTypeLabel": "Media / analysis",
      "collectionMode": "automated",
      "collectionLabel": "Automated public source",
      "verificationMode": "cross_check",
      "verificationLabel": "Cross-check before promotion",
      "policyRisk": "review",
      "policyRiskLabel": "Review",
      "policyNote": "Useful for fast awareness, but naming, dates, prices, and capability claims should be verified against primary sources before public promotion."
    },
    {
      "id": "ars-technica-ai",
      "name": "Ars Technica AI",
      "adapter": "html",
      "url": "https://arstechnica.com/tag/artificial-intelligence/",
      "host": "arstechnica.com",
      "listingUrl": "https://arstechnica.com/tag/artificial-intelligence/",
      "section": "Industry",
      "status": "active",
      "maxItems": 5,
      "categories": [
        "industry-media",
        "technical-analysis"
      ],
      "categoryLabels": [
        {
          "id": "industry-media",
          "label": "Industry Media"
        },
        {
          "id": "technical-analysis",
          "label": "Technical Analysis"
        }
      ],
      "tags": [
        "research_paper",
        "open_source",
        "hardware",
        "policy"
      ],
      "tagLabels": [
        {
          "id": "research_paper",
          "label": "Research Paper"
        },
        {
          "id": "open_source",
          "label": "Open Source"
        },
        {
          "id": "hardware",
          "label": "Hardware"
        },
        {
          "id": "policy",
          "label": "Policy"
        }
      ],
      "siteScope": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteSlugs": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteNames": [
        "Kol's Korner",
        "AI Resource Hub",
        "Axy Lusion",
        "Ghost in the Model"
      ],
      "routeMode": "explicit",
      "articleLinkPattern": "^https://arstechnica\\.com/[^/]+/\\d{4}/\\d{2}/[^?#]+/?$",
      "sourceType": "media",
      "sourceTypeLabel": "Media / analysis",
      "collectionMode": "automated",
      "collectionLabel": "Automated public source",
      "verificationMode": "cross_check",
      "verificationLabel": "Cross-check before promotion",
      "policyRisk": "review",
      "policyRiskLabel": "Review",
      "policyNote": "Useful for fast awareness, but naming, dates, prices, and capability claims should be verified against primary sources before public promotion."
    },
    {
      "id": "anthropic-news",
      "name": "Anthropic News",
      "adapter": "html",
      "url": "https://www.anthropic.com/news",
      "host": "anthropic.com",
      "listingUrl": "https://www.anthropic.com/news",
      "section": "Top Stories",
      "status": "active",
      "maxItems": 5,
      "categories": [
        "provider-blog",
        "official-lab"
      ],
      "categoryLabels": [
        {
          "id": "provider-blog",
          "label": "Provider Blog"
        },
        {
          "id": "official-lab",
          "label": "Official Lab"
        }
      ],
      "tags": [
        "model_release",
        "api_update",
        "ai_agents",
        "ai_safety"
      ],
      "tagLabels": [
        {
          "id": "model_release",
          "label": "Model Release"
        },
        {
          "id": "api_update",
          "label": "Api Update"
        },
        {
          "id": "ai_agents",
          "label": "AI Agents"
        },
        {
          "id": "ai_safety",
          "label": "AI Safety"
        }
      ],
      "siteScope": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteSlugs": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteNames": [
        "Kol's Korner",
        "AI Resource Hub",
        "Axy Lusion",
        "Ghost in the Model"
      ],
      "routeMode": "explicit",
      "articleLinkPattern": "^https://www\\.anthropic\\.com/news/[^/?#]+/?$",
      "sourceType": "official",
      "sourceTypeLabel": "Official lab / provider",
      "collectionMode": "automated",
      "collectionLabel": "Automated public source",
      "verificationMode": "official_first",
      "verificationLabel": "Official-first",
      "policyRisk": "low",
      "policyRiskLabel": "Low risk",
      "policyNote": "Official provider or lab publication. This is suitable for automated intake and primary verification."
    },
    {
      "id": "deepmind-blog",
      "name": "Google DeepMind Blog",
      "adapter": "html",
      "url": "https://deepmind.google/blog/",
      "host": "deepmind.google",
      "listingUrl": "https://deepmind.google/blog/",
      "section": "Research & Products",
      "status": "active",
      "maxItems": 5,
      "categories": [
        "provider-blog",
        "research-lab"
      ],
      "categoryLabels": [
        {
          "id": "provider-blog",
          "label": "Provider Blog"
        },
        {
          "id": "research-lab",
          "label": "Research Lab"
        }
      ],
      "tags": [
        "research_paper",
        "model_release",
        "architecture",
        "training"
      ],
      "tagLabels": [
        {
          "id": "research_paper",
          "label": "Research Paper"
        },
        {
          "id": "model_release",
          "label": "Model Release"
        },
        {
          "id": "architecture",
          "label": "Architecture"
        },
        {
          "id": "training",
          "label": "Training"
        }
      ],
      "siteScope": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteSlugs": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteNames": [
        "Kol's Korner",
        "AI Resource Hub",
        "Axy Lusion",
        "Ghost in the Model"
      ],
      "routeMode": "explicit",
      "articleLinkPattern": "^https://deepmind\\.google/blog/[^/?#]+/?$",
      "sourceType": "official",
      "sourceTypeLabel": "Official lab / provider",
      "collectionMode": "automated",
      "collectionLabel": "Automated public source",
      "verificationMode": "official_first",
      "verificationLabel": "Official-first",
      "policyRisk": "low",
      "policyRiskLabel": "Low risk",
      "policyNote": "Official provider or lab publication. This is suitable for automated intake and primary verification."
    },
    {
      "id": "meta-ai-blog",
      "name": "Meta AI Blog",
      "adapter": "html",
      "url": "https://ai.meta.com/blog/",
      "host": "ai.meta.com",
      "listingUrl": "https://ai.meta.com/blog/",
      "section": "Research & Products",
      "status": "active",
      "maxItems": 5,
      "categories": [
        "provider-blog",
        "research-lab"
      ],
      "categoryLabels": [
        {
          "id": "provider-blog",
          "label": "Provider Blog"
        },
        {
          "id": "research-lab",
          "label": "Research Lab"
        }
      ],
      "tags": [
        "research_paper",
        "model_release",
        "open_source",
        "architecture"
      ],
      "tagLabels": [
        {
          "id": "research_paper",
          "label": "Research Paper"
        },
        {
          "id": "model_release",
          "label": "Model Release"
        },
        {
          "id": "open_source",
          "label": "Open Source"
        },
        {
          "id": "architecture",
          "label": "Architecture"
        }
      ],
      "siteScope": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteSlugs": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteNames": [
        "Kol's Korner",
        "AI Resource Hub",
        "Axy Lusion",
        "Ghost in the Model"
      ],
      "routeMode": "explicit",
      "articleLinkPattern": "^https://ai\\.meta\\.com/blog/[^/?#]+/?$",
      "sourceType": "official",
      "sourceTypeLabel": "Official lab / provider",
      "collectionMode": "automated",
      "collectionLabel": "Automated public source",
      "verificationMode": "official_first",
      "verificationLabel": "Official-first",
      "policyRisk": "low",
      "policyRiskLabel": "Low risk",
      "policyNote": "Official provider or lab publication. This is suitable for automated intake and primary verification."
    },
    {
      "id": "hugging-face-blog",
      "name": "Hugging Face Blog",
      "adapter": "rss",
      "url": "https://huggingface.co/blog/feed.xml",
      "host": "huggingface.co",
      "listingUrl": null,
      "section": "Research & Products",
      "status": "active",
      "maxItems": null,
      "categories": [
        "platform-blog",
        "open-source"
      ],
      "categoryLabels": [
        {
          "id": "platform-blog",
          "label": "Platform Blog"
        },
        {
          "id": "open-source",
          "label": "Open Source"
        }
      ],
      "tags": [
        "open_source",
        "model_release",
        "tool_use",
        "agentic_framework"
      ],
      "tagLabels": [
        {
          "id": "open_source",
          "label": "Open Source"
        },
        {
          "id": "model_release",
          "label": "Model Release"
        },
        {
          "id": "tool_use",
          "label": "Tool Use"
        },
        {
          "id": "agentic_framework",
          "label": "Agentic Framework"
        }
      ],
      "siteScope": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteSlugs": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteNames": [
        "Kol's Korner",
        "AI Resource Hub",
        "Axy Lusion",
        "Ghost in the Model"
      ],
      "routeMode": "explicit",
      "articleLinkPattern": null,
      "sourceType": "official",
      "sourceTypeLabel": "Official lab / provider",
      "collectionMode": "automated",
      "collectionLabel": "Automated public source",
      "verificationMode": "official_first",
      "verificationLabel": "Official-first",
      "policyRisk": "low",
      "policyRiskLabel": "Low risk",
      "policyNote": "Official provider or lab publication. This is suitable for automated intake and primary verification."
    },
    {
      "id": "mit-technology-review-ai",
      "name": "MIT Technology Review AI",
      "adapter": "rss",
      "url": "https://www.technologyreview.com/topic/artificial-intelligence/feed/",
      "host": "technologyreview.com",
      "listingUrl": null,
      "section": "Industry",
      "status": "active",
      "maxItems": null,
      "categories": [
        "industry-media",
        "analysis"
      ],
      "categoryLabels": [
        {
          "id": "industry-media",
          "label": "Industry Media"
        },
        {
          "id": "analysis",
          "label": "Analysis"
        }
      ],
      "tags": [
        "policy",
        "research_paper",
        "industry_move",
        "ai_safety"
      ],
      "tagLabels": [
        {
          "id": "policy",
          "label": "Policy"
        },
        {
          "id": "research_paper",
          "label": "Research Paper"
        },
        {
          "id": "industry_move",
          "label": "Industry Move"
        },
        {
          "id": "ai_safety",
          "label": "AI Safety"
        }
      ],
      "siteScope": [
        "kols-korner",
        "ai-resource-hub",
        "ghost-in-the-models"
      ],
      "routeSiteSlugs": [
        "kols-korner",
        "ai-resource-hub",
        "ghost-in-the-models"
      ],
      "routeSiteNames": [
        "Kol's Korner",
        "AI Resource Hub",
        "Ghost in the Model"
      ],
      "routeMode": "explicit",
      "articleLinkPattern": null,
      "sourceType": "media",
      "sourceTypeLabel": "Media / analysis",
      "collectionMode": "automated",
      "collectionLabel": "Automated public source",
      "verificationMode": "cross_check",
      "verificationLabel": "Cross-check before promotion",
      "policyRisk": "review",
      "policyRiskLabel": "Review",
      "policyNote": "Useful for fast awareness, but naming, dates, prices, and capability claims should be verified against primary sources before public promotion."
    },
    {
      "id": "arxiv-cs-ai",
      "name": "arXiv cs.AI",
      "adapter": "rss",
      "url": "https://export.arxiv.org/rss/cs.AI",
      "host": "export.arxiv.org",
      "listingUrl": null,
      "section": "Research & Products",
      "status": "active",
      "maxItems": null,
      "categories": [
        "research-feed",
        "academic"
      ],
      "categoryLabels": [
        {
          "id": "research-feed",
          "label": "Research Feed"
        },
        {
          "id": "academic",
          "label": "Academic"
        }
      ],
      "tags": [
        "research_paper",
        "evaluation",
        "reasoning",
        "ai_agents"
      ],
      "tagLabels": [
        {
          "id": "research_paper",
          "label": "Research Paper"
        },
        {
          "id": "evaluation",
          "label": "Evaluation"
        },
        {
          "id": "reasoning",
          "label": "Reasoning"
        },
        {
          "id": "ai_agents",
          "label": "AI Agents"
        }
      ],
      "siteScope": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteSlugs": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteNames": [
        "Kol's Korner",
        "AI Resource Hub",
        "Axy Lusion",
        "Ghost in the Model"
      ],
      "routeMode": "explicit",
      "articleLinkPattern": null,
      "sourceType": "research",
      "sourceTypeLabel": "Research / open source",
      "collectionMode": "automated",
      "collectionLabel": "Automated public source",
      "verificationMode": "cross_check",
      "verificationLabel": "Cross-check before promotion",
      "policyRisk": "low",
      "policyRiskLabel": "Low risk",
      "policyNote": "Good for discovery and signal gathering, but product claims should still be cross-checked with official docs where possible."
    },
    {
      "id": "arxiv-cs-lg",
      "name": "arXiv cs.LG",
      "adapter": "rss",
      "url": "https://export.arxiv.org/rss/cs.LG",
      "host": "export.arxiv.org",
      "listingUrl": null,
      "section": "Research & Products",
      "status": "active",
      "maxItems": null,
      "categories": [
        "research-feed",
        "academic"
      ],
      "categoryLabels": [
        {
          "id": "research-feed",
          "label": "Research Feed"
        },
        {
          "id": "academic",
          "label": "Academic"
        }
      ],
      "tags": [
        "research_paper",
        "training",
        "architecture",
        "evaluation"
      ],
      "tagLabels": [
        {
          "id": "research_paper",
          "label": "Research Paper"
        },
        {
          "id": "training",
          "label": "Training"
        },
        {
          "id": "architecture",
          "label": "Architecture"
        },
        {
          "id": "evaluation",
          "label": "Evaluation"
        }
      ],
      "siteScope": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteSlugs": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteNames": [
        "Kol's Korner",
        "AI Resource Hub",
        "Axy Lusion",
        "Ghost in the Model"
      ],
      "routeMode": "explicit",
      "articleLinkPattern": null,
      "sourceType": "research",
      "sourceTypeLabel": "Research / open source",
      "collectionMode": "automated",
      "collectionLabel": "Automated public source",
      "verificationMode": "cross_check",
      "verificationLabel": "Cross-check before promotion",
      "policyRisk": "low",
      "policyRiskLabel": "Low risk",
      "policyNote": "Good for discovery and signal gathering, but product claims should still be cross-checked with official docs where possible."
    },
    {
      "id": "venturebeat-ai",
      "name": "VentureBeat AI",
      "adapter": "rss",
      "url": "https://venturebeat.com/category/ai/feed/",
      "host": "venturebeat.com",
      "listingUrl": null,
      "section": "Industry",
      "status": "partial",
      "maxItems": null,
      "categories": [
        "industry-media",
        "enterprise-ai"
      ],
      "categoryLabels": [
        {
          "id": "industry-media",
          "label": "Industry Media"
        },
        {
          "id": "enterprise-ai",
          "label": "Enterprise AI"
        }
      ],
      "tags": [
        "announcement",
        "product_launch",
        "industry_move",
        "ai_agents"
      ],
      "tagLabels": [
        {
          "id": "announcement",
          "label": "Announcement"
        },
        {
          "id": "product_launch",
          "label": "Product Launch"
        },
        {
          "id": "industry_move",
          "label": "Industry Move"
        },
        {
          "id": "ai_agents",
          "label": "AI Agents"
        }
      ],
      "siteScope": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteSlugs": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteNames": [
        "Kol's Korner",
        "AI Resource Hub",
        "Axy Lusion",
        "Ghost in the Model"
      ],
      "routeMode": "explicit",
      "articleLinkPattern": null,
      "sourceType": "media",
      "sourceTypeLabel": "Media / analysis",
      "collectionMode": "automated",
      "collectionLabel": "Automated public source",
      "verificationMode": "cross_check",
      "verificationLabel": "Cross-check before promotion",
      "policyRisk": "review",
      "policyRiskLabel": "Review",
      "policyNote": "Useful for fast awareness, but naming, dates, prices, and capability claims should be verified against primary sources before public promotion."
    },
    {
      "id": "bens-bites",
      "name": "Ben's Bites",
      "adapter": "html",
      "url": "https://www.bensbites.co/",
      "host": "bensbites.co",
      "listingUrl": "https://www.bensbites.co/",
      "section": "Industry",
      "status": "partial",
      "maxItems": 3,
      "categories": [
        "newsletter",
        "curated-digest"
      ],
      "categoryLabels": [
        {
          "id": "newsletter",
          "label": "Newsletter"
        },
        {
          "id": "curated-digest",
          "label": "Curated Digest"
        }
      ],
      "tags": [
        "announcement",
        "product_launch",
        "industry_move",
        "open_source"
      ],
      "tagLabels": [
        {
          "id": "announcement",
          "label": "Announcement"
        },
        {
          "id": "product_launch",
          "label": "Product Launch"
        },
        {
          "id": "industry_move",
          "label": "Industry Move"
        },
        {
          "id": "open_source",
          "label": "Open Source"
        }
      ],
      "siteScope": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteSlugs": [
        "kols-korner",
        "ai-resource-hub",
        "axylusion",
        "ghost-in-the-models"
      ],
      "routeSiteNames": [
        "Kol's Korner",
        "AI Resource Hub",
        "Axy Lusion",
        "Ghost in the Model"
      ],
      "routeMode": "explicit",
      "articleLinkPattern": "^https://www\\.bensbites\\.(?:co|com)/p/",
      "sourceType": "digest",
      "sourceTypeLabel": "Digest / newsletter",
      "collectionMode": "automated",
      "collectionLabel": "Automated public source",
      "verificationMode": "cross_check",
      "verificationLabel": "Cross-check before promotion",
      "policyRisk": "review",
      "policyRiskLabel": "Review",
      "policyNote": "Useful for fast awareness, but naming, dates, prices, and capability claims should be verified against primary sources before public promotion."
    }
  ],
  "filteringModel": [
    {
      "step": 1,
      "title": "Source categories",
      "detail": "Every source gets human-readable coverage categories so you can audit the source mix at a glance."
    },
    {
      "step": 2,
      "title": "Source routing tags",
      "detail": "Stable beats such as model releases, research papers, policy, photography, or crypto travel with the source before article scoring starts."
    },
    {
      "step": 3,
      "title": "Article keyword tagging",
      "detail": "Title and summary keywords add or reinforce tags per story so a single source can still produce multiple story types."
    },
    {
      "step": 4,
      "title": "Site include and exclude rules",
      "detail": "Each website only keeps stories whose tags match its brief and does not keep stories tagged with excluded beats."
    }
  ],
  "guidance": {
    "canonicalHome": "Keep the canonical routing config in W:\\Websites\\shared\\website-tools\\pipelines\\news. Surface it in the hub, but do not fork it silently in multiple workspaces.",
    "aiResourceHubPolicy": "AI Resource Hub should only show technical AI coverage. Crypto, photography, and off-brief creative items should be blocked at routing time, not hidden later.",
    "sourceHandling": "Use the shared pipeline for source discovery and routing. Mirror it into the website and repo for transparency, but keep the source definitions in one canonical place."
  }
}
