{
  "built": {
    "at": "2026-11-03T18:41:17Z",
    "builder_refs": {
      "pyEfis": "4e0c154643c379b91af5f478109e2b61cc5d0b62"
    },
    "commit": "ec8a6d1a45fe47eeb8cb06b64830659602c0cd9c",
    "repo": "billmallard/makerplane-data",
    "run_url": null,
    "runner": "local"
  },
  "checks": [
    {
      "blocking": true,
      "cannot_catch": "A pack_meta that is well formed but names the wrong id or cycle for the bytes inside.",
      "expected": "pack_meta present; kind is one the device knows",
      "id": "PACK-001",
      "measured": "id=terrain-us-east kind=terrain cycle=2024edr2 schema_version=1",
      "status": "pass",
      "title": "pack_meta is readable and names a known kind"
    },
    {
      "blocking": true,
      "cannot_catch": "A license tag or attribution that is present but wrong for the data.",
      "expected": "both non-empty",
      "id": "PACK-002",
      "measured": "attribution and license present",
      "status": "pass",
      "title": "Attribution and license are recorded in pack_meta"
    },
    {
      "blocking": true,
      "cannot_catch": "Whether the label matches where the data really came from. For a kind with a default label (ORIGIN_BY_KIND in packtools/report.py) the label comes from that table, not from the builder or the pack, so the check is tautological and always passes; measured says which. With --origin it shows only that the label given is one of the three.",
      "expected": "one of federal / community / user-supplied",
      "id": "PACK-003",
      "measured": "federal (passed with --origin)",
      "since": "AER-699",
      "status": "pass",
      "title": "Origin label is federal, community or user-supplied"
    },
    {
      "blocking": false,
      "cannot_catch": "A recorded source that is not the one the build actually used, and an edition or sha256 that is well formed but wrong.",
      "expected": "at least one source, each with a non-empty edition and a 64-hex sha256",
      "id": "PACK-004",
      "measured": null,
      "note": "No upstream sources were supplied to the report (--sources).",
      "status": "not-run",
      "title": "Upstream sources are recorded"
    },
    {
      "blocking": true,
      "cannot_catch": "Wrong values the reader accepts. It shows the device can open and query these bytes, not that what it returns is right. The queries cover fixed points only: US kinds, 5 CONUS metros (Denver, Seattle, Atlanta, Los Angeles and Chicago); airports (Canada), Toronto and Vancouver; water, Puget Sound, Lake Michigan and Lake Ontario; navaids, idents DEN, SEA, LAX; procedures, airways V23, J80, V1; terrain, one native tile or the coarsest mosaic level. So it cannot catch a missing Alaska, Hawaii or Puerto Rico, or any state or province that holds none of those points.",
      "expected": "the reader opens the pack and every query returns data",
      "id": "ACC-001",
      "measured": "opened; 1/1 queries returned data",
      "status": "pass",
      "title": "Device acceptance: pyEfis's own reader opens the pack and answers a fixed query set"
    },
    {
      "blocking": true,
      "cannot_catch": "A tile of the right size holding wrong elevations.",
      "expected": "0 malformed members",
      "id": "TER-001",
      "measured": "4,876 members, 0 malformed",
      "status": "pass",
      "title": "Every member is a known terrain file of a valid size"
    },
    {
      "blocking": true,
      "cannot_catch": "A tile missing from inside the region (ocean tiles are absent by design, so the check cannot tell a gap from sea).",
      "expected": "0 tiles outside the region bbox; a regional pack with no native tiles fails (only the terrain-mosaic pack, by id, carries none)",
      "id": "TER-002",
      "measured": "375 native tiles (previous 375), 0 outside us-east",
      "status": "pass",
      "title": "Native tiles fall inside the pack's region"
    },
    {
      "blocking": true,
      "cannot_catch": "A tile that is present but holds wrong or older elevations, and a tile that was already missing from the previous edition.",
      "expected": "every native tile in the previous edition is still present. Applies across Copernicus editions too: a new edition that drops a tile fails",
      "id": "TER-006",
      "measured": "375 native tiles (previous edition 2024edr1: 375); lost 0; gained 0",
      "since": "AER-4102",
      "status": "pass",
      "title": "No native tile of the previous edition is missing"
    },
    {
      "blocking": true,
      "cannot_catch": "A mask that is present but wrong.",
      "expected": "0 missing masks",
      "id": "TER-003",
      "measured": 0,
      "since": "AER-2287",
      "status": "pass",
      "title": "Every masked .hgt carries its .wmask water mask"
    },
    {
      "blocking": false,
      "cannot_catch": "Anything in a tile that was not sampled, and wrong elevations that stay inside the plausible range.",
      "expected": "-500 m to 9,000 m, void at most 50%",
      "id": "TER-004",
      "measured": "16 of 375 native tiles: min -24 m, max 1,019 m, void 0.0%",
      "status": "pass",
      "title": "Elevation range and void fraction on a sample of tiles"
    },
    {
      "blocking": false,
      "cannot_catch": "Errors away from airports, and errors smaller than the outlier bound. Copernicus is a surface model (trees, buildings, rooftop helipads), and a bad FAA elevation looks the same as a bad tile: the check says where they disagree, not which one is wrong. Against a previous record without TER-005 metrics it judges the median only; only the worst 200 outliers are carried.",
      "expected": "Provisional threshold: median |difference| at most 50 ft, and no airport beyond 500 ft that was not beyond it in the previous edition. Needs an airports pack (--airports)",
      "id": "TER-005",
      "measured": null,
      "not_run_reason": "no-airports",
      "note": "No airports pack was given (--airports) to take field elevations from.",
      "pending_review": "catalogue v2 (TV7): QA has not reviewed this check's definition or threshold, so it cannot stop a publish yet",
      "provisional": "no edition-to-edition baseline yet (one published pair per kind when set); a warn level for a person to look at, to be re-set once enough records exist (AER-4102)",
      "since": "TV7",
      "status": "not-run",
      "title": "Spot heights against published airport field elevations"
    },
    {
      "blocking": false,
      "cannot_catch": "A tile that is present but holds wrong or older elevations, and a tile Copernicus itself does not publish.",
      "expected": "every GLO-30 tile that exists inside the region (packtools/data/glo30_tiles.txt, from the Copernicus tile list) is a native tile of the pack",
      "id": "TER-007",
      "measured": "375 of the 375 Copernicus tiles inside us-east present; 0 missing",
      "since": "TV7",
      "status": "pass",
      "title": "Every Copernicus tile inside the region is present"
    },
    {
      "blocking": false,
      "cannot_catch": "Voids at or under 1% of a tile (up to about 130,000 posts of a 3601 x 3601 tile), wrong elevations that are not void markers, and voids in the mip levels and mosaic (only native tiles are read).",
      "expected": "no native tile more than 1% void (GLO-30 has no voids; ocean is 0 m)",
      "id": "TER-008",
      "measured": "375 native tiles read; 0 with more than 1% void; worst N48W090 0.00%",
      "since": "TV7",
      "status": "pass",
      "title": "Void share of every native tile"
    }
  ],
  "gated": true,
  "metrics": {
    "ACC-001": [
      {
        "count": 3601,
        "min": 3601,
        "ok": true,
        "query": "native tile N24W075 loads with grid side 3601"
      }
    ],
    "TER-002": {
      "mip_tiles": 2250,
      "native_tiles": 375
    },
    "TER-006": [
      "N24W075",
      "N24W076",
      "N24W077",
      "N24W078",
      "N24W079",
      "N24W080",
      "N24W081",
      "N24W082",
      "N24W083",
      "N25W077",
      "N25W078",
      "N25W079",
      "N25W080",
      "N25W081",
      "N25W082",
      "N26W077",
      "N26W078",
      "N26W079",
      "N26W080",
      "N26W081",
      "N26W082",
      "N26W083",
      "N27W078",
      "N27W079",
      "N27W081",
      "N27W082",
      "N27W083",
      "N28W081",
      "N28W082",
      "N28W083",
      "N28W090",
      "N29W081",
      "N29W082",
      "N29W083",
      "N29W084",
      "N29W085",
      "N29W086",
      "N29W089",
      "N29W090",
      "N30W082",
      "N30W083",
      "N30W084",
      "N30W085",
      "N30W086",
      "N30W087",
      "N30W088",
      "N30W089",
      "N30W090",
      "N31W081",
      "N31W082",
      "N31W083",
      "N31W084",
      "N31W085",
      "N31W086",
      "N31W087",
      "N31W088",
      "N31W089",
      "N31W090",
      "N32W080",
      "N32W081",
      "N32W082",
      "N32W083",
      "N32W084",
      "N32W085",
      "N32W086",
      "N32W087",
      "N32W088",
      "N32W089",
      "N32W090",
      "N33W078",
      "N33W079",
      "N33W080",
      "N33W081",
      "N33W082",
      "N33W083",
      "N33W084",
      "N33W085",
      "N33W086",
      "N33W087",
      "N33W088",
      "N33W089",
      "N33W090",
      "N34W077",
      "N34W078",
      "N34W079",
      "N34W080",
      "N34W081",
      "N34W082",
      "N34W083",
      "N34W084",
      "N34W085",
      "N34W086",
      "N34W087",
      "N34W088",
      "N34W089",
      "N34W090",
      "N35W076",
      "N35W077",
      "N35W078",
      "N35W079",
      "N35W080",
      "N35W081",
      "N35W082",
      "N35W083",
      "N35W084",
      "N35W085",
      "N35W086",
      "N35W087",
      "N35W088",
      "N35W089",
      "N35W090",
      "N36W076",
      "N36W077",
      "N36W078",
      "N36W079",
      "N36W080",
      "N36W081",
      "N36W082",
      "N36W083",
      "N36W084",
      "N36W085",
      "N36W086",
      "N36W087",
      "N36W088",
      "N36W089",
      "N36W090",
      "N37W076",
      "N37W077",
      "N37W078",
      "N37W079",
      "N37W080",
      "N37W081",
      "N37W082",
      "N37W083",
      "N37W084",
      "N37W085",
      "N37W086",
      "N37W087",
      "N37W088",
      "N37W089",
      "N37W090",
      "N38W075",
      "N38W076",
      "N38W077",
      "N38W078",
      "N38W079",
      "N38W080",
      "N38W081",
      "N38W082",
      "N38W083",
      "N38W084",
      "N38W085",
      "N38W086",
      "N38W087",
      "N38W088",
      "N38W089",
      "N38W090",
      "N39W075",
      "N39W076",
      "N39W077",
      "N39W078",
      "N39W079",
      "N39W080",
      "N39W081",
      "N39W082",
      "N39W083",
      "N39W084",
      "N39W085",
      "N39W086",
      "N39W087",
      "N39W088",
      "N39W089",
      "N39W090",
      "N40W073",
      "N40W074",
      "N40W075",
      "N40W076",
      "N40W077",
      "N40W078",
      "N40W079",
      "N40W080",
      "N40W081",
      "N40W082",
      "N40W083",
      "N40W084",
      "N40W085",
      "N40W086",
      "N40W087",
      "N40W088",
      "N40W089",
      "N40W090",
      "N41W070",
      "N41W071",
      "N41W072",
      "N41W073",
      "N41W074",
      "N41W075",
      "N41W076",
      "N41W077",
      "N41W078",
      "N41W079",
      "N41W080",
      "N41W081",
      "N41W082",
      "N41W083",
      "N41W084",
      "N41W085",
      "N41W086",
      "N41W087",
      "N41W088",
      "N41W089",
      "N41W090",
      "N42W071",
      "N42W072",
      "N42W073",
      "N42W074",
      "N42W075",
      "N42W076",
      "N42W077",
      "N42W078",
      "N42W079",
      "N42W080",
      "N42W081",
      "N42W082",
      "N42W083",
      "N42W084",
      "N42W085",
      "N42W086",
      "N42W087",
      "N42W088",
      "N42W089",
      "N42W090",
      "N43W067",
      "N43W069",
      "N43W070",
      "N43W071",
      "N43W072",
      "N43W073",
      "N43W074",
      "N43W075",
      "N43W076",
      "N43W077",
      "N43W078",
      "N43W079",
      "N43W080",
      "N43W081",
      "N43W082",
      "N43W083",
      "N43W084",
      "N43W085",
      "N43W086",
      "N43W087",
      "N43W088",
      "N43W089",
      "N43W090",
      "N44W067",
      "N44W068",
      "N44W069",
      "N44W070",
      "N44W071",
      "N44W072",
      "N44W073",
      "N44W074",
      "N44W075",
      "N44W076",
      "N44W077",
      "N44W078",
      "N44W079",
      "N44W080",
      "N44W081",
      "N44W082",
      "N44W083",
      "N44W084",
      "N44W085",
      "N44W086",
      "N44W087",
      "N44W088",
      "N44W089",
      "N44W090",
      "N45W067",
      "N45W068",
      "N45W069",
      "N45W070",
      "N45W071",
      "N45W072",
      "N45W073",
      "N45W074",
      "N45W075",
      "N45W076",
      "N45W077",
      "N45W078",
      "N45W079",
      "N45W080",
      "N45W081",
      "N45W082",
      "N45W083",
      "N45W084",
      "N45W085",
      "N45W086",
      "N45W087",
      "N45W088",
      "N45W089",
      "N45W090",
      "N46W067",
      "N46W068",
      "N46W069",
      "N46W070",
      "N46W071",
      "N46W072",
      "N46W073",
      "N46W074",
      "N46W075",
      "N46W076",
      "N46W077",
      "N46W078",
      "N46W079",
      "N46W080",
      "N46W081",
      "N46W082",
      "N46W083",
      "N46W084",
      "N46W085",
      "N46W086",
      "N46W087",
      "N46W088",
      "N46W089",
      "N46W090",
      "N47W067",
      "N47W068",
      "N47W069",
      "N47W070",
      "N47W071",
      "N47W072",
      "N47W073",
      "N47W074",
      "N47W075",
      "N47W076",
      "N47W077",
      "N47W078",
      "N47W079",
      "N47W080",
      "N47W081",
      "N47W082",
      "N47W083",
      "N47W084",
      "N47W085",
      "N47W086",
      "N47W087",
      "N47W088",
      "N47W089",
      "N47W090",
      "N48W067",
      "N48W068",
      "N48W069",
      "N48W070",
      "N48W071",
      "N48W072",
      "N48W073",
      "N48W074",
      "N48W075",
      "N48W076",
      "N48W077",
      "N48W078",
      "N48W079",
      "N48W080",
      "N48W081",
      "N48W082",
      "N48W083",
      "N48W084",
      "N48W085",
      "N48W086",
      "N48W087",
      "N48W088",
      "N48W089",
      "N48W090"
    ],
    "TER-007": {
      "expected": 375,
      "missing": [],
      "present": 375
    },
    "TER-008": {
      "over": [],
      "tiles": 375
    }
  },
  "notice": "Experimental / Amateur-Built use only. Not certified. This data is provided as-is with no warranty and any use of the data is at your own risk.",
  "origin": "federal",
  "pack": {
    "bytes": 3662714121,
    "cycle": "2024edr2",
    "id": "terrain-us-east",
    "kind": "terrain",
    "schema_version": "1",
    "sha256": "f4fc489e7195b188d5382312c8cefd34343eb45f5b35d86937179bf61ddb7337"
  },
  "previous": {
    "cycle": "2024edr1",
    "sha256": "e4052abca23e2611c6f95d8c065e1c080b3195438109f66bbfbf1786651a261d"
  },
  "record": "build",
  "schema": "pack-report/1",
  "sources": [],
  "summary": {
    "fail": 0,
    "not_run": 2,
    "pass": 11,
    "warn": 0
  },
  "tables": {}
}
