fix(demo): lock removing a Steam link on the demo (DM27) #67

Merged
whitlocktech merged 1 commits from fix/demo-lock-steam-unlink into edge 2026-10-28 04:47:46 -05:00
Member

Fixes step-5 walk finding W4: demo-player's stand-in Steam link can't be removed on the demo.

  • module.json demoLocks gains DELETE /player/rust/links/:steamId.
  • Staff's DELETE /admin/users/:id/rust/links/:steamId serves under core's users mount, which a module's demoLocks may not name. Its handler therefore refuses with 403 DEMO_LOCKED behind ctx.demoMode, before the link is touched.
  • Off the demo, both routes behave as before. No route or swagger change.

Checked

  • Server tests: 731 run, 0 fail; check:swagger passes.
  • On a real core (website main plus this server half) with the demo seed: both routes answer 403 DEMO_LOCKED and the link stays.

Reaching the demo needs an edge → main cutover (→ v0.6.2). The demo picks that up at the next wipe.

Design of record: docs#387 (DM27).

  • AI-assisted: Claude Code (Claude Opus 5.5)

🤖 Generated with Claude Code

https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY

Fixes step-5 walk finding W4: `demo-player`'s stand-in Steam link can't be removed on the demo. - `module.json` `demoLocks` gains `DELETE /player/rust/links/:steamId`. - Staff's `DELETE /admin/users/:id/rust/links/:steamId` serves under core's users mount, which a module's `demoLocks` may not name. Its handler therefore refuses with `403 DEMO_LOCKED` behind `ctx.demoMode`, before the link is touched. - Off the demo, both routes behave as before. No route or swagger change. **Checked** - Server tests: 731 run, 0 fail; `check:swagger` passes. - On a real core (website main plus this server half) with the demo seed: both routes answer `403 DEMO_LOCKED` and the link stays. Reaching the demo needs an `edge` → `main` cutover (→ v0.6.2). The demo picks that up at the next wipe. Design of record: docs#387 (DM27). - [x] AI-assisted: Claude Code (Claude Opus 5.5) 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
wtclaude added 1 commit 2026-10-28 04:45:13 -05:00
fix(demo): lock removing a Steam link on the demo (DM27)
All checks were successful
PR Checks / server-tests (pull_request) Successful in 54s
PR Checks / client-build (pull_request) Successful in 1m5s
PR Checks / frozen-manifest (pull_request) Successful in 1m36s
fb7511d700
The step-5 walk found demo-player could remove its stand-in Steam link from
its Rust page, and staff could remove it from Admin -> Users. That link is
what the player tour's Rust pages, rewards and grants hang on.

- module.json demoLocks gains DELETE /player/rust/links/:steamId.
- The staff route, DELETE /admin/users/:id/rust/links/:steamId, serves under
  core's users mount, which a module's demoLocks may not name, so its handler
  refuses with DEMO_LOCKED behind ctx.demoMode before the link is touched.

Off the demo both behave as before. Checked on a real core with the demo
seed: both answer 403 DEMO_LOCKED and the link stays.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
whitlocktech merged commit ec90d2d5ae into edge 2026-10-28 04:47:46 -05:00
whitlocktech deleted branch fix/demo-lock-steam-unlink 2026-10-28 04:47:46 -05:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: RunicGateway/Module-Rust#67
No description provided.