|
Some checks are pending
build-gate / build (push) Waiting to run
generate-gallery.mjs:542 requests assets/vendor/vue/vue.global.prod.js, and generate-tree.mjs staged only vendor/tabulator -- so that request has 404'd on every build there has ever been. It survived because loadVue() degrades in three rungs: self-hosted, then the jsDelivr CDN, then a plain-DOM render. On any networked machine rung 2 silently covers for rung 1, and the only symptom was a 404 in `bun run smoke`, a gate nobody was running. Good degradation hid a missing build step. It mattered anyway: the comment above loadVue promises "self-hosted first (portable / offline / no-CDN)". Measured in a browser with no outbound network, the gallery fell all the way to the plain-DOM degrade -- usable, but not the Vue shell, and the offline claim was false. A tree dropped on a foreign host or opened over file:// is exactly what that rung is for. Vendored from node_modules/vue 3.5.42, placed in data/vendor/ (the real source -- generate-tree rmSyncs public/assets/vendor and re-copies from data/), tracked in both places exactly as vendor/tabulator already is. Verified: build exit 0 with zero missing-asset warnings; the gallery now loads Vue 3.5.42 FROM THE VENDORED COPY (not the CDN), the Vue app mounts, nav renders 5 rows. `bun run smoke` went from 4 failures to 2. A correction en route: I first blamed `bun run clean` for deleting the file. clean.mjs only wipes public/doxa-maps, never public/assets -- the real cause was generate-tree.mjs:1189 rmSyncing public/assets/vendor and re-copying it from data/vendor, which is why tabulator persists and a hand-placed file does not. |
||
|---|---|---|
| .. | ||
| external-bundles | ||
| people-groups | ||
| posters | ||
| tables | ||
| vendor | ||
| README.md | ||
data/ — the bundler's source-of-truth data
The law: data lives here; public/ is generated. Every folder in data/ is copied into the
served web-root by the build (internal/generate-tree.mjs), exactly like the per-profile data in
plugin-designs/*/data/. You should be able to rm -rf public/ and get it all back with bun run build.
| Folder | Served at | What it is |
|---|---|---|
people-groups/ |
/assets/people-groups/ |
People-group datasets (CSV/JSON) the maps read at runtime |
vendor/ |
/assets/vendor/ |
Third-party runtime assets (e.g. table libraries) |
posters/ |
/assets/posters/ |
Rendered poster webp set (heavy pipeline output; poster walls fetch these) |
tables/ |
/assets/tables/ |
The MERGED served table set (its index.json is the merge; per-profile plugin-designs/*/data/tables are build-time sources) |
external-bundles/ |
not served | Prebuilt map IIFEs vendored from sibling projects (not built here); only the optional layouts/ shell mounted them, so the build no longer copies them into public/ |
Don't edit anything under public/ by hand — change it here (or in plugin-designs/*/data/,
layouts/*/assets/) and rebuild.