doxa-maps/internal
Doxa Maps 1b2c596011 The share menu's tabs mirrored the wrong way, and the check could not see them
Five physical CSS declarations in the chrome every production map renders, so
under Arabic each of them lands on the wrong side for every map at once:
SemanticTreeLegend's active tab chip drew its border on the left, the share
menu's step list padded from the left, its tab spacing and its auto-spacer both
pushed from the right, and the geocoder's search icon sat at left:7px inside an
input that mirrors. All five become logical properties, which in a left-to-right
reading resolve to exactly what they resolved to before: four insertions against
four deletions in the components, one property each, and the English view cannot
move.

The reason they survived is the more useful half. check-legend-logical-insets
existed and passed, but it read only library/components/legends -- the share menu
is one directory away, and a reader in Arabic does not know which folder a control
came from. So the scan now covers map-controls as well.

Widening it was not enough. It still passed, because its CSS extractor matched a
template literal with the pattern `([^`]*\{[^`]*\}[^`]*)`, which describes a
literal containing ONE brace pair. ShareButton keeps its styles in a 600-line
useShadowStyles literal with hundreds, so the scan captured seven fragments
totalling 7,003 characters of a 629-line file and never saw .share-tab at all. It
was reporting PASS on a directory it was barely reading, which is worse than
having no check: a green gate is read as evidence. Template literals are now
taken whole and kept only when they look like CSS -- 2 blocks, 8,462 characters,
and the rule is finally in scope.

The self-test poisons BOTH directories. Poisoning only a legend would have proved
the check works on the half it always covered, and passed unchanged the day the
wider scan silently narrowed again. Its map-controls arm puts back the exact
declaration this commit removes, and its failure message says what a failure
means.
2026-09-29 03:46:37 +00:00
..
acceptance 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
element-census Match the live page's wording where we differed only by case 2026-09-25 17:08:16 +00:00
fixtures Migrate the regions pages onto portedGlobals, and fix a Cyrillic rule that was inert 2026-09-29 02:35:35 +00:00
lib Two readers of one private field, and nothing was holding them together 2026-09-28 15:52:46 +00:00
plugin-gallery 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
_composed-tiers.mjs composes speaks three vocabularies, and unresolved refs now fail 2026-09-28 00:20:33 +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 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
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 Tooling reads the tree's name from the build config, in one place 2026-09-25 16:25:22 +00:00
check-capability-derived.mjs composes speaks three vocabularies, and unresolved refs now fail 2026-09-28 00:20:33 +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 Dashboard kit, landing 3: the camera and the CSV exporter 2026-09-27 01:16:52 +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 knew one card schema and failed the best-evidenced cards on the board 2026-09-24 11:38:17 +00:00
check-dxlife-untouched.mjs add a VCS-independent witness for the read-only DX-life clone 2026-09-20 09:45:25 +00:00
check-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 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-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 A relative share link works when you click it, which is why nobody caught it 2026-09-28 17:40:34 +00:00
check-embedded-rtl.mjs That header described a bug that had already been fixed 2026-09-28 23:13:47 +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 Dashboard kit, landing 1: the selection bus becomes library code 2026-09-26 17:28:46 +00:00
check-facet-changes-map.mjs check:facet-shape tests the facet gate's injected helper headlessly and runs in gates:pre 2026-09-28 10:27:43 +00:00
check-facet-one-field.mjs Gate the scrim-covers-viewport rule, and say what was not verified 2026-09-22 21:54:39 +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 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-fits-the-screen.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-fixed-anchoring.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-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 Test the cycle safety the header only claimed 2026-09-28 14:53:59 +00:00
check-heartbeat-threshold.mjs Gates: pin-dim-slider runs again, heartbeat follows the translated panel, and the new engine checks are registered 2026-09-26 03:35:18 +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 Put the UPG 100 choice on the surface that actually shows it 2026-09-28 19:41:29 +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 Every Studio gallery tab after the first threw from createI18n: create it in a detached scope 2026-09-27 02:32:07 +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 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-info-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-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 gates: two unwired checks were red on main, and nothing could tell us 2026-09-24 15:53:58 +00:00
check-legend-top-offset.mjs The legend held a slot for a toolbar this profile never draws 2026-09-28 17:53:39 +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 Move zone-regions.json + groupings.json to data/tables/, the shared asset pool 2026-09-28 15:52:47 +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 check:manifest-covers knows a desktop-only bundle is not in the web tree 2026-09-28 14:53:59 +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 Two maps placed their share menu correctly because they were named in a string literal 2026-09-28 17:40:34 +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 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-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-orphan-gates.mjs Wire the seven gates that could run, and make wave membership visible 2026-09-24 11:24:01 +00:00
check-no-public-binds.mjs Bind local preview servers to loopback only 2026-09-22 17:32:33 +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 The gallery pane was ported from a working one, two lines out of three 2026-09-28 16:49:01 +00:00
check-optional-t-equivalence.mjs Merge commit '3f6e29eb' into bundler-1/work 2026-09-27 02:35:10 +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 Keep the map artwork left-to-right inside an Arabic packet 2026-09-29 02:16:34 +00:00
check-packet-browser.mjs Build the prayer packet page by page to its specified structure 2026-09-29 02:16:28 +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 Build the prayer packet page by page to its specified structure 2026-09-29 02:16:28 +00:00
check-packet-strings-parity.mjs Mark 5 in five more languages, each a cited public-domain translation 2026-09-27 09:07:17 +00:00
check-packet-variants.mjs Build the prayer packet page by page to its specified structure 2026-09-29 02:16:28 +00:00
check-packets-all.mjs Every zone a reader can pick resolves to its groups, Deaf included 2026-09-29 02:16:27 +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 check:poster-action-print also pins PosterDialog's print default and its download opt-ins 2026-09-28 05:30:58 +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 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-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-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 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-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-prayer-walk-planner.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-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 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-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 Twenty-four warnings about an overwrite that was the whole point 2026-09-28 17:53:38 +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-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-series-isolation.mjs posters: SERIES is the one switch; header wording joins it; country mode fixed 2026-09-28 04:57:44 +00:00
check-setup-order.mjs check:setup-order arm C: getCurrentInstance() read from a watcher, and the early-out that hid it 2026-09-27 05:05:03 +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 A shared link reads a list separated by , or |, so partner links already published keep working 2026-09-27 19:10:08 +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 Shoot the README with the token the bundles ship, and make the fidelity gate ask 2026-09-23 06:26:39 +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 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-square-map-controls.mjs Square panel: no child brings its own outline 2026-09-27 23:23:42 +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 check:studio-rail — scope the label rule by PROFILE stage, not bundle stage 2026-09-28 08:31:18 +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 Gate the tab radius so a superseded rationale cannot quietly restore the pill 2026-09-23 01:08:10 +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 check:universal-props: allow UPG Neighbor's photo lookup, which fetches slugs and photos, not a list 2026-09-29 03:22:31 +00:00
check-upg-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-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 Gate the URL-resolver rule the build could never have caught 2026-09-22 14:18:26 +00:00
check-verification-tags.mjs Record which kind of verification closed each card 2026-09-22 17:00:26 +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 Unblock studio's landing 13: drop the dead fallback, make the zoning gate measure on a clean tree 2026-09-27 06:57:00 +00:00
clean.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
desktop-build.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
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 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
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 A gated bundle builds outside public/, and a gate keeps it out of the tree 2026-09-29 02:35:35 +00:00
generate-wagf-region-names.mjs Big Picture speaks Arabic where it was still speaking English: chrome and data labels 2026-09-28 02:01:46 +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 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
measure-map-load.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
mobile-sheet-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
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 public-hygiene: the packets' prayer point 1 may say persecution, exactly as written; nothing else may 2026-09-28 02:38:49 +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 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
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 Tooling reads the tree's name from the build config, in one place 2026-09-25 16:25:22 +00:00
share-roundtrip-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
smoke-studio.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
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 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
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 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
verify-5-capabilities.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-browser-all.mjs Assert that MAPBOX drew, which nothing measured 2026-09-29 00:26:56 +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 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-shell-scroll.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
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