{
  "$comment": "webGCP manifest for the news KB per spec §5.2 — https://webgcp.org/spec/v0.1/. Authored 2026-05-16. Validates against the manifest schema once the schema is stub-published at https://webgcp.org/schemas/manifest/v0.1.json (reserved URL).",
  "manifest_version": "0.1.0",
  "$schema_canonical": "https://webgcp.org/schemas/manifest/v0.1.json",
  "kb": {
    "id": "urn:webgcp:news.energypager.com:news-kb",
    "owner": "The AI News (news.energypager.com operator)",
    "status": "active",
    "human_name": "The AI News — primary news corpus",
    "operator_url": "https://news.energypager.com"
  },
  "purpose": {
    "summary": "RSS-aggregated AI news articles, ~15-minute refresh cycle across 8 source feeds (TechCrunch AI, Anthropic, OpenAI, arXiv CS.AI, MIT Tech Review, DeepMind, The Verge, HN AI). Each article is summarized via Gemini Flash Lite with topic classification and embedded for vector search. Use this KB for: current AI news lookup, topic-filtered retrieval, source-attributed summaries, search across recent articles.",
    "declared_capabilities": [
      "article_lookup_by_id",
      "article_search_by_topic",
      "article_summary_with_provenance",
      "category_listing",
      "source_feed_listing"
    ]
  },
  "applicability": {
    "in_scope_when": [
      {
        "predicate": "topic_in",
        "values": [
          "ai-research",
          "machine-learning",
          "llms",
          "computer-vision",
          "robotics",
          "ai-ethics",
          "industry",
          "startups"
        ]
      },
      {
        "predicate": "time_range",
        "min": "2026-01-01",
        "max": "now()",
        "note": "Older articles may be present in the index but coverage is strong only from 2026-01-01 onward. Pre-2026 queries should expect degraded completeness."
      },
      {
        "predicate": "language_eq",
        "value": "en"
      }
    ],
    "out_of_scope_when": [
      {
        "predicate": "topic_outside_ai",
        "note": "Non-AI news (politics, finance, sports, general business). Return out_of_scope per spec §6.7."
      },
      {
        "predicate": "private_facts_about_individuals",
        "note": "This KB contains public-press articles only. Do not synthesize claims about real persons that aren't directly present in source articles. Return out_of_scope with reason 'private_facts'."
      },
      {
        "predicate": "real_time_breaking_news",
        "note": "15-minute refresh cadence is insufficient for breaking-news use cases (sub-minute freshness)."
      }
    ]
  },
  "inputs": {
    "required": [
      {
        "name": "query",
        "type": "string",
        "description": "Natural-language query or topic name",
        "minLength": 1,
        "maxLength": 500
      }
    ],
    "optional": [
      {
        "name": "category",
        "type": "string",
        "enum": [
          "ai-research",
          "machine-learning",
          "llms",
          "computer-vision",
          "robotics",
          "ai-ethics",
          "industry",
          "startups"
        ]
      },
      {
        "name": "max_age_days",
        "type": "integer",
        "minimum": 1,
        "maximum": 90,
        "default": 30
      },
      {
        "name": "max_results",
        "type": "integer",
        "minimum": 1,
        "maximum": 50,
        "default": 10
      }
    ],
    "on_missing": {
      "query": {
        "strategy": "hard_fail",
        "failure_type": "needs_input",
        "message": "query is required"
      }
    }
  },
  "authority": {
    "canonical_sources": [
      "https://www.technologyreview.com/feed/",
      "https://rss.arxiv.org/rss/cs.AI",
      "https://openai.com/blog/rss.xml",
      "https://techcrunch.com/category/artificial-intelligence/feed/",
      "https://hnrss.org/newest?q=AI+OR+LLM+OR+machine+learning&points=50",
      "https://www.anthropic.com/rss.xml",
      "https://deepmind.google/blog/rss.xml",
      "https://www.theverge.com/rss/ai-artificial-intelligence/index.xml"
    ],
    "freshness_sla": "PT15M",
    "freshness_sla_note": "RSS ingestion runs every 15 minutes via Cloud Scheduler → feed-ingester Cloud Run. Per-article retrieved_at is canonical for staleness; SLA describes ingestion cadence, not propagation latency."
  },
  "governance": {
    "acl_policy_ref": "urn:webgcp:news.energypager.com:acl/public-read",
    "acl_summary": "All retrieval is public-read; no authentication required for L0 read operations. Paid skills (chain execution, headless exploration, agent delegation) live in the Commerce layer and have their own ACLs.",
    "pii_class": "none",
    "pii_note": "Articles are public-press derivatives; the KB contains no PII. Article bodies may mention individuals (researchers, executives) by name in the public-press sense, which is permitted.",
    "retention_days": 365,
    "right_to_delete_supported": false,
    "right_to_delete_note": "Articles are public-press derivatives; takedown requests should go to the originating RSS source. This KB may retain an article reference (title + URL) even if the source removes the body."
  },
  "versioning": {
    "manifest_semver": "0.1.0",
    "artifact_index_version": "2026-05-16-rev1",
    "next_planned_revision": "0.2.0 (concurrent with webGCP spec v0.2)"
  },
  "webmcp_origin": {
    "page": "https://news.energypager.com",
    "registered_at": "2026-05-16T07:00:00Z",
    "webmcp_tools_count": "~25 (live list at webmcp.json)",
    "webmcp_manifest": "https://news.energypager.com/.well-known/webmcp.json",
    "note": "This KB is the read-only Context layer. The WebMCP manifest lists the full per-route tool surface, including paid Commerce-layer skills (out of scope for this Context manifest)."
  },
  "neighboring_layers": {
    "commerce": {
      "description": "Read access via this manifest is free (L0 public read). Paid skills (chain execution, headless exploration, agent delegation) live in the Commerce layer.",
      "commerce_descriptor": "https://news.energypager.com/.well-known/webmcp.json",
      "x402_supported": true,
      "settlement_asset": "USDC on Base"
    }
  },
  "spec_pin": {
    "spec_url": "https://webgcp.org/spec/v0.1/",
    "spec_version": "0.1.0-draft.2026-05-16",
    "spec_section_references": [
      "§5.1 server discovery",
      "§5.2 manifest schema",
      "§5.4 applicability",
      "§5.5 provenance",
      "§5.9 ACL"
    ]
  },
  "$status_2026_05_16": "Manifest authored statically. The query endpoint that returns Article responses bound by this manifest is Phase 2 work (see docs/webGCP-context-integration.md). L0 conformance currently asserts manifest correctness only; runtime conformance gates on Phase 2 completion."
}
