The map-ness scan follows a profile's own imports, which was the fix for a map-less list inheriting map-ness from its bundle. It follows RELATIVE imports only, so a component that moved into library/ became invisible: the profile reaches it through @map/..., the alias resolves nowhere in the walk, and the profile reports no map. MEASURED on the seven curated tabs, alias imports resolved and re-tested: exactly one was wrong. regions-dashboard/regions-mfe draws a real map through @map/components/maps/RegionCountryMap.vue, which does match the engine test -- it imports useMapInstance and useMapProvider -- while region-dashboards.vue holds no engine token of its own. The other five map tabs carry an engine token in their own files too, which is why only this one showed the symptom. It is not a recent break: regions-mfe is isMap=false in all eight manifest revisions in history. The consequence was a blind gate. check-mapbox-drew takes its targets from this flag, so it measured six of the seven tabs and silently omitted the one with an open map bug. Map leaves go 6 -> 7. country-map also flips to true, correctly: it renders the same component. A stricter test applies once the walk crosses into library/. The engine pattern matches the bare string maplibre-gl, which in a shared library is mostly prose and CSS class names -- 12+ library files match it while using no engine. The one that bit: wall-of-people-groups, a D3 wall with no map, imports src/wallD3.js, which imports library/constants/cdn.js, a pinned URL and SRI table that only NAMES the engine CDNs. With the loose test that wall flipped to isMap=true and would have baked ~400 KB it never uses, which is the regression the per-profile scan exists to prevent. Inside library/ a file now counts only if it imports the package, calls useMapInstance/useMapProvider, or touches a map global. Plugin files keep the original test, so no in-bundle result moves. Probe in _qa-cycle: nine cases including two reverse poisons -- regions-list and wall-of-people-groups must stay false. It reads the shipping functions out of this file rather than reimplementing them, and it fails on the code as it stood before this change. gates:pre 65/66. The one red is check:poster-action-print, which wants gospel's GiTree fix that is not on this branch yet. |
||
|---|---|---|
| .. | ||
| dx-maps | ||
| README.md | ||
public/ — the built output
This folder is GENERATED by bun run build; do not edit it by hand. It holds exactly one thing:
dx-maps/— the output folder: 25 plugin bundles and 37 pages, self-contained. Copy this one folder to any web host (or open it from disk) and it works.dx-maps/index.html— the front page: the Plugin Studio, every plugin in one place.dx-maps/<plugin>/<plugin>.js— a plugin's bundle (a custom element; load it with a<script>tag).dx-maps/<plugin>/<page>/index.html— a ready-made page for one plugin view (embed it in an<iframe>).dx-maps/manifest.json— every plugin, page and embed snippet, machine-readable.dx-maps/assets/— the data, fonts and images the plugins fetch at runtime.
The folder's name comes from name in vite.doxa-maps-build-config.json. Sources live in
plugin-designs/, library/ and data/; rm -rf public/ && bun run build recreates all of this.