doxa-maps/internal
doxa-maps-88655c70 fa0b7d1099 Keep the development-era internal code name out of shipped files
The repo is handed to the Doxa team, and a code name from its build history
means nothing to an inheritor. Two places carried it, both regenerating:

  - public/.build.lock was TRACKED. internal/build-lock.sh stamps it with
    `by=$(whoami)` under flock on every build, so each rebuild committed the
    building machine's username. Scrubbing the string would have been useless;
    the file is pure runtime state nothing reads but the lock, so it is now
    ignored via public/.gitignore instead.
  - check-no-absolute-paths.mjs quoted a real home path in its header to
    explain the rule. The prose works the same with /home/<user>/.

check:no-codename makes it stick. It scans tracked files only (the set a clone
receives), names every offending file:line in one pass, and refuses to pass
vacuously on a short file list.

Two things it has to get right or it becomes noise. "10x" is ordinary English
for a multiplier and library/scripts/research uses it correctly, so only the
full two-part name matches. And the same letters appear as the unix username
inside /home/ paths, which is a portability defect check:no-abs-paths already
reports better — those are listed, not failed, so the two gates cannot
disagree about one string.

It carries no ALLOW entry for itself. A gate must never be its own witness,
and an exemption is a hole a real leak could hide in, so the pattern is
assembled from fragments at run time and the file scans itself on the same
terms as every other.

Negative-tested: planting the name in README.md fails naming README.md:2,
exit 1; removing it passes. All five spellings (LK10X, LK 10X, lk10x, LK-10X,
lk_10x) planted across five different shipped surfaces are reported together
in one run, exit 1; reverting returns exit 0.

