Split the glossary into one file per term, built in CI #37
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/glossary-split"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes the editing part of #34: every glossary branch edited the same sorted lists in
graph.json, so branches adding terms at the same time would conflict.What changes
glossary/terms/<kind>/<id>.json, one file per term with the edges that start from it. The file name is the id and the folder the kind, so neither is written inside. A symmetric edge may sit at either end, not both.edge-types.json,tags.jsonandabbreviations.jsonsit besideterms/.scripts/build-glossary.mjs(wascheck-glossary.mjs) runs every old check, and also rejects unknown or path-derived fields, stray files, unknown kinds and duplicate ids. It writespublic/glossary/graph.jsononly when all checks pass, and names the file to fix in each error.go testand both images read it.glossaryservice incompose.dev.yml(pinned Node 24, no network, read-only, writes onlypublic/glossary/).webandserverwait for it, so a broken glossary stopsup.Tested
idin a file, wrong folder, duplicate id, symmetric edge at both ends, missing Finnish) fails and writes nothing.html-validate; the dev stack through the new service: page servesgraph.json, the quiz deals a round.gofmt,go vet,go testin the dev server container against its PostgreSQL.Not decided here, per #34: loading in parts (revisit at ~1,000 terms), and a Business domain folder level, which would come with the business terms (#29, #36).