Batch fourteen closed it — 2,347 language codes decided, 1,022 carrying Words of Life. Forty groups leave the gap: 1,653 with nothing becomes 1,613, and the gap breakdown drops from four situations to three, because "GRN not yet swept" no longer describes anybody. What is left is 1,429 groups where every pool this build can reach has been searched, 183 sign languages behind key-gated sources, and one group with no language code at all. Two things the sweep exposed. 5fish answers 200 for any path, so its 982 links were being verified by a status that means nothing there; they are now judged by where the redirect LANDS — a real code goes to its numbered language page, one they do not carry is swept to /regions — with both arms proved in band before any link is classified. And country-gap reads a file that another script refreshes from the pins, so running them out of order publishes the previous build's numbers: it said 1,653 while the map said 1,613. It now refuses to write a table that disagrees with the index the map draws. |
||
|---|---|---|
| .. | ||
| 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.