doxa-maps/plugin-designs/research-map-plus-grid
Doxa Maps 199cc61a19 check:no-free-identifiers reads .js modules, which is how the NEUTRAL P1 got past it
The P1 that emptied Big Picture's Religion and Region charts was a free identifier:
useDashboardAggregations.js read NEUTRAL five times and never imported it. This gate exists for exactly
that class and did not fire, because it walked only .vue files. A bundle compiles .js and .vue alike,
so the gate was seeing half of what ships.

Two things were needed, and the first attempt got only one of them. Adding .js to the walker is not
enough: a .js module was then handed to Vue's SFC parser, which found no <script>, and acorn reported
"Unexpected token (2:1)" — the second line of the file's own doc comment. A .js file is its own script
block, so it now parses directly, with offset 0 so reported line numbers are the file's real ones.

VERIFIED BOTH DIRECTIONS, which is the only way to know a gate works:
  - clean main: rc=0, no false positives
  - NEUTRAL import removed again: rc=1, naming useDashboardAggregations.js:173 and :216
So it would have caught the P1 before it reached the Driver's console.

Blast radius measured on main first: exactly 2 findings, both false — DOMException and
createImageBitmap, standard browser globals missing from the known-globals list. Added. No other
owner's file is implicated, and nothing was changed outside this gate.
2026-09-27 06:42:55 +00:00
..
scripts check:no-free-identifiers reads .js modules, which is how the NEUTRAL P1 got past it 2026-09-27 06:42:55 +00:00
index.html Add the mobile capability-4 composite: research map above the people-groups grid 2026-09-22 07:34:02 +00:00
index.js Add the mobile capability-4 composite: research map above the people-groups grid 2026-09-22 07:34:02 +00:00
research-map-plus-grid.instances.json Add the mobile capability-4 composite: research map above the people-groups grid 2026-09-22 07:34:02 +00:00
research-map-plus-grid.meta.json Plugin Studio and the gallery split production from experimental, from each bundle's own stage 2026-09-27 06:04:08 +00:00
research-map-plus-grid.vue Arabic set after mount never turned the composites RTL, because the instance was read too late 2026-09-27 05:05:03 +00:00