hikari 03b6c847b3
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m5s
CI / Lint, Build & Test (push) Successful in 1m10s
feat: debug panel with force unlocks and hard reset (#65)
## Summary
- Adds a new **Debug** tab to the game UI with two self-service tools for players with broken save state
- **Force Unlocks**: scans the player's save and grants any zones, quests, bosses, and exploration areas they've earned but that are still locked — shows a breakdown of what was unlocked (or reports nothing needed fixing)
- **Hard Reset**: wipes progress back to a fresh save (preserving lifetime stats), guarded behind a confirmation modal to prevent accidental clicks

## Files added
- `apps/api/src/routes/debug.ts` — two POST endpoints (`/force-unlocks`, `/hard-reset`)
- `apps/web/src/components/game/debugPanel.tsx` — the Debug tab UI
- `apps/web/src/components/ui/confirmationModal.tsx` — reusable confirmation modal

## Files modified
- `apps/api/src/index.ts` — registers the debug router
- `packages/types/src/interfaces/api.ts` — adds `ForceUnlocksResponse` type
- `packages/types/src/index.ts` — exports the new type
- `apps/web/src/api/client.ts` — adds `forceUnlocks()` and `debugHardReset()` API calls
- `apps/web/src/context/gameContext.tsx` — wires both functions into game context
- `apps/web/src/components/game/gameLayout.tsx` — adds the Debug tab
- `apps/web/src/styles.css` — styles for action buttons, cards, result messages, and confirmation modal

 This PR was created with help from Hikari~ 🌸

Reviewed-on: #65
Co-authored-by: Hikari <hikari@nhcarrigan.com>
Co-committed-by: Hikari <hikari@nhcarrigan.com>
2026-03-18 12:37:06 -07:00
2025-07-14 21:17:39 -07:00
2025-07-14 21:17:39 -07:00
2025-07-14 21:17:39 -07:00
2025-07-14 21:17:39 -07:00
2025-07-14 21:17:39 -07:00
2025-07-14 21:17:39 -07:00
2025-07-14 21:17:39 -07:00

New Repository Template

This template contains all of our basic files for a new GitHub repository. There is also a handy workflow that will create an issue on a new repository made from this template, with a checklist for the steps we usually take in setting up a new repository.

If you're starting a Node.JS project with TypeScript, we have a specific template for that purpose.

Readme

Delete all of the above text (including this line), and uncomment the below text to use our standard readme template.

S
Description
An Idle RPG in the browser
Readme 4.8 MiB
v0.5.0 Latest
2026-04-06 20:19:56 -07:00
Languages
TypeScript 95.2%
CSS 4.3%
JavaScript 0.4%