Merge bundler-3's newest two commits; regenerate the touched bundle and tree

This commit is contained in:
doxa-maps-88655c70 2026-09-24 14:24:20 +00:00
commit 4565ecfec1
10 changed files with 31 additions and 20 deletions

View file

@ -71,6 +71,7 @@ somebody else's page and report a confident wrong answer with no error.
| bundles missing, files deleted, counts wrong | `bun run check:settled` — graded **by exit code**. It reads the build *lock*, which knows the *queue*; `pgrep` samples an instant and will tell you 0 builders while one is queued. |
| a gate "failed" | Re-run it un-suppressed. A command killed by a short `timeout` is not a failure, and these gates print teaching prose *after* the verdict, so `| tail -1` inverts the signal. **Grade by exit code.** |
| a selector finds nothing in a composite | Shadow DOM does not pierce. Use a recursive `shadowRoot` walker, not `document.querySelector`. |
| a probe's verdict, in EITHER direction | **Read the selector and the denominator out of the source; never invent them.** An invented selector fails a working feature, and a count the page prints about itself passes a broken one. Measured three times in one flight: `.gm-sug` returned 0 for every search query while search worked fine; a chart was "wrong" only because the probe counted all 5,563 catalogue codes when the chart counts the 5,067 spoken by a pin; and a table probe read its own "234 rows" caption and passed an entirely empty body. Assert on rendered content — rows *and* cells — and grep the component for the real class names first. |
## Facts that are easy to get wrong

View file

