doxa-maps/internal
doxa-maps-88655c70 873a3ef976 classify console errors in the two map gates instead of counting them
Both gates barred on zero console errors, which fails a perfectly rendering map whenever
the environment is imperfect. Measured on all-people-groups with a valid token: the
element mounts at 900px with a live GL canvas at 1440x900 and 309 characters of real
text, and the gate said FAIL over 20 console errors that were all one external cause.

Three classes, each observed rather than imagined. Ladder fallthrough is the token ladder
doing exactly what it is designed to do, trying rungs in order until one answers. Mapbox
403s come from the shared token being URL-restricted to doxa.life, and Mapbox then throws
its own internal errors because of them, which is why one restriction produces twenty
lines. Terminal "No Mapbox access token provided" means the ladder is exhausted and the
map genuinely cannot paint, so that still fails.

This is not "ignore errors": anything unrecognised still fails by name, and the exempted
count is printed per tier so the exemption's blast radius stays visible. A silent
exemption is how a gate quietly stops testing anything.

verify:map-paint also gained the token wiring verify:5-caps already had. Classifying was
necessary but not sufficient there — without a token the element never mounts at all, and
a gate that can never pass is still a gate that gets ignored.

verify:5-caps now reports 5/5 with a token and still fails correctly without one, naming
the terminal cause. verify:map-paint reports 4/4 painting with live GL and attribution.
2026-09-21 14:04:18 +00:00
..
acceptance Session work: strobe fix, grid layout, stacked tree legend, selection camera, chip bounding, asset inheritance, gates 2026-09-20 04:49:25 +00:00
lib Plugin gallery: one generator for the dev server and the build 2026-09-16 20:04:18 -05:00
plugin-gallery validate @element is a bare tag; warn when an inferred tier contradicts a bundle's complexity 2026-09-20 08:08:01 +00:00
atomic-public-swap.sh Session work: strobe fix, grid layout, stacked tree legend, selection camera, chip bounding, asset inheritance, gates 2026-09-20 04:49:25 +00:00
build-lock.sh Brand-neutral shared VerticalTabsLayout with lazy nested-element hosting; fix cap-5 prayer tab leaf path; neutralize library identifiers; add Forgejo CI build-gate workflow 2026-09-19 17:24:30 +00:00
check-a11y-button-names.mjs name the legend collapse control and gate every button's accessible name 2026-09-21 13:23:35 +00:00
check-capability-citations.mjs shoot a real cap-1 element and gate README capability claims against the manifest 2026-09-21 12:02:18 +00:00
check-capability-exemplars.mjs generate the capability exemplar table so the answer stops being remembered 2026-09-21 12:38:50 +00:00
check-catalog-identity.mjs prove the live server serves the catalog's exact bytes 2026-09-21 12:46:48 +00:00
check-composite-freshness.mjs add a composite-freshness gate for stale nested children 2026-09-21 06:06:29 +00:00
check-done-evidence.mjs require evidence on a done card; baseline the ten pre-existing 2026-09-21 06:34:30 +00:00
check-dxlife-untouched.mjs add a VCS-independent witness for the read-only DX-life clone 2026-09-20 09:45:25 +00:00
check-label-joins.mjs add a label-join gate: fail on any new equality predicate comparing two independently-derived values 2026-09-20 09:05:18 +00:00
check-library-index.mjs generate the library menu and gate it against library drift 2026-09-21 07:25:18 +00:00
check-quoted-scripts.mjs gate the docs' quoted scripts block against package.json 2026-09-21 10:47:51 +00:00
check-shot-distinctness.mjs fix the impossible 27/26 zone badge and replace a faked page-2 shot with the real third profile 2026-09-21 11:29:25 +00:00
check-shot-fidelity.mjs gate the blank-basemap class: 7 of 10 map bundles draw geography from Mapbox tiles only 2026-09-21 11:46:36 +00:00
check-shot-freshness.mjs gate readme screenshots against the bundle they show; wire the generator 2026-09-21 07:05:00 +00:00
clean.mjs doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
drop-portability-check.mjs derive the check:drop coverage floor from the manifest instead of hardcoding it 2026-09-20 07:22:07 +00:00
embed-smoke.mjs fix big-picture @element to a bare tag and stop embed-smoke reporting every error as a mount timeout 2026-09-20 07:07:48 +00:00
generate-capability-exemplars.mjs generate the capability exemplar table so the answer stops being remembered 2026-09-21 12:38:50 +00:00
generate-gallery.mjs Brand-neutral shared VerticalTabsLayout with lazy nested-element hosting; fix cap-5 prayer tab leaf path; neutralize library identifiers; add Forgejo CI build-gate workflow 2026-09-19 17:24:30 +00:00
generate-library-index.mjs Complete app-profiles->plugin-designs sweep across comments/docs; build green; layouts kept at root (load-bearing) 2026-09-17 18:18:19 +00:00
generate-tree.mjs emit assetsBase and the API-base global into the direct-JS embed snippet 2026-09-20 09:32:37 +00:00
inline-parse-check.mjs doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
install-shell.mjs Brand-neutral shared VerticalTabsLayout with lazy nested-element hosting; fix cap-5 prayer tab leaf path; neutralize library identifiers; add Forgejo CI build-gate workflow 2026-09-19 17:24:30 +00:00
legend-columns-probe.mjs Complete app-profiles->plugin-designs sweep across comments/docs; build green; layouts kept at root (load-bearing) 2026-09-17 18:18:19 +00:00
long-frames-probe.mjs Complete app-profiles->plugin-designs sweep across comments/docs; build green; layouts kept at root (load-bearing) 2026-09-17 18:18:19 +00:00
mobile-sheet-probe.mjs Complete app-profiles->plugin-designs sweep across comments/docs; build green; layouts kept at root (load-bearing) 2026-09-17 18:18:19 +00:00
plugin-gallery-smoke.mjs Plugin gallery: one generator for the dev server and the build 2026-09-16 20:04:18 -05:00
public-hygiene-check.mjs catch the extensionless token file by name and by content 2026-09-20 09:57:22 +00:00
readme-shots-fix.mjs Brand-neutral shared VerticalTabsLayout with lazy nested-element hosting; fix cap-5 prayer tab leaf path; neutralize library identifiers; add Forgejo CI build-gate workflow 2026-09-19 17:24:30 +00:00
readme-shots.mjs shoot a real cap-1 element and gate README capability claims against the manifest 2026-09-21 12:02:18 +00:00
settled-tree-gate.mjs warn when the settled tree has outgrown its floors instead of quietly passing 2026-09-20 07:39:47 +00:00
share-roundtrip-smoke.mjs Plugin gallery: one generator for the dev server and the build 2026-09-16 20:04:18 -05:00
smoke.mjs doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
sri-consistency-check.mjs document the leaf-deletion blind spot in check:sri and point to the settled-tree leaf-count signal 2026-09-20 06:24:43 +00:00
staging-forge.css feat: map provider swap — mapbox|maplibre engine + hybrid geocoder + provider badge; staging title doxa-maps 2026-09-11 21:47:25 +00:00
staging-forge.js Complete app-profiles->plugin-designs sweep across comments/docs; build green; layouts kept at root (load-bearing) 2026-09-17 18:18:19 +00:00
staging-reference-v2.html doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
staging.js Complete app-profiles->plugin-designs sweep across comments/docs; build green; layouts kept at root (load-bearing) 2026-09-17 18:18:19 +00:00
sync-dropin.mjs Public data ships without working notes; unused data files stay out of the drop-in 2026-09-16 20:16:08 -05:00
template-literal-check.mjs track html comments so prose backticks stop desyncing the scanner 2026-09-21 06:19:37 +00:00
theme-flash-probe.mjs Plugin gallery: one generator for the dev server and the build 2026-09-16 20:04:18 -05:00
verify-5-capabilities.mjs classify console errors in the two map gates instead of counting them 2026-09-21 14:04:18 +00:00
verify-map-paint.mjs classify console errors in the two map gates instead of counting them 2026-09-21 14:04:18 +00:00
vite-plugin-strip-shadow-css-comments.mjs Complete app-profiles->plugin-designs sweep across comments/docs; build green; layouts kept at root (load-bearing) 2026-09-17 18:18:19 +00:00
write-token.mjs write the extensionless token path the client actually requests; ignore it too 2026-09-20 09:55:39 +00:00