zlh-grind/Codex/Portal/CURRENT_STATE.md

1.8 KiB

Portal — Current State

Verified against local Portal repo jester/zpack-portal commit 69a4c3c on 2026-04-16, plus local working-tree updates for code-server controls.

This file records what is implemented now.

Readiness / operation UI

  • Portal consumes API-normalized state.
  • Portal understands:
    • ready
    • operationInProgress
    • operationType
    • maintenance
    • operationStartedAt
    • operationMessage
  • targeted 409 and 503 UX messaging exists for operation conflicts and not-ready states.

Backup UI

  • game backup UI exists for:
    • list
    • create
    • restore
    • delete
  • Portal uses API routes, not direct agent calls.
  • backup metadata is normalized and displayed when the API includes metadata fields.

Console / action gating

  • console command transport uses POST JSON through API.
  • previous blanket ready === false gating bug for game actions was fixed.
  • Start is not blocked merely because a stopped server is not ready.
  • backup actions are not blocked purely by ready === false; backend validity decides.

Billing / auth / onboarding

  • billing UI alignment exists with the newer billing state model.
  • forgot/reset password flow exists.
  • first-login onboarding flow exists.

Hosted IDE

  • console and server-list "Open IDE" actions request /api/dev/{serverId}/ide-token.
  • Portal opens the hosted URL returned by the API, falling back to the configured API base for relative URLs.
  • DEV server console and server-list rows show code-server start, restart, and stop controls directly under the Open IDE button.
  • code-server service actions call /api/dev/{serverId}/codeserver/start, /api/dev/{serverId}/codeserver/restart, and /api/dev/{serverId}/codeserver/stop.

Dashboard / IA

  • spotlight server card/dashboard refresh landed.