@ -756,6 +756,16 @@ useShadowStyles(
'.gm-pinkey-h{font-size:11px;font-weight:600;margin-bottom:4px}' +
'.gm-caveat{margin-top:5px;font-size:10.5px;opacity:.72;line-height:1.4}' +
// DETAIL: a bottom sheet on a phone, a corner card on desktop.
// ON A PHONE THE SHEET IS THE PAGE, and the shared pin hint sits on top of it. The hint
// is a library component with z-index 2147482000 and a deliberate "only the reader closes
// it" rule, which is right for a bare map — but once a group sheet is open the invitation
// to tap a dot is both redundant and obstructive: measured at 390px it covered "Also speak
// German, Standard (25)" and the first row under it.
// Hidden rather than out-stacked. Raising this sheet above 2147482000 would be a z-index
// arms race with shared code, and the hint lives inside this component's own shadow root,
// so scoping it here costs nothing and changes nothing for any other map.
// Desktop is untouched: there the sheet is a 330px corner card and the two never collide.
'@media(max-width:699px){.gm.has-sheet .pin-hint{display:none}}' +
'.gm-sheet{position:absolute;left:0;right:0;bottom:0;z-index:6;max-height:62%;overflow-y:auto;' +
'background:#fff;color:#0f1419;border-radius:14px 14px 0 0;padding:14px 16px 22px;' +
"font:13px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;box-shadow:0 -6px 26px rgba(0,0,0,.28)}" +
@ -870,7 +880,7 @@ useShadowStyles(
</script>
<template>
<div class="gm" :class="{ 'is-dark': isDark }">
<div class="gm" :class="{ 'is-dark': isDark, 'has-sheet': !!(selected || showGapList) }">
<div ref="mapEl" class="gm-map"></div>
<!-- Shared control rail — MapToolbar self-positions top-right. Zoom/Location/

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <gospel-resources-map> custom element. -->
<script src="../gospel-resources.js" integrity="sha384-INRB918aWo0USkncE6/0nBxyQPexRsKeC6BGTW+xgH9LK15CjtNC8D1zmUTE4Vyd" crossorigin="anonymous"></script>
<script src="../gospel-resources.js" integrity="sha384-Hu/hl1/0RgdMPSFmq7YTCH/NFQr7CM6IBydWB4mchfVVQpmdnpV+RjFufCxUfOpI" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <gospel-resources-map> custom element. -->
<script src="../gospel-resources.js" integrity="sha384-INRB918aWo0USkncE6/0nBxyQPexRsKeC6BGTW+xgH9LK15CjtNC8D1zmUTE4Vyd" crossorigin="anonymous"></script>
<script src="../gospel-resources.js" integrity="sha384-Hu/hl1/0RgdMPSFmq7YTCH/NFQr7CM6IBydWB4mchfVVQpmdnpV+RjFufCxUfOpI" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -40,7 +40,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <gospel-resources-map> custom element. -->
<script src="../gospel-resources.js" integrity="sha384-INRB918aWo0USkncE6/0nBxyQPexRsKeC6BGTW+xgH9LK15CjtNC8D1zmUTE4Vyd" crossorigin="anonymous"></script>
<script src="../gospel-resources.js" integrity="sha384-Hu/hl1/0RgdMPSFmq7YTCH/NFQr7CM6IBydWB4mchfVVQpmdnpV+RjFufCxUfOpI" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <gospel-resources-map> custom element. -->
<script src="../gospel-resources.js" integrity="sha384-INRB918aWo0USkncE6/0nBxyQPexRsKeC6BGTW+xgH9LK15CjtNC8D1zmUTE4Vyd" crossorigin="anonymous"></script>
<script src="../gospel-resources.js" integrity="sha384-Hu/hl1/0RgdMPSFmq7YTCH/NFQr7CM6IBydWB4mchfVVQpmdnpV+RjFufCxUfOpI" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <gospel-resources-map> custom element. -->
<script src="../gospel-resources.js" integrity="sha384-INRB918aWo0USkncE6/0nBxyQPexRsKeC6BGTW+xgH9LK15CjtNC8D1zmUTE4Vyd" crossorigin="anonymous"></script>
<script src="../gospel-resources.js" integrity="sha384-Hu/hl1/0RgdMPSFmq7YTCH/NFQr7CM6IBydWB4mchfVVQpmdnpV+RjFufCxUfOpI" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -591,7 +591,7 @@
"bundle": "gospel-resources",
"scriptUrl": "./gospel-resources/gospel-resources.js",
"output": "doxa-maps/gospel-resources/gospel-resources.js",
"integrity": "sha384-INRB918aWo0USkncE6/0nBxyQPexRsKeC6BGTW+xgH9LK15CjtNC8D1zmUTE4Vyd",
"integrity": "sha384-Hu/hl1/0RgdMPSFmq7YTCH/NFQr7CM6IBydWB4mchfVVQpmdnpV+RjFufCxUfOpI",
"elements": [
"gospel-resources-map"
],
@ -611,7 +611,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/charts/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-INRB918aWo0USkncE6/0nBxyQPexRsKeC6BGTW+xgH9LK15CjtNC8D1zmUTE4Vyd\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-Hu/hl1/0RgdMPSFmq7YTCH/NFQr7CM6IBydWB4mchfVVQpmdnpV+RjFufCxUfOpI\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
},
{
@ -625,7 +625,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-INRB918aWo0USkncE6/0nBxyQPexRsKeC6BGTW+xgH9LK15CjtNC8D1zmUTE4Vyd\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-Hu/hl1/0RgdMPSFmq7YTCH/NFQr7CM6IBydWB4mchfVVQpmdnpV+RjFufCxUfOpI\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
},
{
@ -639,7 +639,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/gospel-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-INRB918aWo0USkncE6/0nBxyQPexRsKeC6BGTW+xgH9LK15CjtNC8D1zmUTE4Vyd\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"gospel-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-Hu/hl1/0RgdMPSFmq7YTCH/NFQr7CM6IBydWB4mchfVVQpmdnpV+RjFufCxUfOpI\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"gospel-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
},
{
@ -653,7 +653,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/resources-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-INRB918aWo0USkncE6/0nBxyQPexRsKeC6BGTW+xgH9LK15CjtNC8D1zmUTE4Vyd\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-Hu/hl1/0RgdMPSFmq7YTCH/NFQr7CM6IBydWB4mchfVVQpmdnpV+RjFufCxUfOpI\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
},
{
@ -667,7 +667,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/resources-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-INRB918aWo0USkncE6/0nBxyQPexRsKeC6BGTW+xgH9LK15CjtNC8D1zmUTE4Vyd\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-Hu/hl1/0RgdMPSFmq7YTCH/NFQr7CM6IBydWB4mchfVVQpmdnpV+RjFufCxUfOpI\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
}
]