feat(demo): list the demo's sign-ins on /beta and link into it per game #42
Reference in New Issue
Block a user
No description provided.
Delete Branch "feat/demo-live"
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?
This is the site half of
DEMO_MODE.md§10 step 6 ("runicgateway.com/betapublishes the logins"). It records two decisions the org lead took on 2026-10-28, inPLAN.md§15.D82:
/betalists the demo's sign-ins as the demo publishes them. WithdemoUrlmounted, the page's server reads<demoUrl>/api/v1/public/settings→demo.logins. It caches the answer for 60 s, gives up after 1.5 s, and caches a failure for 15 s. Every field is checked for shape and length before it is rendered. When the demo doesn't answer (it's down a few minutes at every wipe), the page links to the demo's own sign-in page instead. Gate two ("somewhere to point it") reads as in place and gives the host name to type into the app. The browser loads nothing new, so D9 and the CSP are unchanged.D83: a demo deep link names its game. A link into a game module's pages carries
data-demo-game.applyBrand.mjsfills it only when the new mounteddemoGameslist names that game; core links (/wiki,/site/events,/site/news) followdemoUrlalone. The Rust features link to/rustand/rust/servers/demo?tab=…(demois the fixture's server id). UO's links, including Teams →/uo/guilds, stay hidden on a Rust demo.checkBrand.mjsholdsdemoGamesto the known games and checks thatDEEP_LINKreads the game.Also in this PR:
public-demonot-built entry is removed, because itsresolvedBywas met.DEPLOY.mdcovers the two fields.Going live (operator): add
"demoUrl": "https://demo.runicgateway.com"and"demoGames": ["rust"]to the mountedbrand.json, thendocker compose restart site.Checked:
test/demo.test.mjspasses 13/13, includingapplyBrandrun on a scratch build.npm run verifypasses every step exceptcheck:facts, for a reason that is already onmain(below).npm startwith that mount against the live demo listed 3 logins (play-reviewnot among them) and the 22:00 UTC wipe. It filled 7 Rust links and 3 core links and left/uo/guildsempty.Known red, not from this PR:
check:factsfails onrelease Module-Rust.platform.jsonsays v0.6.0, but v0.6.3 shipped today.mainhas the same failure. I've asked the org lead whether to fold the bump in here or open a separate PR.🤖 Generated with Claude Code
https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY