{
  "name": "Warconomy version diff — v1.35.0",
  "asOf": "2026-06-05",
  "registry": "/datasets/conflict-economic-impact/versions/{version}/diff.json",
  "dataset": "conflict-economic-impact",
  "version": "1.35.0",
  "previousVersion": "1.34.0",
  "isCurrent": false,
  "materialized": true,
  "snapshotType": "full",
  "date": "2026-06-07",
  "kind": "editorial",
  "changeSummary": "Category machine endpoints + comparison hub. Added per-category JSON endpoints (/categories/<id>/data.json for sanctions, conflicts, chokepoints, commodities, dashboards) mirroring the human category surfaces (page ids, live/sample counts, source counts, review counts, high-priority review ids). Added a /comparisons hub (+ /comparisons/data.json) indexing every comparison/ranking surface (defense comparison/rankings, chokepoint rankings, rankings hub, series compare, source-quality matrices, category rankings, commodities dashboard) and a count-based /categories/rankings (+ data.json). Added /comparisons and /categories/rankings citation-graph reference nodes; wired sitemaps, llms.txt, and the manifest. The export gained comparisonsPath, comparisonsJsonPath, categoryRankingsPath, and categoryJsonPathPattern (materialized as v1.35.0; real diff vs v1.34.0). No data values changed. Export version bumped to 1.35.0.",
  "changePath": "/changes/1.35.0",
  "dataJsonPath": "/datasets/conflict-economic-impact/versions/1.35.0/data.json",
  "previousDataJsonPath": "/datasets/conflict-economic-impact/versions/1.34.0/data.json",
  "frozenPreviousSnapshot": true,
  "valueLevel": false,
  "diffJsonSchemaVersion": 2,
  "counts": {
    "observations": 52,
    "liveObservations": 47,
    "sampleObservations": 5,
    "sources": 34,
    "facts": 38,
    "series": 8,
    "distributions": 25,
    "queryIntents": 25,
    "glossaryTerms": 35
  },
  "countsDelta": {
    "observations": {
      "before": 52,
      "after": 52,
      "delta": 0
    },
    "liveObservations": {
      "before": 47,
      "after": 47,
      "delta": 0
    },
    "sampleObservations": {
      "before": 5,
      "after": 5,
      "delta": 0
    },
    "sources": {
      "before": 34,
      "after": 34,
      "delta": 0
    },
    "facts": {
      "before": 38,
      "after": 38,
      "delta": 0
    },
    "series": {
      "before": 8,
      "after": 8,
      "delta": 0
    },
    "distributions": {
      "before": 25,
      "after": 25,
      "delta": 0
    },
    "queryIntents": {
      "before": 25,
      "after": 25,
      "delta": 0
    },
    "glossaryTerms": {
      "before": 35,
      "after": 35,
      "delta": 0
    }
  },
  "fieldsDelta": {
    "added": [
      "comparisonsPath",
      "comparisonsJsonPath",
      "categoryRankingsPath",
      "categoryJsonPathPattern"
    ],
    "removed": [],
    "unchanged": 87
  },
  "graphDelta": {
    "nodes": {
      "before": 208,
      "after": 210,
      "delta": 2
    },
    "edges": {
      "before": 391,
      "after": 393,
      "delta": 2
    }
  },
  "valueDelta": null,
  "note": "Header/shape diff: count, top-level field (added/removed), and graph deltas. A full value-level diff needs both versions to have a frozen full payload.",
  "feed": "/feed.xml",
  "atom": "/atom.xml"
}