# Browser passport validation From project root, Python 3.10+ stdlib only: ```sh python3 experiments/0005-browser-matrix/check.py ``` `matrix.json` contains target recipes, resource ceilings, required run-record fields and capability fallback rules. Normative measurement and permission procedures: `docs/decisions/0005-browser-matrix.md`. Target OS families/stable channels must be resolved to supported full builds before a real qualification; archive full build identifiers, installer hash or Apple OS build, app and fixture hashes, actual viewport and tool configuration. No browser binaries are supplied. The checker rejects missing targets/reproduction fields/fallbacks, compiler floor regressions, impossible RAM ceilings and missing iOS Home Screen mode. Negative fixtures exercise those refusals; percentile fixtures verify nearest-rank p95. It does not execute a browser, simulate a successful permission request, measure resources, qualify hardware or prove a real fallback implementation. A passing passport check must not be reported as passing production browser acceptance.