{
  "schema_version": "jp-election-analysis-prefecture-delta-map-page.v1",
  "generated_at": "2026-06-13T13:05:59Z",
  "family_id": "prefecture-delta-map",
  "page_id": "prefecture-delta-map-standalone",
  "preferred_source_release_version": "2026-05-04-v051",
  "page": {
    "title": "Prefecture Delta Map",
    "subtitle": "Standalone prefecture map for 2025 to 2026 change-rate analysis.",
    "route_path": "/prefecture-delta-map.html",
    "status_class": "ready",
    "summary": "This page reads one explicit prefecture comparison packet and does not rebuild cross-election aggregates in the browser."
  },
  "page_assets": {
    "map_page_path": "/analysis/prefecture-delta-map/latest/map-page.json",
    "derived_csv_path": "/analysis/prefecture-delta-map/latest/nationwide.csv",
    "geometry_geojson_path": "/analysis/prefecture-delta-map/latest/prefectures-lite.geojson"
  },
  "contract": {
    "seed_spec_path": "specs/data-contracts/jp-election-db/schema/analysis-family-pipeline.md",
    "ratchet_rule": "resolve -> verify-authority -> build-family-packet -> compose-page -> mirror",
    "renderer_boundary": "Frontends read the prefecture delta packet only. Map-engine-specific geometry and rendering stay inside the frontend adapter boundary."
  },
  "datasets": [
    {
      "role": "prefecture_comparison_csv",
      "dataset_id": "jp-election-db.derived-extraction-data",
      "family": "prefecture-series",
      "dataset": "comparison-stats",
      "source_release_version": "2026-05-04-v051",
      "source_layer": "Layer 2 Release Facts",
      "current_yaml_public_key": "products/jp-election/derived/extraction/prefecture-series/comparison-stats/current.yaml",
      "entry_public_key": "products/jp-election/derived/extraction/prefecture-series/comparison-stats/latest/nationwide.csv",
      "notes": "Non-canonical prefecture comparison statistics built deterministically from Layer 2 by-election facts for explicit cross-election comparisons."
    }
  ],
  "defaults": {
    "comparison_key": "20250720_hc__20260208_hr",
    "component_family": "constituency",
    "metric_id": "actual_voters_change_rate_pct"
  },
  "metrics": [
    {
      "metric_id": "actual_voters_change_rate_pct",
      "label": "投票者数の増減率",
      "short_label": "投票者数",
      "format": "percent",
      "description": "2025 から 2026 への投票者数の相対増減率です。"
    },
    {
      "metric_id": "valid_votes_change_rate_pct",
      "label": "有効投票数の増減率",
      "short_label": "有効投票数",
      "format": "percent",
      "description": "2025 から 2026 への有効投票数の相対増減率です。"
    },
    {
      "metric_id": "eligible_voters_change_rate_pct",
      "label": "有権者数の増減率",
      "short_label": "有権者数",
      "format": "percent",
      "description": "2025 から 2026 への有権者数の相対増減率です。"
    },
    {
      "metric_id": "turnout_delta_pct_pt",
      "label": "投票率のポイント差",
      "short_label": "投票率差",
      "format": "pct_point",
      "description": "2025 と 2026 の投票率の差をポイント差で表します。"
    },
    {
      "metric_id": "turnout_change_rate_pct",
      "label": "投票率の増減率",
      "short_label": "投票率",
      "format": "percent",
      "description": "2025 から 2026 への投票率の相対増減率です。"
    }
  ],
  "comparison_catalog": [
    {
      "comparison_key": "20250720_hc__20260208_hr",
      "baseline_election_set_key": "20250720_hc",
      "target_election_set_key": "20260208_hr",
      "baseline_election_date": "2025-07-20",
      "target_election_date": "2026-02-08",
      "component_families": [
        "constituency",
        "proportional"
      ],
      "prefecture_count": 47
    }
  ],
  "warnings": [],
  "stages": [
    {
      "stage_id": "M1",
      "label": "resolve-current",
      "status": "pass",
      "detail": "Resolved derived comparison current.yaml entrypoint for the prefecture delta map."
    },
    {
      "stage_id": "M2",
      "label": "verify-authority",
      "status": "pass",
      "detail": "Derived comparison dataset covers both component families across all prefectures."
    },
    {
      "stage_id": "M3",
      "label": "compose-page-packet",
      "status": "pass",
      "detail": "Composed standalone packet that references the derived comparison CSV without duplicating its rows."
    },
    {
      "stage_id": "M4",
      "label": "mirror-public-site",
      "status": "pass",
      "detail": "Mirrored latest prefecture-delta-map packet plus supporting CSV into projects/jp-election-db/public-site/public/analysis/prefecture-delta-map."
    }
  ]
}
