A gate nobody has faulted is a gate nobody knows the state of. Six deliberate faults, one per failure mode each check claims to catch — every one caught, then reverted.

branding/build.py --check

$ printf '<!-- hand edit -->' >> docs/assets/brand/mark.svg
branding/build.py --check: 1 stale asset(s):
  - mark.svg: committed file differs from what build.py generates

$ # a vector regenerated, its raster left stale
branding/build.py --check: 1 stale asset(s):
  - social-preview.png: rendered from a stale social-preview.svg -- the vector changed and the raster was not re-rendered

$ mv docs/assets/brand/favicon-16.png /tmp/
branding/build.py --check: 1 stale asset(s):
  - favicon-16.png: missing from docs/assets/brand/

branding/contrast.py --check

$ # a stated ratio the hex does not compute to
branding/contrast.py: 1 disagreement(s) with BRAND.md:
  - Muted `#6f6656` on Paper: BRAND.md says 5.94:1, recomputed 4.94:1

$ # correct ratio, flattering verdict
branding/contrast.py: 1 disagreement(s) with BRAND.md:
  - **Accent `#b5502f` on Paper**: 4.41:1 fails AA at 4.5:1, but the verdict reads '**body text**'

$ # palette hex changed, contrast table left alone
branding/contrast.py: 1 disagreement(s) with BRAND.md:
  - #6f6656 is used in the contrast table but is not in the palette table -- one of the two was edited without the other

restored

branding/build.py --check: 7 vectors and 8 rasters are current.
branding/contrast.py: 13 ratios in BRAND.md all check out.