{
  "project": {
    "title": "Electio Italia",
    "version": "0.21.0",
    "ready_for_real_data": true,
    "notes": [
      "Vote shares are recomputed from votes whenever a plausible denominator is available.",
      "Derived quality report now includes plausibility validations.",
      "Alias bootstrap and stricter consistency checks are included for demo bundles.",
      "Geometry pack and province overlay are declared in the manifest for reproducible map loading.",
      "Municipality lookup metadata is used when available to enrich province / geometry identifiers.",
      "Guided question cards and evidence ladder are part of the bundle-facing UX layer.",
      "Copy-ready citation and reproducibility lines help make each view shareable and method-aware.",
      "Party results can be delivered both as a monolithic CSV and as per-election shards for faster interactive loading.",
      "Coverage diagnostics now compare the published bundle against the official Eligendo open-data zip archives.",
      "Municipality summary rows can also be delivered as per-election shards to reduce initial browser load.",
      "The bundle can also declare a gap report that compares published coverage against the official Eligendo open-data archives.",
      "Municipality coverage is rebuilt from official Eligendo open-data zip archives across all Camera years plus Assemblea Costituente 1946.",
      "Products are also published through a product catalog plus per-product manifests, not only through the bundle-wide manifest.",
      "Every declared product also exposes a product-level inventory so users can see what is inside before loading the data.",
      "The public app now reads a web-optimized geometry pack, while the full-resolution boundaries remain published as a separate product.",
      "Critical browser libraries are now vendored locally and the public documentation pages load only the metadata they actually need."
    ]
  },
  "files": {
    "electionsMaster": "data/derived/elections_master.csv",
    "municipalitiesMaster": "data/derived/municipalities_master.csv",
    "partiesMaster": "data/derived/parties_master.csv",
    "territorialLineage": "data/derived/territorial_lineage.csv",
    "municipalitySummary": "data/derived/municipality_summary.csv",
    "municipalityResultsLong": "data/derived/municipality_results_long.csv",
    "municipalityResultsLongByElectionIndex": "data/derived/municipality_results_long_by_election.json",
    "municipalityAliases": "data/derived/municipality_aliases.csv",
    "geometry": "data/derived/geometries_web/municipalities_2021.topojson",
    "geometryGeojsonFallback": "data/derived/geometries_web/municipalities_2021.geojson",
    "dataQualityReport": "data/derived/data_quality_report.json",
    "customIndicators": "data/derived/custom_indicators.csv",
    "geometryPack": "data/derived/geometry_pack_web.json",
    "provinceGeometry": "data/derived/geometries_web/provinces_2021.topojson",
    "provinceGeometryGeojsonFallback": "data/derived/geometries_web/provinces_2021.geojson",
    "datasetRegistry": "data/derived/dataset_registry.json",
    "codebook": "data/derived/codebook.json",
    "usageNotes": "data/derived/usage_notes.json",
    "updateLog": "data/derived/update_log.json",
    "dataProducts": "data/derived/data_products.json",
    "datasetContracts": "data/derived/dataset_contracts.json",
    "provenance": "data/derived/provenance.json",
    "releaseManifest": "data/derived/release_manifest.json",
    "researchRecipes": "data/derived/research_recipes.json",
    "siteGuides": "data/derived/site_guides.json",
    "archiveBundleGapReport": "data/derived/archive_bundle_gap_report.json",
    "geometryPackFull": "data/derived/geometry_pack_full.json",
    "geometryFull": "data/derived/geometries/municipalities_2021.geojson",
    "provinceGeometryFull": "data/derived/geometries/provinces_2021.geojson",
    "webGeometryReport": "data/derived/web_geometry_report.json",
    "webCompressionReport": "data/derived/web_compression_report.json",
    "productCatalog": "data/products/product_catalog.json",
    "municipalitySummaryByElectionIndex": "data/derived/municipality_summary_by_election.json"
  },
  "contracts": {
    "geometryJoinPriority": [
      "geometry_id",
      "municipality_id",
      "name_current"
    ],
    "territorialModes": [
      "historical",
      "harmonized"
    ]
  },
  "loading": {
    "municipalitySummary": {
      "strategy": "deferred_by_election",
      "index": "data/derived/municipality_summary_by_election.json"
    },
    "municipalityResultsLong": {
      "strategy": "deferred_by_election",
      "index": "data/derived/municipality_results_long_by_election.json"
    }
  }
}
