doxa-maps/internal
Doxa Maps ff5aceb58f A country tapped on the map now reaches the prayer list
On mobile, selecting countries and pressing Prayer list reported zero UPGs and would not generate a prayer list.

selectedTerritories holds three kinds -- 'zone' (a legend row), 'adm0' (a
country tapped on the map) and 'adm1' (an India state / China province) --
and selectedLists() kept only 'zone'. So a map selection resolved to an
empty list and selectionAsList threw "nothing selected", while the HUD,
which sums t.count straight off the selection, showed a correct non-zero
total. Two sources of truth for one selection is why it read as a nonsense
error rather than an empty state: the app said 87 and the generator said
zero.

The adm0 key already carries the ISO3, which IS country_code on a
people-group row, so a tapped country becomes a country_codes selector the
evaluator already handles. No new selector type, and a mixed selection
unions and de-duplicates for free. The cover label now names the countries
too -- built from lists alone it was empty, and reduce() on an empty array
throws, so the packet would have died on its cover even after the selector
was fixed.

adm1 cannot resolve and that is a data fact, not an oversight: a
people-group row has no province field and the evaluator has no adm1 case.
Folding it into the country union would print a packet for the whole
COUNTRY while the reader had selected one STATE -- a plausible packet that
is quietly wrong. So it is refused BY NAME, which "nothing selected" was
not: that is a lie the reader can see is false with their selection
highlighted on the map.

Also, nothing showed that the action was running: batchBusy only
DISABLED the buttons, and a disabled button is visually indistinguishable
from an unresponsive one, so on a phone you tap, see nothing change, and
tap again. busyAction names which action is running so only that button
relabels, and it is cleared in every finally -- otherwise a failed print
leaves the button reading "Working..." forever.

check-selection-kinds.mjs reads the kinds OUT of resolveTerritory rather
than listing them, because listing them is how this survived: 'adm0'
existed in the resolver and nowhere in the consumer, and a test written
from the same mental list as the consumer would have missed it too.
Mutation-tested: reverting the guard, dropping the selector, and leaving
busyAction uncleared each fail with their own message.
2026-09-28 17:40:35 +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
lib Two readers of one private field, and nothing was holding them together 2026-09-28 15:52:46 +00:00
plugin-gallery The dev server serves a bundle's script embed (./<b>/<b>.js) as the built tree does 2026-09-28 02:38:49 +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 Tooling reads the tree's name from the build config, in one place 2026-09-25 16:25:22 +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 A fresh clone's first bun run dev line says Rudder is optional and needs Go 1.22+ 2026-09-28 08:20:21 +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 packets: fixtures at the PAGE BOUNDARY, which nothing had ever rendered 2026-09-24 23:53:07 +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-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 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-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
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:profiles-mount: every profile and preset instance mounts in en and ar, not only composites 2026-09-26 05:16:02 +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
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-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
check-element-bootstrap.mjs Five plugins were silently monolingual, because the bootstrap was copied sixteen times 2026-09-28 17:40:34 +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
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 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-experimental-shelf.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-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
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-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 Assert that no ring value makes a group vanish 2026-09-28 16:49:01 +00:00
check-gospel-tables-staged.mjs India by state, from India's own states 2026-09-26 08:37:10 +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-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 check:i18n-never-translated: CSV and JSON are file-format names, the same in every locale by design 2026-09-26 12:23:49 +00:00
check-i18n-parity.mjs All eleven locales complete — the last 162 keys of i18n debt, and the ratchet empties 2026-09-24 08:48:02 +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-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
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-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 legend mirrors in Arabic: logical insets instead of left/right 2026-09-26 22:06:57 +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-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-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 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-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-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 Engine and token props: a token-service URL is honoured, Clear clears, and a pending token is awaited 2026-09-26 03:34:15 +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-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-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-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
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-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
check-no-repo-pb-hooks.mjs Gate: no PocketBase hooks in the repo 2026-09-28 00:20:34 +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-browser.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-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-render.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-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 Prayer List gets the cards' caret, and starts printing the packet 2026-09-28 16:49:01 +00:00
check-packets-all.mjs check:packets-all — exit 75 is NOT MEASURED, not FAIL 2026-09-28 09:07:29 +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-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-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-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-print-fallback.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-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-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
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-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-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
check-selection-kinds.mjs A country tapped on the map now reaches the prayer list 2026-09-28 17:40:35 +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
check-shadow-css-parses.mjs check:shadow-css-parses reads the style id: it must be a plain identifier 2026-09-27 06:04:07 +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
check-shot-fonts.mjs
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
check-tab-radius-token.mjs
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
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 The LOCALE column clears for Big Picture: the held numerals decision is allowed at its one site 2026-09-28 00:20:33 +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
check-verification-tags.mjs
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-zone-census.mjs
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 The dev server says which commit it serves (/__dev-sha), and a helper finds the shared one 2026-09-26 03:34:30 +00:00
dev-sync-plugin.mjs Follow a remote: DX_SYNC_REMOTE also takes a repo URL, and checks every 5 s by default 2026-09-27 23:54:30 +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 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
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 Landing precondition 0: no file in the commit, public/ included, may hold a merge-conflict marker 2026-09-26 07:58:06 +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 Rudder stays out of the Research Gallery and makes no network call on a static host 2026-09-28 03:12:46 +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
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 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
template-literal-check.mjs
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 verify:browser-all reads a gate's exit 75 as NOT MEASURED, not as a failure 2026-09-28 09:07:29 +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