Skip to content

feat(pwa): complete authenticated management dashboard - #1

Merged
Okazakee merged 2 commits into
masterfrom
phase-pwa-catchup
Aug 26, 2026
Merged

Okazakee merged 2 commits into
masterfrom
phase-pwa-catchup

Conversation

@Okazakee

Copy link
Copy Markdown
Contributor

Complete Phase 1 + delivered Phase 1.5 PWA catch-up

The hosted dashboard at app.minepanel.xyz now operates the delivered backend surface end to end:

  • Authenticated panel shell with session restore (backend-authoritative)
  • Cookie sessions + Web Locks single-flight refresh coordination
  • Local login / registration with PENDING approval handling
  • Google sign-in and authenticated account linking (fresh single-use challenge per attempt)
  • TOTP 2FA login, enrollment (canvas QR + one-time backup codes), disable
  • First-admin setup/bootstrap (X-Setup-Token, memory-only)
  • Account and session management (profile edit, session revocation, logout-all)
  • Server list/detail, create, delete, start/stop/restart lifecycle
  • OPEN / REQUEST / PRIVATE access workflows
  • Requestable server discovery + pagination (backend capability-gated)
  • Admin user management (approve, ban, role, reset password, 2FA removal)
  • MOD permission grants (global and server-scoped)
  • ADMIN-only realtime host metrics over cookie-authenticated WebSocket
  • Panel query isolation (per record + origin + user) and hard remount on switch
  • Cross-tab session termination scoped to the backend origin
  • PWA/SW/CSP hardening: precache-only service worker, strict CSP, no token persistence
  • Canonical MinePanel branding (favicon, app icons, self-hosted fonts, OG)
  • New CI workflow (frozen install, typecheck, lint, test, build)
  • Roadmap truth reconciled

Known backend limitations (documented, not frontend defects)

  • Google sign-in for accounts with TOTP already enabled requires the password path (backend provides no provider pre-auth challenge)
  • Session profile does not expose email
  • Hosted mode requires CHIPS Partitioned cookies, Web Locks, and exact CORS_ORIGIN configuration

Local verification

  • 81/81 tests
  • typecheck / lint / build green

@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying minepanel-pwa with  Cloudflare Pages  Cloudflare Pages

Latest commit: 2862c4d
Status: ✅  Deploy successful!
Preview URL: https://9c21314f.minepanel-pwa.pages.dev
Branch Preview URL: https://phase-pwa-catchup.minepanel-pwa.pages.dev

View logs

@Okazakee
Okazakee merged commit 54df4ac into master Aug 26, 2026
2 checks passed
@Okazakee
Okazakee deleted the phase-pwa-catchup branch August 26, 2026 16:28
Okazakee added a commit that referenced this pull request Aug 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant