Checks¶
What each build check tests. A page lists the checks that guard its column; whether a given build passed them is recorded in that build's manifest.json["checks"], not here.
| Kind of check | What it tests | Cited checks |
|---|---|---|
^source\.hash\. |
the pinned file's SHA256 equals the registry's: the bytes are exactly the ones reviewed | 15 |
^spd\.(small_user|large_user)\.schema$ |
the SPD file's header is exactly the reviewed header, in order | 2 |
^spd\.columns$ |
the two SPD files together carry the expected columns | 1 |
^spd\.primary_key_(unique|nonnull)$ |
the key (pc_norm, introduced_on) is unique and never null | 2 |
^sspl\.schema$ |
the SSPL file's header is exactly the reviewed header, in order | 1 |
^sspl\.primary_key_unique$ |
pc_norm is unique in the SSPL | 1 |
^sspl\.postcode_type$ |
PostcodeType takes only the values S and L | 1 |
^phs\.[^.]+\.source\.schema$ |
the PHS file's header is the declared one | 6 |
^phs\.[^.]+\.source\.key_unique$ |
each data zone appears once in the PHS file | 6 |
^phs\.[^.]+\.source\.rank_dense$ |
the PHS ranks run 1 to the number of zones with no gap | 6 |
^phs\.[^.]+\.source\.\w+\.range$ |
every published band is within its range | 48 |
^phs\.[^.]+\.source\.\w+\.binary$ |
every published flag is 0 or 1 | 12 |
^phs\.[^.]+\.\w+\.monotone$ |
after any inversion, the band never falls as the rank rises, within its geography | 48 |
^phs\.[^.]+\.rank1_in_band1$ |
the most deprived zone is in band 1 of every band: the direction is right | 6 |
^phs\.[^.]+\.flag_anchors$ |
the most deprived zone is flagged most deprived, the least deprived least | 6 |
^phs\.[^.]+\.shared_geography$ |
this edition's PHS geography codes equal those of the first edition of its vintage | 4 |
^cross\.[^.]+\.same_zones$ |
PHS and the Government publish the same data zones for the edition | 6 |
^cross\.[^.]+\.rank_identical$ |
PHS and the Government publish the same rank for every zone | 6 |
^govscot\.[^.]+\.columns_present$ |
every declared shapefile column is in the file | 6 |
^govscot\.[^.]+\.key_unique$ |
each data zone appears once in the shapefile table | 6 |
^govscot\.[^.]+\.uw_scotland_\w+\.range$ |
every unweighted band is within its range | 18 |
^govscot\.[^.]+\.uw_scotland_\w+\.monotone$ |
the unweighted band never falls as the rank rises | 18 |
^govscot\.[^.]+\.\w+_domain\.present$ |
the declared domain rank column is in the file | 41 |
^govscot\.[^.]+\.\w+_domain\.complete$ |
every zone has a domain rank | 41 |
^govscot\.[^.]+\.\w+_domain\.half_units$ |
every domain rank is a whole multiple of 0.5 | 41 |
^govscot\.[^.]+\.\w+_domain\.range$ |
every domain rank is between 1 and the number of zones | 41 |
^govscot\.[^.]+\.population\.integral$ |
every population is a whole number | 6 |
^govscot\.[^.]+\.population_nonnegative$ |
no population is negative | 6 |
^govscot\.[^.]+\.bands\.years$ |
the band file holds exactly the years the registry declares for it | 6 |
^govscot\.[^.]+\.bands\.\w+\.zones$ |
every zone of the edition is published once for the domain | 41 |
^govscot\.[^.]+\.bands\.\w+\.ranks_agree$ |
every published rank equals the shapefile rank, or differs only in a declared way | 41 |
^govscot\.[^.]+\.bands\.\w+\.rank_disagreements_as_pinned$ |
the zones whose ranks differ are exactly the committed list, with exactly its ranks | 1 |
^govscot\.[^.]+\.bands\.\w+\.\w+\.whole$ |
every published band is a whole number | 123 |
^govscot\.[^.]+\.bands\.\w+\.\w+\.range$ |
every published band is within its range | 123 |
^govscot\.[^.]+\.bands\.\w+\.\w+\.monotone$ |
the published band never falls as the published rank rises (a split tie is allowed) | 123 |
^weighted\.[^.]+\.zones$ |
the population is joined to every PHS zone of the edition | 6 |
^weighted\.[^.]+\.reproduces_phs_scotland_\w+$ |
the population midpoint rule reproduces PHS's published overall Scotland band on every zone | 12 |
^rurality\.[^.]+\.columns_present$ |
the shapefile carries the declared 6-fold and 8-fold columns | 9 |
^rurality\.[^.]+\.polygons$ |
the shapefile has the declared number of polygons | 9 |
^rurality\.[^.]+\.reference_system$ |
the shapefile is in British National Grid | 9 |
^rurality\.[^.]+\.folds_nest$ |
the 6-fold is exactly the official collapse of the 8-fold | 9 |
^rurality\.points_present$ |
the records to place carry grid references | 1 |
^rurality\.agreement\.\w+$ |
the placed 2022 codes agree with the codes NRS publishes, cohort by cohort | 2 |
^join\.[^.]+\.(phs|gov)\.[^.]+\.every_record_matched$ |
every record found its data zone in the edition: no empty cell | 24 |
^join\.[^.]+\.geography_nonnull$ |
every PHS geography code is filled | 2 |
^join\.[^.]+\.domain_ranks_half_units$ |
every joined domain rank is a whole multiple of 0.5 | 2 |
^join\.[^.]+\.\w+\.range$ |
every joined band is within its range | 542 |
^join\.[^.]+\.\w+\.binary$ |
every joined flag is 0 or 1 | 24 |
^join\.[^.]+\.\w+\.values$ |
the status holds only null or rank_sources_disagree | 2 |
^readback\.[^.]+\.index_columns$ |
the saved file's NRS columns equal the source, re-read | 2 |
^readback\.[^.]+\.attached_values$ |
every attached value in the saved file is looked up again from the sources and equal | 2 |
^readback\.[^.]+\.rurality_values$ |
every point is placed again from the saved file's grid references and equal | 1 |