{
 "schema_version": 1,
 "generated_for": "2026-09-30",
 "layers": {
  "datacenter": {
   "id": "datacenter",
   "label": "Data-center sentiment",
   "short": "Data centers",
   "status": "live",
   "scale": "diverging",
   "formula": "Score = (positive − negative) ÷ rated records. Each record with a stance_signal counts once: positive +1, negative −1, mixed 0. Range −1 (all negative) to +1 (all positive). Shown only when a state has at least 3 rated records; otherwise “Too few records”.",
   "min_items": 3,
   "unit": "rated records",
   "as_of": "2026-09-30",
   "source_name": "Singularity Farmer US data-center tracker"
  },
  "activity": {
   "id": "activity",
   "label": "Tracked activity",
   "short": "Activity",
   "status": "live",
   "scale": "sequential",
   "formula": "Count of tracked records per state: projects, local ballot measures and policies, including cancelled projects and past events. It shows where SF has covered, not how people feel.",
   "min_items": 1,
   "unit": "records",
   "as_of": "2026-09-30",
   "source_name": "Singularity Farmer US data-center tracker"
  },
  "ai": {
   "id": "ai",
   "label": "AI sentiment",
   "short": "AI",
   "status": "pending",
   "scale": "diverging",
   "formula": "No per-state AI-sentiment source has been delivered yet. This layer stays grey until one is loaded; nothing is inferred from other data.",
   "min_items": 0,
   "unit": "observations",
   "as_of": null,
   "source_name": "Source pending"
  }
 },
 "state": {
  "code": "WV",
  "name": "West Virginia",
  "layers": {
   "datacenter": {
    "status": "none",
    "value": null,
    "bin": null,
    "label": "No records",
    "n": 0,
    "sources": [],
    "as_of": null
   },
   "activity": {
    "status": "none",
    "value": null,
    "bin": null,
    "label": "No records",
    "n": 0,
    "sources": [],
    "as_of": null
   },
   "ai": {
    "status": "pending",
    "value": null,
    "bin": null,
    "label": "Source pending",
    "n": 0,
    "sources": [],
    "as_of": null
   }
  },
  "tracker": {
   "records": 0,
   "projects": 0,
   "by_status": {},
   "by_stance": {
    "positive": 0,
    "mixed": 0,
    "negative": 0,
    "unrated": 0
   },
   "moratoriums": 0,
   "ballot_nov3": 0,
   "events_60d": 0,
   "active_fight": false
  },
  "projects": [],
  "ballot_measures": [],
  "moratoriums": [],
  "events": [],
  "past": [],
  "undated": [],
  "sources": [],
  "influence": []
 }
}