Also quotes check:heartbeat into the CLI doc, which check:quoted-scripts
requires and which landed in package.json without it.
2026-09-22 22:18:18 +00:00
..
acceptance Session work: strobe fix, grid layout, stacked tree legend, selection camera, chip bounding, asset inheritance, gates 2026-09-20 04:49:25 +00:00
fixtures Gate the scrim-covers-viewport rule, and say what was not verified 2026-09-22 21:54:39 +00:00
lib Add deepFindAll to the shared browser helper, so counting probes stop being hand-rolled 2026-09-22 06:19:13 +00:00
plugin-gallery Checkpoint the swarm's in-flight work 2026-09-22 21:42:18 +00:00
atomic-public-swap.sh Session work: strobe fix, grid layout, stacked tree legend, selection camera, chip bounding, asset inheritance, gates 2026-09-20 04:49:25 +00:00
build-lock.sh Brand-neutral shared VerticalTabsLayout with lazy nested-element hosting; fix cap-5 prayer tab leaf path; neutralize library identifiers; add Forgejo CI build-gate workflow 2026-09-19 17:24:30 +00:00
check-a11y-button-names.mjs name the legend collapse control and gate every button's accessible name 2026-09-21 13:23:35 +00:00
check-backlog-status-enum.mjs Require a queryable status on every backlog card 2026-09-22 20:46:06 +00:00
check-capability-citations.mjs Widen the capability-citation gate to the documentation folder 2026-09-22 10:50:55 +00:00
check-capability-exemplars.mjs consolidate docs into documentation/ and deployment shells into deployment/ 2026-09-21 23:23:23 +00:00
check-catalog-currency.mjs catalog-currency: a bundle missing from the catalog now fails instead of passing 2026-09-22 04:06:55 +00:00
check-catalog-identity.mjs prove the live server serves the catalog's exact bytes 2026-09-21 12:46:48 +00:00
check-composite-freshness.mjs add a composite-freshness gate for stale nested children 2026-09-21 06:06:29 +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 Give nested ProfileLoader children the profile-config they require 2026-09-22 09:37:35 +00:00
check-csv-export-shape.mjs Checkpoint the swarm's in-flight work 2026-09-22 21:42:18 +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-done-evidence.mjs make check:done-evidence SKIP honestly instead of passing vacuously 2026-09-22 00:35:07 +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-embed-targets-exist.mjs Track the embed-target gate, which was registered but never committed 2026-09-22 14:57:36 +00:00
check-facet-cascade.mjs Land the swarm's dashboard work: colour, rails, cascade, scroll 2026-09-22 18:57:39 +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-filter-width-stable.mjs Assert a filter trigger keeps its width when an option is selected 2026-09-22 19:46:49 +00:00
check-fixed-anchoring.mjs Anchor the filter dropdown in every host, not just standalone 2026-09-22 17:22:23 +00:00
check-kpi-unit-once.mjs Print each KPI percent sign once 2026-09-22 18:28:53 +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-library-index.mjs consolidate docs into documentation/ and deployment shells into deployment/ 2026-09-21 23:23:23 +00:00
check-manifest-covers-discovery.mjs Catch a plugin the manifest forgets, without calling a gated one a defect 2026-09-22 15:21:27 +00:00
check-mjs-parses.mjs Parse the build scripts before the build runs them 2026-09-22 21:33:32 +00:00
check-nav-reachable-mobile.mjs Gate that a phone can actually open the tab rail 2026-09-22 08:23:03 +00:00
check-nested-token-delivery.mjs Gate that every shipped leaf carries its own map token 2026-09-22 07:56:34 +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-internal-codename.mjs Keep the development-era internal code name out of shipped files 2026-09-22 22:18:18 +00:00
check-no-orphan-gates.mjs Make the shell-scroll gate runnable, and catch orphan gates 2026-09-22 17:55:43 +00:00
check-no-public-binds.mjs Bind local preview servers to loopback only 2026-09-22 17:32:33 +00:00
check-one-palette.mjs Gate that map, legend and charts share one palette 2026-09-22 18:00:51 +00:00
check-profile-descriptions.mjs Gate: every shipped profile must say what it is 2026-09-22 03:23:55 +00:00
check-quoted-scripts.mjs consolidate docs into documentation/ and deployment shells into deployment/ 2026-09-21 23:23:23 +00:00
check-scrim-covers-viewport.mjs Gate the scrim-covers-viewport rule, and say what was not verified 2026-09-22 21:54:39 +00:00
check-script-flags-reachable.mjs Make advertised script flags actually reachable 2026-09-22 17:44:02 +00:00
check-sfc-script-parses.mjs Catch the live-CSS backtick by parsing, not by guessing 2026-09-22 11:04:10 +00:00
check-shot-distinctness.mjs consolidate docs into documentation/ and deployment shells into deployment/ 2026-09-21 23:23:23 +00:00
check-shot-fidelity.mjs gate the blank-basemap class: 7 of 10 map bundles draw geography from Mapbox tiles only 2026-09-21 11:46:36 +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 consolidate docs into documentation/ and deployment shells into deployment/ 2026-09-21 23:23:23 +00:00
check-spa-tab-order.mjs Assert the cap-5 rail opens on the Big Picture, in the specified order 2026-09-22 20:39:05 +00:00
check-synced-css-copies.mjs Check that a component's two CSS copies agree 2026-09-22 18:40:55 +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-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
clean.mjs doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
drop-portability-check.mjs derive the check:drop coverage floor from the manifest instead of hardcoding it 2026-09-20 07:22:07 +00:00
embed-smoke.mjs wire a Mapbox token through embed-smoke so map profiles can mount 2026-09-21 18:15:38 +00:00
generate-capability-exemplars.mjs Generate one canonical exemplar per tier, so a miscitation is copy-paste to fix 2026-09-22 05:35:03 +00:00
generate-gallery.mjs Anchor the gallery's assets to the tree, not to the page directory 2026-09-22 22:03:58 +00:00
generate-library-index.mjs consolidate docs into documentation/ and deployment shells into deployment/ 2026-09-21 23:23:23 +00:00
generate-tree.mjs Land the swarm's work: no iframes anywhere, a tree that keeps its shape, deeper facets 2026-09-22 14:51:52 +00:00
inline-parse-check.mjs doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
install-shell.mjs Brand-neutral shared VerticalTabsLayout with lazy nested-element hosting; fix cap-5 prayer tab leaf path; neutralize library identifiers; add Forgejo CI build-gate workflow 2026-09-19 17:24:30 +00:00
legend-columns-probe.mjs Complete app-profiles->plugin-designs sweep across comments/docs; build green; layouts kept at root (load-bearing) 2026-09-17 18:18:19 +00:00
long-frames-probe.mjs Complete app-profiles->plugin-designs sweep across comments/docs; build green; layouts kept at root (load-bearing) 2026-09-17 18:18:19 +00:00
mobile-sheet-probe.mjs Complete app-profiles->plugin-designs sweep across comments/docs; build green; layouts kept at root (load-bearing) 2026-09-17 18:18:19 +00:00
plugin-gallery-smoke.mjs Let smoke:gallery report what it can actually see 2026-09-22 21:10:37 +00:00
public-hygiene-check.mjs Land the swarm's work: no iframes anywhere, a tree that keeps its shape, deeper facets 2026-09-22 14:51:52 +00:00
readme-shots-fix.mjs consolidate docs into documentation/ and deployment shells into deployment/ 2026-09-21 23:23:23 +00:00
readme-shots.mjs Give the README map screenshots their basemap back 2026-09-22 10:16:54 +00:00
settled-tree-gate.mjs Archive the repo-root staging page; the studio is the only entry now 2026-09-22 14:34:58 +00:00
share-roundtrip-smoke.mjs make the share suite refuse to report a false failure, and give it the token 2026-09-21 14:19:09 +00:00
smoke-studio.mjs Stop the capability-5 shells claiming a native element property 2026-09-22 15:03:52 +00:00
smoke.mjs Land the swarm's work: no iframes anywhere, a tree that keeps its shape, deeper facets 2026-09-22 14:51:52 +00:00
sri-consistency-check.mjs document the leaf-deletion blind spot in check:sri and point to the settled-tree leaf-count signal 2026-09-20 06:24:43 +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 Complete app-profiles->plugin-designs sweep across comments/docs; build green; layouts kept at root (load-bearing) 2026-09-17 18:18:19 +00:00
staging-reference-v2.html doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
sync-dropin.mjs Public data ships without working notes; unused data files stay out of the drop-in 2026-09-16 20:16:08 -05: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 Make the shell-scroll gate runnable, and catch orphan gates 2026-09-22 17:55:43 +00:00
verify-5-capabilities.mjs classify console errors in the two map gates instead of counting them 2026-09-21 14:04:18 +00:00
verify-browser-all.mjs Make the shell-scroll gate runnable, and catch orphan gates 2026-09-22 17:55:43 +00:00
verify-map-paint.mjs verify:map-paint now covers 11 of 12 map profiles, up from 4 2026-09-22 04:21:33 +00:00
verify-shell-scroll.mjs Stop the map from swallowing the wheel, and grade the gesture the user makes 2026-09-22 22:06:59 +00:00
vite-plugin-strip-shadow-css-comments.mjs Complete app-profiles->plugin-designs sweep across comments/docs; build green; layouts kept at root (load-bearing) 2026-09-17 18:18:19 +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