fix(site): anchor the bind-mount ignores, and commit platform.json
Some checks failed
PR checks / checks (pull_request) Failing after 1m1s
Some checks failed
PR checks / checks (pull_request) Failing after 1m1s
`data/` without a leading slash matches a directory of that name at any depth, so it silently swallowed src/data/platform.json -- the single file every page and checkFacts.mjs reads. The working tree still had it, so `npm run verify` passed locally with all 14 facts green. CI cloned fresh and `astro check` failed on the missing module. Anchored both patterns to the repository root. Verified the way it should have been the first time: exported HEAD to a clean directory, npm ci, and ran the checks there rather than in the tree that was hiding the problem. Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
10
.gitignore
vendored
10
.gitignore
vendored
@@ -9,8 +9,14 @@ node_modules/
|
|||||||
# The bind mounts (PLAN.md §6, §7). Neither belongs in the repo: `brand/` is the
|
# The bind mounts (PLAN.md §6, §7). Neither belongs in the repo: `brand/` is the
|
||||||
# operator's override of the stock branding, and `data/` is the beta signup store.
|
# operator's override of the stock branding, and `data/` is the beta signup store.
|
||||||
# `brand-default/` IS committed — it is baked into the image and must always be complete.
|
# `brand-default/` IS committed — it is baked into the image and must always be complete.
|
||||||
brand/
|
#
|
||||||
data/
|
# Both patterns are anchored with a leading slash, and that is load-bearing: an
|
||||||
|
# unanchored `data/` matches a directory of that name at ANY depth, so it silently
|
||||||
|
# swallowed `src/data/platform.json` — the one file the whole accuracy machinery reads.
|
||||||
|
# The working tree still had it, so every local check passed; CI, cloning fresh, failed
|
||||||
|
# on the missing module. Anchor anything meant to match only the repository root.
|
||||||
|
/brand/
|
||||||
|
/data/
|
||||||
|
|
||||||
# Environment
|
# Environment
|
||||||
.env
|
.env
|
||||||
|
|||||||
60
src/data/platform.json
Normal file
60
src/data/platform.json
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
{
|
||||||
|
"$comment": [
|
||||||
|
"PLAN.md §12: one file holding every externally-sourced fact. Every page reads from",
|
||||||
|
"here, and NO version number is ever hardcoded in prose.",
|
||||||
|
"",
|
||||||
|
"`scripts/checkFacts.mjs` fetches the authority for each value below and fails the build",
|
||||||
|
"on any disagreement. When the platform moves, this repo goes red so someone updates the",
|
||||||
|
"site — that failure is the feature, exactly as in the Integration Kit's checkCoreApi.js.",
|
||||||
|
"",
|
||||||
|
"Do not edit a value here to make the check pass without also re-reading the page that",
|
||||||
|
"quotes it. §1's process rule exists because a stale local `main` is what produced the",
|
||||||
|
"wrong protocol number in the first place."
|
||||||
|
],
|
||||||
|
|
||||||
|
"verifiedOn": "2026-08-19",
|
||||||
|
|
||||||
|
"protocol": 4,
|
||||||
|
|
||||||
|
"moduleApi": "1.6.0",
|
||||||
|
|
||||||
|
"bundle": {
|
||||||
|
"tag": "2026.08.19",
|
||||||
|
"sidecar": "v2.0.0",
|
||||||
|
"overlay": "v1.0.0",
|
||||||
|
"servuoMin": "57.4"
|
||||||
|
},
|
||||||
|
|
||||||
|
"releases": {
|
||||||
|
"link": "v2.0.0",
|
||||||
|
"installer": "v0.1.0",
|
||||||
|
"Module-uo": "v1.0.1",
|
||||||
|
"Android-app": "v0.5.0"
|
||||||
|
},
|
||||||
|
|
||||||
|
"$comment_website": [
|
||||||
|
"`website` publishes no releases at all — it ships as container images and is never",
|
||||||
|
"tagged. The site must never print a 'website version'; it refers to the platform by",
|
||||||
|
"bundle tag and Module API version instead. checkFacts.mjs asserts the releases list is",
|
||||||
|
"still empty, so the day that changes, this repo notices."
|
||||||
|
],
|
||||||
|
"websiteHasReleases": false,
|
||||||
|
|
||||||
|
"moduleUoCapabilities": [
|
||||||
|
"shard",
|
||||||
|
"atlas",
|
||||||
|
"market",
|
||||||
|
"governors",
|
||||||
|
"guilds",
|
||||||
|
"houses",
|
||||||
|
"champs",
|
||||||
|
"cliloc"
|
||||||
|
],
|
||||||
|
|
||||||
|
"androidApplicationId": "com.runicgateway.app",
|
||||||
|
|
||||||
|
"gitea": {
|
||||||
|
"base": "https://gitea.whitlocktech.com",
|
||||||
|
"org": "RunicGateway"
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user