doxa-maps/internal
Doxa Maps 9a83077061 Fetch the catalogue for a host-supplied locale, and hold RTL text while it lands
A locale can arrive two ways. ?lang and <html lang> are read at script
evaluation, and the preload in i18n/index.js covers them. profile-config —
the channel a host page uses — reaches ProfileLoader's watchEffect and
nowhere else, which is the channel's whole purpose; the comment there
already records that an earlier document-level fix never saw it. So with
the build shipping one locale, a host-configured embed set its locale,
mirrored its direction, and then rendered English with no error anywhere.
One line beside the setRuntimeLocale that marks that path.

The RTL hold is the second half. When the catalogue is fetched rather than
inlined, nine locales get a re-render — the words change, nothing moves —
and Arabic gets a layout flip: English left to right, then the whole chrome
mirrors. So the text waits and the map does not.

Not a v-if on the profile: <component :is="ProfileComponent"> is the entire
plugin, map included, and gating it would hold the one thing that must
never wait. A data attribute on the existing root plus a scoped rule over
named chrome classes leaves every component mounted, re-enters nothing, and
lets the map paint on its own schedule. The classes are named rather than
matched by a blanket descendant rule because two of the text-bearing
components also carry map objects. visibility rather than display, so the
chrome keeps its box and nothing reflows when the text appears — a reflow at
swap time is the same defect as the flip, only quieter.

The gate asserts the seam. "ProfileLoader mentions loadLocale" would pass on
an import nothing calls, so the watchEffect's own body is read by brace
depth and the call has to sit inside it. It also refuses a hold that names
anything map-shaped, a hold applied to the whole subtree, and a fetch that
could run without a pin. Poisoned both halves: removing the call and
pointing the hold at a map container each fail with the message that names
the defect.

