doxa-maps/internal
Doxa Maps c858ac98e9 Recognise tStatic, and allow licence credits, media queries and the product name
tStatic is the library's translator for code outside a component's setup, and
it was missing from the set of names the scan knows. Anywhere it was called
directly rather than through a wrapper, correct guarded code read as a leak.
The two-sided rule still applies to it: a tStatic fallback is exempt only
when its key resolves, and the self-test asserts both halves.

Three allow shapes, each for a string that must not be translated:

A matchMedia query. Rendering "(prefers-reduced-motion: reduce)" in another
language matches nothing, so motion safety would switch off for exactly the
readers who asked for it, and nobody would see an error.

Tile licence attribution. The credit a data licence asks for is the one
string that stays as the licensor wrote it in every language. These render
only when the live sources cannot be read, which is the case a licence never
allows to come out empty.

The product name, and bare CSS position keywords.

Each shape is anchored rather than fuzzy: prose that resembles them —
"Start end of the list", "center the map on your region", "Doxa Maps is a
prayer tool for the unreached", a copyright line with a real sentence in it —
is still reported. 190 -> 178.
2026-09-29 05:26:26 +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 The last library reference drops the speaker, and the baseline shrinks to what is left 2026-09-29 05:26:26 +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 internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +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 Recognise tStatic, and allow licence credits, media queries and the product name 2026-09-29 05:26:26 +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-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 Print the Chinese prayer packet in one script 2026-09-29 02:16:29 +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 Each bundle carries only the translation areas it uses (people-groups-grid 611 KB -> 210 KB) 2026-09-26 07:24:25 +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-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 Assert that MAPBOX drew, which nothing measured 2026-09-29 00:26:56 +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 Phones: production maps not built for them stay closed and say why; experimental ones open with a notice 2026-09-28 17:53:38 +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 internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +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 carried commits keep the reason and drop the speaker 2026-09-29 05:26:26 +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 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-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 The carried commits keep the reason and drop the speaker 2026-09-29 05:26:26 +00:00
check-packets-all.mjs check:packets-all asserts zone coverage only where a zone was generated 2026-09-29 03:53:42 +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 CLDR plural selection, and the "N countries / N regions" keys it was blocking 2026-09-28 23:23:56 +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-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 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-attribution.mjs The poster credited Mapbox for tiles OpenFreeMap had served 2026-09-29 00:06:52 +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-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 check:selection-kinds finds the packet call by its shape, not by the zone variable's name 2026-09-29 02:16:34 +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-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 internal/ keeps the reason and drops the speaker: no gate quotes or cites the Driver 2026-09-29 05:26:25 +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 A plugin says who else may list it: visibility, refused when it is not one of two words 2026-09-28 21:53:39 +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