{
  "built": {
    "at": "2026-11-03T21:41:27Z",
    "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-mexico-central-america 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": "5,942 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": "457 native tiles (previous 457), 0 outside mexico-central-america",
      "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": "457 native tiles (previous edition 2024edr1: 457); 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 457 native tiles: min -31 m, max 3,248 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": "457 of the 505 Copernicus tiles inside mexico-central-america present; 48 missing: N07W078, N07W079, N07W080, N07W081, N07W082, N07W083, N08W078, N08W079, N08W080, N08W081 ...",
      "note": "Known gap, unchanged from 2024edr1: the 48 tiles N07-N13 were never fetched to the build tree. Mask-only edition; tiles follow in a later edition (AER-4706).",
      "since": "TV7",
      "status": "warn",
      "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": "457 native tiles read; 0 with more than 1% void; worst N32W118 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 N14W081 loads with grid side 3601"
      }
    ],
    "TER-002": {
      "mip_tiles": 2742,
      "native_tiles": 457
    },
    "TER-006": [
      "N14W081",
      "N14W083",
      "N14W084",
      "N14W085",
      "N14W086",
      "N14W087",
      "N14W088",
      "N14W089",
      "N14W090",
      "N14W091",
      "N14W092",
      "N14W093",
      "N15W079",
      "N15W080",
      "N15W083",
      "N15W084",
      "N15W085",
      "N15W086",
      "N15W087",
      "N15W088",
      "N15W089",
      "N15W090",
      "N15W091",
      "N15W092",
      "N15W093",
      "N15W094",
      "N15W096",
      "N15W097",
      "N15W098",
      "N16W084",
      "N16W086",
      "N16W087",
      "N16W088",
      "N16W089",
      "N16W090",
      "N16W091",
      "N16W092",
      "N16W093",
      "N16W094",
      "N16W095",
      "N16W096",
      "N16W097",
      "N16W098",
      "N16W099",
      "N16W100",
      "N16W101",
      "N17W078",
      "N17W084",
      "N17W088",
      "N17W089",
      "N17W090",
      "N17W091",
      "N17W092",
      "N17W093",
      "N17W094",
      "N17W095",
      "N17W096",
      "N17W097",
      "N17W098",
      "N17W099",
      "N17W100",
      "N17W101",
      "N17W102",
      "N17W103",
      "N18W078",
      "N18W079",
      "N18W088",
      "N18W089",
      "N18W090",
      "N18W091",
      "N18W092",
      "N18W093",
      "N18W094",
      "N18W095",
      "N18W096",
      "N18W097",
      "N18W098",
      "N18W099",
      "N18W100",
      "N18W101",
      "N18W102",
      "N18W103",
      "N18W104",
      "N18W105",
      "N18W111",
      "N18W112",
      "N18W113",
      "N18W115",
      "N19W078",
      "N19W080",
      "N19W081",
      "N19W082",
      "N19W088",
      "N19W089",
      "N19W090",
      "N19W091",
      "N19W092",
      "N19W096",
      "N19W097",
      "N19W098",
      "N19W099",
      "N19W100",
      "N19W101",
      "N19W102",
      "N19W103",
      "N19W104",
      "N19W105",
      "N19W106",
      "N19W111",
      "N19W113",
      "N20W078",
      "N20W079",
      "N20W080",
      "N20W087",
      "N20W088",
      "N20W089",
      "N20W090",
      "N20W091",
      "N20W092",
      "N20W093",
      "N20W097",
      "N20W098",
      "N20W099",
      "N20W100",
      "N20W101",
      "N20W102",
      "N20W103",
      "N20W104",
      "N20W105",
      "N20W106",
      "N21W078",
      "N21W079",
      "N21W080",
      "N21W081",
      "N21W082",
      "N21W083",
      "N21W084",
      "N21W085",
      "N21W087",
      "N21W088",
      "N21W089",
      "N21W090",
      "N21W091",
      "N21W098",
      "N21W099",
      "N21W100",
      "N21W101",
      "N21W102",
      "N21W103",
      "N21W104",
      "N21W105",
      "N21W106",
      "N21W107",
      "N22W078",
      "N22W079",
      "N22W080",
      "N22W081",
      "N22W082",
      "N22W083",
      "N22W084",
      "N22W085",
      "N22W090",
      "N22W092",
      "N22W098",
      "N22W099",
      "N22W100",
      "N22W101",
      "N22W102",
      "N22W103",
      "N22W104",
      "N22W105",
      "N22W106",
      "N22W107",
      "N22W110",
      "N22W111",
      "N23W078",
      "N23W080",
      "N23W081",
      "N23W082",
      "N23W083",
      "N23W084",
      "N23W098",
      "N23W099",
      "N23W100",
      "N23W101",
      "N23W102",
      "N23W103",
      "N23W104",
      "N23W105",
      "N23W106",
      "N23W107",
      "N23W108",
      "N23W110",
      "N23W111",
      "N24W078",
      "N24W079",
      "N24W080",
      "N24W081",
      "N24W082",
      "N24W083",
      "N24W098",
      "N24W099",
      "N24W100",
      "N24W101",
      "N24W102",
      "N24W103",
      "N24W104",
      "N24W105",
      "N24W106",
      "N24W107",
      "N24W108",
      "N24W109",
      "N24W110",
      "N24W111",
      "N24W112",
      "N24W113",
      "N24W116",
      "N25W078",
      "N25W079",
      "N25W080",
      "N25W081",
      "N25W082",
      "N25W098",
      "N25W099",
      "N25W100",
      "N25W101",
      "N25W102",
      "N25W103",
      "N25W104",
      "N25W105",
      "N25W106",
      "N25W107",
      "N25W108",
      "N25W109",
      "N25W110",
      "N25W111",
      "N25W112",
      "N25W113",
      "N26W078",
      "N26W079",
      "N26W080",
      "N26W081",
      "N26W082",
      "N26W083",
      "N26W098",
      "N26W099",
      "N26W100",
      "N26W101",
      "N26W102",
      "N26W103",
      "N26W104",
      "N26W105",
      "N26W106",
      "N26W107",
      "N26W108",
      "N26W109",
      "N26W110",
      "N26W112",
      "N26W113",
      "N26W114",
      "N26W115",
      "N27W078",
      "N27W079",
      "N27W081",
      "N27W082",
      "N27W083",
      "N27W097",
      "N27W098",
      "N27W099",
      "N27W100",
      "N27W101",
      "N27W102",
      "N27W103",
      "N27W104",
      "N27W105",
      "N27W106",
      "N27W107",
      "N27W108",
      "N27W109",
      "N27W110",
      "N27W111",
      "N27W112",
      "N27W113",
      "N27W114",
      "N27W115",
      "N27W116",
      "N28W081",
      "N28W082",
      "N28W083",
      "N28W090",
      "N28W096",
      "N28W097",
      "N28W098",
      "N28W099",
      "N28W100",
      "N28W101",
      "N28W102",
      "N28W103",
      "N28W104",
      "N28W105",
      "N28W106",
      "N28W107",
      "N28W108",
      "N28W109",
      "N28W110",
      "N28W111",
      "N28W112",
      "N28W113",
      "N28W114",
      "N28W115",
      "N28W116",
      "N29W081",
      "N29W082",
      "N29W083",
      "N29W084",
      "N29W085",
      "N29W086",
      "N29W089",
      "N29W090",
      "N29W091",
      "N29W092",
      "N29W093",
      "N29W094",
      "N29W095",
      "N29W096",
      "N29W097",
      "N29W098",
      "N29W099",
      "N29W100",
      "N29W101",
      "N29W102",
      "N29W103",
      "N29W104",
      "N29W105",
      "N29W106",
      "N29W107",
      "N29W108",
      "N29W109",
      "N29W110",
      "N29W111",
      "N29W112",
      "N29W113",
      "N29W114",
      "N29W115",
      "N29W116",
      "N30W082",
      "N30W083",
      "N30W084",
      "N30W085",
      "N30W086",
      "N30W087",
      "N30W088",
      "N30W089",
      "N30W090",
      "N30W091",
      "N30W092",
      "N30W093",
      "N30W094",
      "N30W095",
      "N30W096",
      "N30W097",
      "N30W098",
      "N30W099",
      "N30W100",
      "N30W101",
      "N30W102",
      "N30W103",
      "N30W104",
      "N30W105",
      "N30W106",
      "N30W107",
      "N30W108",
      "N30W109",
      "N30W110",
      "N30W111",
      "N30W112",
      "N30W113",
      "N30W114",
      "N30W115",
      "N30W116",
      "N30W117",
      "N31W081",
      "N31W082",
      "N31W083",
      "N31W084",
      "N31W085",
      "N31W086",
      "N31W087",
      "N31W088",
      "N31W089",
      "N31W090",
      "N31W091",
      "N31W092",
      "N31W093",
      "N31W094",
      "N31W095",
      "N31W096",
      "N31W097",
      "N31W098",
      "N31W099",
      "N31W100",
      "N31W101",
      "N31W102",
      "N31W103",
      "N31W104",
      "N31W105",
      "N31W106",
      "N31W107",
      "N31W108",
      "N31W109",
      "N31W110",
      "N31W111",
      "N31W112",
      "N31W113",
      "N31W114",
      "N31W115",
      "N31W116",
      "N31W117",
      "N32W080",
      "N32W081",
      "N32W082",
      "N32W083",
      "N32W084",
      "N32W085",
      "N32W086",
      "N32W087",
      "N32W088",
      "N32W089",
      "N32W090",
      "N32W091",
      "N32W092",
      "N32W093",
      "N32W094",
      "N32W095",
      "N32W096",
      "N32W097",
      "N32W098",
      "N32W099",
      "N32W100",
      "N32W101",
      "N32W102",
      "N32W103",
      "N32W104",
      "N32W105",
      "N32W106",
      "N32W107",
      "N32W108",
      "N32W109",
      "N32W110",
      "N32W111",
      "N32W112",
      "N32W113",
      "N32W114",
      "N32W115",
      "N32W116",
      "N32W117",
      "N32W118"
    ],
    "TER-007": {
      "expected": 505,
      "missing": [
        "N07W078",
        "N07W079",
        "N07W080",
        "N07W081",
        "N07W082",
        "N07W083",
        "N08W078",
        "N08W079",
        "N08W080",
        "N08W081",
        "N08W082",
        "N08W083",
        "N08W084",
        "N09W078",
        "N09W079",
        "N09W080",
        "N09W081",
        "N09W082",
        "N09W083",
        "N09W084",
        "N09W085",
        "N09W086",
        "N10W084",
        "N10W085",
        "N10W086",
        "N10W110",
        "N11W084",
        "N11W085",
        "N11W086",
        "N11W087",
        "N12W082",
        "N12W083",
        "N12W084",
        "N12W085",
        "N12W086",
        "N12W087",
        "N12W088",
        "N13W081",
        "N13W082",
        "N13W084",
        "N13W085",
        "N13W086",
        "N13W087",
        "N13W088",
        "N13W089",
        "N13W090",
        "N13W091",
        "N13W092"
      ],
      "present": 457
    },
    "TER-008": {
      "over": [],
      "tiles": 457
    }
  },
  "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": 4262682259,
    "cycle": "2024edr2",
    "id": "terrain-mexico-central-america",
    "kind": "terrain",
    "schema_version": "1",
    "sha256": "61895e9f39775e39804f9e658f158c2b59e0a8b901ddc386a1fee417a66e399d"
  },
  "previous": {
    "cycle": "2024edr1",
    "sha256": "d32016bfc6761240edf29c3bc6ea845538e67412b34a36dda61bdb2cbde6cd9f"
  },
  "record": "build",
  "schema": "pack-report/1",
  "sources": [],
  "summary": {
    "fail": 0,
    "not_run": 2,
    "pass": 10,
    "warn": 1
  },
  "tables": {}
}