(cherry picked from commit 5c54750d58)
2026-09-29 07:31:16 +00:00
..
acceptance internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
element-census internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
fixtures One phone flag per map, and the leaf page follows it as well as the Gallery 2026-09-29 07:31:16 +00:00
lib internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
plugin-gallery internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
_composed-tiers.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
_published-base.mjs Decouple the tooling: no host named in internal/ or the build config 2026-09-27 01:16:50 +00:00
_serve-reaped.mjs Make a gate's dev server die with the gate 2026-09-24 22:54:11 +00:00
_serves-this-tree.mjs The docs stop handing the next reader a 404 2026-09-25 22:49:37 +00:00
_tree-name.mjs A gated bundle builds outside public/, and a gate keeps it out of the tree 2026-09-29 02:35:35 +00:00
atomic-public-swap.sh public/ is one folder: the output tree plus a README, with the Plugin Studio as its front page 2026-09-25 17:41:56 +00:00
backend-dev-plugin.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
browser-slot.sh A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
build-lock.sh public/ is one folder: the output tree plus a README, with the Plugin Studio as its front page 2026-09-25 17:41:56 +00:00
build-packet-fixtures.mjs The offline packet generator runs again, and a gate now runs it 2026-09-29 02:16:34 +00:00
check-a11y-button-names.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-approx-pin-note.mjs The prayer map's legends see the pins it draws 2026-09-27 02:17:35 +00:00
check-aria-labels-localized.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-auto-engine.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-backlog-refs.mjs poster cards: the print-options row stays inside its own card 2026-09-24 19:19:02 +00:00
check-backlog-status-enum.mjs The backlog-status enum was too narrow, not the nine cards wrong 2026-09-24 11:58:39 +00:00
check-basemap-labels-localized.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-browser-gates-guarded.mjs Close the browser guard's path-shaped bypass: check-experimental-shelf imported playwright by file path 2026-09-28 09:07:30 +00:00
check-capability-citations.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-capability-derived.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-capability-exemplars.mjs Tooling reads the tree's name from the build config, in one place 2026-09-25 16:25:22 +00:00
check-card-deck.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-catalog-currency.mjs Decouple the tooling: no host named in internal/ or the build config 2026-09-27 01:16:50 +00:00
check-catalog-identity.mjs Decouple the tooling: no host named in internal/ or the build config 2026-09-27 01:16:50 +00:00
check-cdn-cache.mjs /cdn: a publish reaches browsers in minutes. Moving URLs revalidate after 5 min with an ETag and 304s; hashed names are immutable 2026-09-28 23:13:47 +00:00
check-cdn-pins.mjs Every runtime CDN script and stylesheet is an exact version with an integrity hash 2026-09-26 05:50:24 +00:00
check-composite-embed-knobs.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-composite-freshness.mjs A gated bundle builds outside public/, and a gate keeps it out of the tree 2026-09-29 02:35:35 +00:00
check-composite-interop.mjs check:composite-interop: two known-issue entries outlived the bug they described 2026-09-27 06:42:55 +00:00
check-composite-registration.mjs Compare every silently-failing side effect, not just strategy keys 2026-09-22 20:09:46 +00:00
check-composite-srcs.mjs The docs stop handing the next reader a 404 2026-09-25 22:49:37 +00:00
check-composite-token-url.mjs A composite embedded bare dropped tokenUrl, and passed because a ProfileLoader sat above it 2026-09-28 15:52:47 +00:00
check-composites-mount.mjs check:composites-mount records elements defined through the shared element helper 2026-09-28 17:52:51 +00:00
check-country-names.mjs Gate the country-name join, and record that the wiring was already done 2026-09-29 01:38:07 +00:00
check-csv-export-shape.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-deck-click.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-dependency-names.mjs Gate: every declared dependency must be a real package name 2026-09-22 06:49:21 +00:00
check-describe-group.mjs Number({value:"1"}) is NaN, so the whole reachedness sentence vanished 2026-09-28 15:52:47 +00:00
check-dev-assets.mjs check:dev-assets: every leaf of the seven studio maps, with bytes that parse and a bogus-path control 2026-09-25 23:22:27 +00:00
check-doc-quotes-scripts.mjs Check that the CLI doc still quotes package.json correctly 2026-09-23 04:19:42 +00:00
check-done-evidence.mjs check:done-evidence counts a card's evidence LIST, so a card that records its proof there can close 2026-09-29 03:46:37 +00:00
check-dxlife-untouched.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-element-bootstrap.mjs Twenty-four warnings about an overwrite that was the whole point 2026-09-28 17:53:38 +00:00
check-element-census-vs-live.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-embed-base-resolution.mjs Decouple the tooling: no host named in internal/ or the build config 2026-09-27 01:16:50 +00:00
check-embed-basemap-paints.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-embed-targets-exist.mjs EMBED_BASE_URL overrides the committed embedBaseUrl for a host's own tree build 2026-09-28 21:53:40 +00:00
check-embed-url-absolute.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-embedded-rtl.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-evangelical-share.mjs Each packet's % evangelical page states its own list's share 2026-09-29 02:16:31 +00:00
check-experimental-shelf.mjs Make the two Mapbox arms ask for Mapbox, and fail when they measure nothing 2026-09-28 17:53:38 +00:00
check-facet-cascade.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-facet-changes-map.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-facet-one-field.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-facet-shape.mjs Two readers of one private field, and nothing was holding them together 2026-09-28 15:52:46 +00:00
check-filter-width-stable.mjs The browser-side generator keeps the reason and drops the speaker 2026-09-29 05:26:27 +00:00
check-fits-the-screen.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-fixed-anchoring.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-frame-target.mjs The language tree becomes anyone's, and the numbers nobody wrote down get written down 2026-09-28 17:40:34 +00:00
check-frozen-labels.mjs check:frozen-labels holds a composed bundle to the stage of the page that shows it 2026-09-28 14:53:59 +00:00
check-gated-not-in-tree.mjs A gated bundle builds outside public/, and a gate keeps it out of the tree 2026-09-29 02:35:35 +00:00
check-gospel-all.mjs Gospel checks: one dev-assets gate, and cover the gap it leaves 2026-09-25 23:50:31 +00:00
check-gospel-composed-filters.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-gospel-coverage-consistent.mjs 2,001 groups had readable Scripture and were told they did not 2026-09-27 18:53:52 +00:00
check-gospel-embed-contract.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-gospel-engine-contract.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-gospel-english-leaks.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-gospel-leaves-mount.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-gospel-map-paints.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-gospel-rtl-shaping.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-gospel-set-charts.mjs The seed guarantee was asserted against two files nothing renders 2026-09-28 23:43:44 +00:00
check-gospel-set-fit.mjs The set charts fit their box, carry a cross, and draw the target — combined 2026-09-29 02:11:28 +00:00
check-gospel-tables-staged.mjs India by state, from India's own states 2026-09-26 08:37:10 +00:00
check-gospel-whiteboard.mjs Point the set charts at the promoted modules, and clear a committed conflict 2026-09-28 18:57:46 +00:00
check-hardcoded-english.mjs An English key in a lookup table is an identifier, not a label 2026-09-29 05:26:27 +00:00
check-heartbeat-threshold.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-help-reachable.mjs check:help-reachable keeps a map whose own control explains it in scope, even with no entry in the help file 2026-09-29 03:22:40 +00:00
check-host-locale-contract.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-host-locale-fetch.mjs Fetch the catalogue for a host-supplied locale, and hold RTL text while it lands 2026-09-29 07:31:16 +00:00
check-i18n-never-translated.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-i18n-parity.mjs Move the catalogue note out of the catalogue 2026-09-29 05:26:27 +00:00
check-i18n-stopped-scope.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-i18n-treeshake.mjs Ship only the active locale, behind DX_SHIP_ONE_LOCALE 2026-09-29 07:31:16 +00:00
check-instance-config-keys.mjs The grid's "controls off" preset did nothing, and nothing said so 2026-09-28 22:25:30 +00:00
check-kpi-unit-once.mjs Translate the chrome that was English in all eleven locales 2026-09-25 06:10:27 +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-label-key-coverage.mjs Require a label-to-key table to cover every label it can be asked for 2026-09-29 05:26:27 +00:00
check-language-tree-layout.mjs The language tree's layout becomes library's; its gospel classification does not 2026-09-28 15:52:47 +00:00
check-language-tree-model.mjs The language tree becomes anyone's, and the numbers nobody wrote down get written down 2026-09-28 17:40:34 +00:00
check-leaf-engine-per-provider.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-leaf-english-leaks.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-legend-data-contract.mjs The legend data-contract comment describes the failure, not who would hit it 2026-09-29 00:06:53 +00:00
check-legend-export-reachable.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-legend-info-localized.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-legend-logical-insets.mjs The share menu's tabs mirrored the wrong way, and the check could not see them 2026-09-29 03:46:37 +00:00
check-legend-matches-source.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-legend-top-offset.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-library-index.mjs library-index gate: ask whether the menu drifted, not whether a file is older 2026-09-24 13:29:58 +00:00
check-link-rot-sample.mjs Check 5fish links too, and say why YouVersion stays out 2026-09-25 02:44:37 +00:00
check-link-verification-coverage.mjs Every shipped link has evidence, and 1,412 of them did not 2026-09-27 01:26:50 +00:00
check-list-prop-unit.mjs List names speak the reader's language: listLabel and listDefinition 2026-09-26 08:39:52 +00:00
check-list-selection.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-locale-reachable.mjs Rename the output folder to dx-maps 2026-09-25 19:26:14 +00:00
check-manifest-covers-discovery.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-map-attribution.mjs The map credit names the basemap that was actually drawn: OpenFreeMap / OpenMapTiles under MapLibre 2026-09-26 08:51:38 +00:00
check-map-control-overlap.mjs The touch-target fix is what pushed the toggle into the zoom buttons 2026-09-29 00:06:52 +00:00
check-map-data-painted.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-map-embed-cells.mjs Make the two Mapbox arms ask for Mapbox, and fail when they measure nothing 2026-09-28 17:53:38 +00:00
check-map-fly-reduced-motion.mjs Maps stop flying for readers who ask for reduced motion: useMapFly decides it for every camera move 2026-09-26 04:38:59 +00:00
check-map-labels.mjs Name the map's countries on page 1 in the packet's language 2026-09-29 02:16:33 +00:00
check-map-menu-anchor.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-map-props-unit.mjs Auto resolves to MapLibre; a token no longer picks the engine 2026-09-28 17:53:38 +00:00
check-map-unmount-guard.mjs useMapInstance: a map unmounted mid-initialise returns quietly instead of throwing 2026-09-25 05:01:13 +00:00
check-map-unmount-mid-init.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-mapbox-drew.mjs Fix three things that stopped check-mapbox-drew from measuring anything 2026-09-29 05:37:02 +00:00
check-maplibre-layer-drops.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-mercator-slice.mjs Two poster comments state the defect instead of quoting its report 2026-09-28 17:53:38 +00:00
check-mfe-two-tab.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-mjs-parses.mjs check:mjs-parses parses with node even when the gates run under bun 2026-09-27 22:10:35 +00:00
check-mobile-gating.mjs One phone flag per map, and the leaf page follows it as well as the Gallery 2026-09-29 07:31:16 +00:00
check-mst-clustering.mjs "MST" clustering draws again: a true spanning tree in under a second instead of a 12-second freeze 2026-09-26 04:38:59 +00:00
check-nav-reachable-mobile.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-nested-token-delivery.mjs Token gates follow the auto engine: no token ships, and an explicit engine beats an available token 2026-09-26 03:37:53 +00:00
check-no-absolute-paths.mjs Keep the development-era internal code name out of shipped files 2026-09-22 22:18:18 +00:00
check-no-conflict-markers.mjs Correct the record: the dead bundle was my merge, not a duplicate import 2026-09-25 10:19:07 +00:00
check-no-credentials-omit.mjs The Research Gallery loads behind a login gate: same-origin fetches keep their credentials 2026-09-27 05:05:03 +00:00
check-no-cross-plugin-imports.mjs check:no-cross-plugin-imports: a plugin may not reach into another plugin's private folder 2026-09-26 08:39:53 +00:00
check-no-dead-library.mjs Delete 7 unreachable library components, and gate the thing a census cannot see 2026-09-29 01:38:07 +00:00
check-no-eval.mjs No bundle needs CSP 'unsafe-eval': translations compile without eval, and the partner CSP is documented 2026-09-26 05:50:24 +00:00
check-no-internal-codename.mjs Tooling reads the tree's name from the build config, in one place 2026-09-25 16:25:22 +00:00
check-no-new-driver-references.mjs Shipped text stops gaining references to the Driver: a forward-only gate with a baseline that may only shrink 2026-09-29 03:46:37 +00:00
check-no-orphan-gates.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-no-public-binds.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-no-repo-pb-hooks.mjs Put the cloud Dockerfile at the repo root, so a platform pointed at the repo finds it 2026-09-29 02:35:36 +00:00
check-no-silent-engine-substitution.mjs My own gate was accusing the one agent who fixed the defect 2026-09-27 01:59:11 +00:00
check-no-stale-sweep-claim.mjs Stop telling readers the audio sweep is unfinished — it finished 2026-09-25 02:57:50 +00:00
check-one-palette.mjs check:one-palette sees a bundle's private src/colors/ palettes; Rudder's offline hint states Go 1.22+ and the setup 2026-09-28 07:07:33 +00:00
check-one-scroll-container.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-optional-t-equivalence.mjs Fix what an adversarial review of the print standard confirmed: 21 defects, each re-checked against the code 2026-09-29 06:23:19 +00:00
check-package-json-unique-keys.mjs check:package-json-unique-keys: a duplicated key in package.json fails 2026-09-27 04:14:31 +00:00
check-packet-a1-structure.mjs The bounded set and the centered set each get their own page again, at print size 2026-09-29 05:26:27 +00:00
check-packet-browser.mjs The UPG-100 list prints its packets through the shared lift, not a second copy of it 2026-09-29 05:26:23 +00:00
check-packet-charts.mjs A life-calendar anchor outside the grid says so instead of drawing nothing 2026-09-28 16:49:01 +00:00
check-packet-map-missing-loud.mjs Put the missing-map sentence in every packet language 2026-09-29 00:59:14 +00:00
check-packet-render.mjs Fix what an adversarial review of the print standard confirmed: 21 defects, each re-checked against the code 2026-09-29 06:23:19 +00:00
check-packet-strings-parity.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-packet-variants.mjs Fix what an adversarial review of the print standard confirmed: 21 defects, each re-checked against the code 2026-09-29 06:23:19 +00:00
check-packets-all.mjs Fix what an adversarial review of the print standard confirmed: 21 defects, each re-checked against the code 2026-09-29 06:23:19 +00:00
check-people-group-records.mjs Every country prints its prayer list, card deck and packet, from a records provider any map can use 2026-09-29 05:26:26 +00:00
check-pin-selection.mjs The packet was praying over the numbers the page loaded with, not the live ones 2026-09-28 13:56:22 +00:00
check-pinned-umd.mjs One pinned-UMD loader for PPLR and the Wall: library/utils/loadPinnedUmd.js 2026-09-26 07:24:25 +00:00
check-plural-forms.mjs Fix what an adversarial review of the print standard confirmed: 21 defects, each re-checked against the code 2026-09-29 06:23:19 +00:00
check-popup-escaping.mjs Map popups show data as text: a people-group name or country field can no longer run script 2026-09-26 05:50:24 +00:00
check-popup-href-escaped.mjs Escape the two popup URLs and the packet photo URL 2026-09-29 05:26:27 +00:00
check-ported-globals-identical.mjs Migrate the regions pages onto portedGlobals, and fix a Cyrillic rule that was inert 2026-09-29 02:35:35 +00:00
check-poster-action-print.mjs The poster-action gate's new arm keeps the rule and drops the speaker 2026-09-29 05:26:27 +00:00
check-poster-attribution.mjs The poster credited Mapbox for tiles OpenFreeMap had served 2026-09-29 00:06:52 +00:00
check-poster-browser-equiv.mjs The map-sheet generator is served and imported at print time, so country-posters is back under the 1.5 MB ceiling 2026-09-29 06:23:20 +00:00
check-poster-card-fits.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-poster-degrades-honestly.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-poster-fetch-guard.mjs New gate check:poster-fetch-guard (in gates:pre) 2026-09-29 05:26:24 +00:00
check-poster-layout-optin.mjs The poster's legend was painted over the map, unless you ask otherwise 2026-09-29 00:59:14 +00:00
check-poster-print-fallback.mjs The prayer packet prints its map: the dx-maps tree ships the 28 poster sources 2026-09-29 00:59:13 +00:00
check-poster-prints.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-poster-raster.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-poster-render-pinned.mjs The served sheet generator is integrity-pinned: a browser runs it only when its sha384 matches 2026-09-29 06:23:20 +00:00
check-poster-wall-localised.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-posters-exportable.mjs Ship every poster once, in its lightest printable form 2026-09-29 05:26:23 +00:00
check-prayer-walk-planner.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-preset-config-merge.mjs A preset keeps its profile's defaults: instance props merge over the meta config instead of replacing it 2026-09-28 03:12:45 +00:00
check-print-geometry.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-profile-descriptions.mjs Tooling reads the tree's name from the build config, in one place 2026-09-25 16:25:22 +00:00
check-profile-table.mjs The table row is a border-box, and the offline packet gets its description 2026-09-28 16:49:01 +00:00
check-provide-shadowing.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-provider-for.mjs Register check:provider-for 2026-09-26 17:28:56 +00:00
check-provider-switch.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-published-matches-build.mjs Decouple the tooling: no host named in internal/ or the build config 2026-09-27 01:16:50 +00:00
check-published-tree-weight.mjs public/ is one folder: the output tree plus a README, with the Plugin Studio as its front page 2026-09-25 17:41:56 +00:00
check-quoted-scripts.mjs consolidate docs into documentation/ and deployment shells into deployment/ 2026-09-21 23:23:23 +00:00
check-raw-map-rtl-shaping.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-readme-web-folder-size.mjs check:readme-size runs in gates:post, and the README states the folder with its posters 2026-09-29 05:26:25 +00:00
check-reduced-motion.mjs Every animating library component now honours prefers-reduced-motion itself 2026-09-29 01:38:07 +00:00
check-region-fill-repaint.mjs RegionCountryMap moved to the library, and its gate, its numerals allowance and a comment follow it 2026-09-29 01:38:08 +00:00
check-research-gallery-embed.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-ring-bands.mjs bandFill mode: 'fill-all' draws every group and lets the zoom separate them 2026-09-29 01:38:08 +00:00
check-ring-vocabulary.mjs Say "provisional, pending a product decision" instead of naming a row 2026-09-28 17:53:38 +00:00
check-scrim-covers-viewport.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-script-flags-reachable.mjs Make advertised script flags actually reachable 2026-09-22 17:44:02 +00:00
check-script-registry.mjs One page loaded the same bundle twice and nothing said so 2026-09-29 00:06:51 +00:00
check-select-zone-race.mjs Pin the three layers that make Show on map work on the first click 2026-09-28 23:23:57 +00:00
check-selection-kinds.mjs Map sheets are generated in the browser at the click, by the same generator the Node script runs 2026-09-29 05:26:27 +00:00
check-selector-fields.mjs check:selector-fields in gates:pre: a packet fetch must carry every field its selectors read 2026-09-28 13:56:53 +00:00
check-sentence-slots.mjs Prove the sentence helper against a real t(), instead of claiming it 2026-09-29 05:26:25 +00:00
check-series-isolation.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-setup-order.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-sfc-script-parses.mjs Localize tab labels for it/ro/zh, and prove the catalog is actually read 2026-09-24 06:23:30 +00:00
check-shadow-css-parses.mjs Fold the dangling-selector gate into the portedGlobals migration 2026-09-29 02:35:36 +00:00
check-shadow-reduced-motion.mjs Every shadow root honours prefers-reduced-motion 2026-09-27 05:05:04 +00:00
check-share-policy.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-shared-component-reached-bundles.mjs Tooling reads the tree's name from the build config, in one place 2026-09-25 16:25:22 +00:00
check-shot-distinctness.mjs README: three outputs, not five methods; a Languages section; screenshot gates see every shot again 2026-09-25 19:40:03 +00:00
check-shot-fidelity.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-shot-fonts.mjs Make the flagship capability-5 screenshot show the studio doing something 2026-09-22 09:48:20 +00:00
check-shot-freshness.mjs README screenshots retaken after d1af039a; freshness-gate comments name the tree, not the old folder 2026-09-25 22:05:39 +00:00
check-snapshot-guard.mjs A half-finished catalogue fetch can no longer overwrite a good one 2026-09-24 11:59:48 +00:00
check-spa-tab-order.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-square-map-controls.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-studio-every-plugin.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-studio-rail.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-surfaces-read-the-tier.mjs Tell the curated tables that GRN and Scripture Earth exist 2026-09-24 22:15:53 +00:00
check-synced-css-copies.mjs Teach the synced-CSS gate what a selector is, and turn it on 2026-09-23 01:22:36 +00:00
check-tab-radius-token.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-tabs-localized.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-targets.mjs bun run desktop:build <plugin> packages a desktop plugin as an app; check:targets keeps non-web plugins out of the web build 2026-09-28 06:44:14 +00:00
check-tauri-config.mjs Commit Cargo.lock: it was ignored by association with real build output 2026-09-22 06:53:27 +00:00
check-tiered-points.mjs The whiteboard is a layer of tiered points; only the edges were ever a tree 2026-09-28 17:40:34 +00:00
check-translator-contacts.mjs Name the translator, and let a mobiliser write to them 2026-09-26 07:43:58 +00:00
check-tree-relative.mjs New gate check:tree-relative: the committed tree names no host of its own 2026-09-29 05:26:26 +00:00
check-universal-props.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-upg-map-data-painted.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-upg-zone-joins.mjs Fold the zone-tree assertions in, and stop the check dying before it reports 2026-09-28 16:47:05 +00:00
check-url-resolver.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-verification-tags.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
check-vision-card-numbers.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
check-whiteboard-projection.mjs The whiteboard is a layer of tiered points; only the edges were ever a tree 2026-09-28 17:40:34 +00:00
check-window-globals-released.mjs Release only the hooks this instance installed 2026-09-29 00:06:53 +00:00
check-zone-census.mjs The map template draws a map-only vertical page for the prayer packet 2026-09-29 02:16:27 +00:00
check-zone-title-tier-a.mjs Name the Deaf packet in its reader's language, not by its internal label 2026-09-29 02:16:32 +00:00
check-zoning-declared.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
clean.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
desktop-build.mjs The carried commits keep the reason and drop the speaker 2026-09-29 05:26:26 +00:00
dev-server.mjs A laptop that follows the table says when it needs credentials, and the last main defaults say development 2026-09-29 00:59:14 +00:00
dev-sync-plugin.mjs A laptop that follows the table says when it needs credentials, and the last main defaults say development 2026-09-29 00:59:14 +00:00
drop-portability-check.mjs Tooling reads the tree's name from the build config, in one place 2026-09-25 16:25:22 +00:00
embed-smoke.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
fix-sri.mjs Freshness covers every bundle a landing can have staled; SRI repairs keep the gallery's manifest copy 2026-09-25 22:09:40 +00:00
generate-capability-exemplars.mjs Tooling reads the tree's name from the build config, in one place 2026-09-25 16:25:22 +00:00
generate-gallery.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
generate-library-index.mjs Library index: a data file is described by its own _description or _meta, not its first line 2026-09-27 05:05:04 +00:00
generate-packet-fixture.mjs packets: give CI something to check, instead of a sweep that always SKIPs 2026-09-24 14:33:36 +00:00
generate-tree.mjs One phone flag per map, and the leaf page follows it as well as the Gallery 2026-09-29 07:31:16 +00:00
generate-wagf-region-names.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
i18n-areas.mjs Each bundle carries only the translation areas it uses (people-groups-grid 611 KB -> 210 KB) 2026-09-26 07:24:25 +00:00
inline-parse-check.mjs Tooling reads the tree's name from the build config, in one place 2026-09-25 16:25:22 +00:00
install-shell.mjs Decouple the tooling: no host named in internal/ or the build config 2026-09-27 01:16:50 +00:00
landing-preconditions.mjs A drop-in destination change no longer makes a landing verify every bundle 2026-09-29 03:22:40 +00:00
legend-columns-probe.mjs The last browser scripts refuse to measure a tree or dev server that is not this checkout 2026-09-25 11:10:34 +00:00
long-frames-probe.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
measure-map-load.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
mobile-sheet-probe.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
plugin-gallery-smoke.mjs The last browser scripts refuse to measure a tree or dev server that is not this checkout 2026-09-25 11:10:34 +00:00
plugin-targets.mjs bun run desktop:build <plugin> packages a desktop plugin as an app; check:targets keeps non-web plugins out of the web build 2026-09-28 06:44:14 +00:00
profile-meta.mjs One phone flag per map, and the leaf page follows it as well as the Gallery 2026-09-29 07:31:16 +00:00
public-hygiene-check.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
readme-shots-fix.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
readme-shots.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
run-parallel.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
serve-strict.mjs Decouple the tooling: no host named in internal/ or the build config 2026-09-27 01:16:50 +00:00
set-app-start-page.mjs public/ is one folder: the output tree plus a README, with the Plugin Studio as its front page 2026-09-25 17:41:56 +00:00
settled-tree-gate.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
share-roundtrip-smoke.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
smoke-studio.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
smoke.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
sri-consistency-check.mjs Tooling reads the tree's name from the build config, in one place 2026-09-25 16:25:22 +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 Host locale: gate the profile-config contract, forward ?lang= into staging embeds, stop losing gate stderr 2026-09-25 12:18:26 +00:00
staging-reference-v2.html Host locale: gate the profile-config contract, forward ?lang= into staging embeds, stop losing gate stderr 2026-09-25 12:18:26 +00:00
sync-app-shells.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
sync-dropin.mjs One server for a site and its maps: bun run dropin, and the drop-in goes straight into the site's public/ 2026-09-29 03:03:51 +00:00
template-literal-check.mjs Scan all of library/ for backticks in shadow-CSS comments 2026-09-22 18:25:18 +00:00
theme-flash-probe.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
verify-5-capabilities.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
verify-browser-all.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
verify-gospel-map.mjs A browser gate refuses to launch outside the browser slot; check:browser-gates-guarded keeps it that way 2026-09-28 08:20:21 +00:00
verify-map-paint.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
verify-shell-scroll.mjs internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +00:00
vite-plugin-strip-shadow-css-comments.mjs Strip CSS comments from every shadow-style literal shape, not only useShadowStyles(…) 2026-09-28 00:56:58 +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