fix(website): neutral wording for every game name in players' issue titles, so they can't block deployment #731
No reviewers
Labels
No labels
area/accessibility
area/audio
area/input
area/install
area/menu
area/renderer
area/saves
area/upscaling
beanstalk: approved @ 1697603
beanstalk: approved @ 2c5a62e
beanstalk: approved @ 4fd82b7
beanstalk: approved @ 64d6d09
beanstalk: approved @ 6f91fae
beanstalk: approved @ 70a78f9
beanstalk: approved @ 8015c9a
beanstalk: approved @ 8d361dc
beanstalk: approved @ 9d8356e
beanstalk: approved @ abf2227
beanstalk: approved @ d82f202
beanstalk: approved @ e5f1e40
beanstalk: approved @ ee8ab5f
ci: approved
good first issue
gpu/amd
gpu/igpu
gpu/intel
gpu/nvidia
help wanted
kind
bug
kind
chore
kind
docs
kind
feature
kind
performance
kind
question
needs measurements
platform/linux
platform/macos
platform/steam-deck
platform/windows
preview
priority
critical
priority
high
priority
low
regression
status
blocked
status
confirmed
status
duplicate
status
invalid
status
needs-info
status
wontfix
testing wanted
ci: approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/Longshot!731
Loading…
Reference in a new issue
No description provided.
Delete branch "HumanBean/Longshot:fix/website-issue-titles"
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?
Type: fix · Risk: low · Tested on: Linux (the wording rules replayed by hand; no Node here) · Needs: the website's
npm run build && npm run check(CI or any PC with Node 24)Why
longshot.magicbean.dev hasn't updated since the newest settings and help pages were merged: every deployment fails at the last step. The site check refuses to publish while the progress feed shows the game's names, and the feed takes issue titles from the forge exactly as players type them. Two open issues name a river in the game without the apostrophe the wording rules expected, #603 and #615, so the check fails on them and the site stays as it was. Any future title with a name the rules don't know would do the same.
How to reproduce
Seen on: the website workflow, run https://git.magicbean.dev/MagicBeanDev/Longshot/actions/runs/15309 (main @
5274fb72)Settings and switches: defaults
Steps:
cd website && npm ci && npm run build && npm run checkwhile issue 603 or 615 is openExpected: the check passes and the site deploys
Actual:
Progress issue:603: game branding remains in public copy, the same for 615, and the job fails before deploying (astro builditself completes)What changed
The wording rules now cover the names players actually type, and anything the rules still miss is replaced by "in-game" instead of blocking the deployment. The list of names the check rejects moves next to the rules, so the two read the same list.
publicGameText()inwebsite/src/lib/public-copy.ts:GAME_BRANDINGinpublic-copy.ts, andwebsite/scripts/check-site.tsimports it instead of keeping its own copy. The page-prose check is unchanged, so hand-written page text that names the game still fails the build.website/tests/public-copy.test.ts: the two issue titles come out as neutral text, and none of a set of names (Zora River, Gorons, Ganondorf, lowercase navi, EPONA, …) leaves anything the check matches.website/README.md: the list and the catch-all.Measurements
Verdict: Nothing to measure: a fix to the website's text rules, checked by its tests.
Flags and settings
None
Testing
Tested: The rule chain from
public-copy.ts, replayed with Python'sre(the same patterns) on the two issue titles, the new test's names and the existing tests' expected strings. Every output is free of the check's names, and the existing tests' expected outputs are unchanged (for example "Hyrule, then Hyrule Field and Hyrule Castle" and "Auto, Switch, Xbox"). Nothing was run on the author's PC, and Node wasn't available on the lab.Not tested:
node --test website/tests/*.test.tsandnpm run checkunder Node; the fulltests/run_all.py(nothing outsidewebsite/changed).Must be tested:
cd website && npm ci && npm run build && npm run check, expecting "Site check passed" and noProgress issue:lines while 603 and 615 are open. After merge, the website workflow on main must deploy, and https://longshot.magicbean.dev/settings/ must show "Custom output size" and "Walk".Risks
What could break: A title with a game name now shows "in-game" in its place on the progress page, which can read oddly ("in-game Temple"). The original title is still on the forge, one click away.
Turning it off: revert the commit.
Compatibility: Nothing changes for a player's game; only the website's text.
Checklist
Everyone
type(scope): description) of the status line's type.main.python -I -B tests/run_all.pypasses (any failure that also fails onmainis named). (not run: left to CI; nothing outsidewebsite/changed)third_party/untouched (a new folder with aPROVENANCE.mdinstead).When it applies
Assisted-by:/Co-Authored-By:trailers.mainand passing here. (added and fails on main by its first assertion; not yet run under Node)🤖 Generated with Claude Code
https://claude.ai/code/session_017vw8e3MfaADZobPGhWJk77
WIP: fix(website): neutral wording for every game name in players' issue titles, so they can't block deploymentto fix(website): neutral wording for every game name in players' issue titles, so they can't block deployment