{
  "schema_version": "barindex.habitat-research-package.v1",
  "status": "prepared_for_distribution",
  "package_id": "lingonberry-habitat-v4-2026-10-30",
  "licence": "CC-BY-4.0",
  "licence_url": "https://creativecommons.org/licenses/by/4.0/",
  "creator": "Emil Hessman",
  "licensor": "Emil Hessman",
  "citation": "Emil Hessman (2026). B\u00e4rindex: Lingonberry habitat suitability in Sweden. Model release v4, 23 August 2026. https://xn--brindex-5wa.se/data/",
  "landing_page": "https://xn--brindex-5wa.se/data/",
  "package_date": "2026-10-30",
  "release_id": "bar_habitat_release_v4",
  "model_date": "2026-08-23",
  "species": "Vaccinium vitis-idaea",
  "species_slug": "lingon",
  "model_source": "low_complexity_hgb_challenger_v4",
  "grid": {
    "crs": "EPSG:3006",
    "pixel_size_m": [
      1000,
      1000
    ],
    "width": 649,
    "height": 1538,
    "bounds_west_south_east_north": [
      269000,
      6134000,
      918000,
      7672000
    ],
    "transform": [
      1000.0,
      0.0,
      269000.0,
      0.0,
      -1000.0,
      7672000.0
    ],
    "pixel_interpretation": "area",
    "dataset_cells": 447940,
    "scored_cells": 446606,
    "excluded_cells": 1334,
    "outside_dataset_pixels": 550222,
    "products": {
      "lingonberry-habitat.tif": {
        "dtype": "float32",
        "nodata": -9999.0,
        "bands": [
          {
            "band": 1,
            "name": "habitat_score",
            "units": "1",
            "valid_range": "0,1",
            "meaning": "Mean of five fold-model occurrence scores"
          },
          {
            "band": 2,
            "name": "habitat_percentile",
            "units": "1",
            "valid_range": "0,1",
            "meaning": "National eligible-cell rank; not probability"
          }
        ]
      },
      "lingonberry-quality.tif": {
        "dtype": "uint8",
        "nodata": 255,
        "bands": [
          {
            "band": 1,
            "name": "score_eligible",
            "codes": "0=excluded;1=scored;255=outside_dataset"
          },
          {
            "band": 2,
            "name": "uncertainty_tier",
            "codes": "1=low;2=medium;3=high;255=outside_dataset",
            "meaning": "Heuristic category; not a confidence interval"
          }
        ]
      }
    }
  },
  "inputs": {
    "release_manifest": {
      "path": "data/ml/releases/bar_habitat_release_v4/manifest.json",
      "sha256": "7d89dd17cfac85faf432c1868f3781e02e8d324c3976010e47cc7555a2a2bf09"
    },
    "surface": {
      "path": "data/ml/surfaces/bar_habitat_national_shadow_v3.parquet",
      "sha256": "0e7bfe59377cbc9dc8472eb8cd2172c8f09767d05ba500e1c35fcc4ec1903173",
      "bytes": 32404698
    },
    "release_contract": {
      "path": "ml/bar/contracts/bar_habitat_release_v4.frozen.json",
      "sha256": "0c47933fd5b19655505bb393fcd591302896e998e516040734af90e8cf2278fa",
      "bytes": 5027
    },
    "surface_report": {
      "path": "data/ml/reports/bar_habitat_national_shadow_v3.json",
      "sha256": "642c481bde6d22e1e3da2cfaae61c6d19232021089dc0c1f0ba90eb0b1181f49",
      "bytes": 6005
    },
    "public_review": {
      "path": "barindex/data/habitat-review.json",
      "sha256": "e72cbe39a07a2a348698c99076fce78f5448471030c818e69b464caa9edcb559",
      "bytes": 7210
    },
    "experiment_report": {
      "path": "data/ml/reports/bar_habitat_low_complexity_challenger_v4.json",
      "sha256": "de9d8fd9ac9639d5d76904b383992e983990b6f044dfe5f8e12568dbdd2830f0",
      "bytes": 74293
    },
    "readme": {
      "path": "ml/docs/barindex-research-package.md",
      "sha256": "0d8eb2daee4ad173783144786c3172d28307d96589c5a50efd42e0fac777c6d9"
    },
    "exporter": {
      "path": "ml/scripts/export_bar_research_packages.py",
      "sha256": "7df3559db6ccdff662a9a565ad617c962619c3cecac1ed01b12bcdb34eb53461"
    },
    "map_renderer": {
      "path": "ml/scripts/export_bar_habitat_review_assets.py",
      "sha256": "6484d420f95ea17c8632db6b3e57a0bb9b57522d13a41f506b19f4f9650531ca"
    },
    "dependency_lock": {
      "path": "ml/uv.lock",
      "sha256": "4822a34b3e6e2e536c2aa33da18481751c40aa25c34670dc310c6fb3a560bed4"
    },
    "regional_report": {
      "path": "data/ml/reports/bar_habitat_low_complexity_regional_audit_v4.json",
      "sha256": "5286e08b9d12e8365d0fa98dfe3e290498d8fc4b9ac830fd26477518e020b620"
    },
    "source_registry": {
      "path": "ml/feature_sources/feature_source_registry_v1.json",
      "sha256": "ca854e616f40f14027aadc796248ad66afc294dff9a24cb8959ad63af8dd1fae"
    }
  },
  "verification": {
    "all_scored_values_exact": true,
    "quality_and_masks_exact": true,
    "map_geometry_exact": true,
    "map_assets_reproduced_from_tiffs": [
      {
        "path": "barindex/public/habitat/lingon-habitat-lookup.png",
        "sha256": "6db1835b0bc1bc1fe48f2772786bc05eaac0e2e7a6b156afc6d0d9716e053679",
        "bytes": 664061
      },
      {
        "path": "barindex/public/habitat/lingon-habitat-percentile.png",
        "sha256": "57b065b81bd6733a00d8b103025fbbe269c19c9dc37f66924783158334b390c9",
        "bytes": 780764
      },
      {
        "path": "barindex/public/habitat/lingon-habitat-web-mercator-overview.png",
        "sha256": "d1b19b6926c46af920cf0083595f6e4116b4d199ac070277c16e7cb453bc1946",
        "bytes": 11329
      },
      {
        "path": "barindex/public/habitat/lingon-habitat-web-mercator-regional.png",
        "sha256": "d5bf225465dbfeaed1ea22498679395ae287200653416ccb41c1531561a9f684",
        "bytes": 72188
      },
      {
        "path": "barindex/public/habitat/lingon-habitat-web-mercator.png",
        "sha256": "c008efea8915c324f9d6f9d9ad4ced50dbc83930cc1d1208ef01e78bcf8277d7",
        "bytes": 567744
      },
      {
        "path": "barindex/public/habitat/lingon-uncertainty.png",
        "sha256": "5ba920922531ed56473277c1da396fff303e9eec89687fd733bef0569975c10f",
        "bytes": 103842
      }
    ]
  },
  "software": {
    "python": "3.14.3",
    "numpy": "2.4.6",
    "pandas": "2.3.3",
    "rasterio": "1.5.0",
    "gdal": "3.12.1"
  },
  "files": {
    "README.md": {
      "sha256": "a1e66765c99a9a197137614846077df442690c5fe7a5acbbeda68462a25179d1",
      "bytes": 11862
    },
    "lingonberry-habitat.tif": {
      "sha256": "f3afedc0afd562c25a55feb228563ee66ebcf5848158cf9f5e0d35e21c1a986d",
      "bytes": 3840692
    },
    "lingonberry-quality.tif": {
      "sha256": "dbc9d107203f5d551da4b7b9607a71a6b994cf8425d2a82f8fb0f8a3807d0822",
      "bytes": 173657
    }
  }
}
