Update Portal current state after mobile and server flow fixes
This commit is contained in:
parent
c59973a97c
commit
b552879076
@ -1,6 +1,6 @@
|
|||||||
# Portal — Current State
|
# Portal - Current State
|
||||||
|
|
||||||
Verified against the local Portal repo after the dashboard/nav cleanup pass, fresh API and Agent repo review, server status/host lifecycle/IDE UX pass, and the public marketing/SEO refresh.
|
Verified against the local Portal repo after the dashboard/nav cleanup pass, fresh API and Agent repo review, server status/host lifecycle/IDE UX pass, public marketing/SEO refresh, mobile responsiveness pass, and server create/delete/status follow-up fixes.
|
||||||
|
|
||||||
This file records what is implemented now.
|
This file records what is implemented now.
|
||||||
|
|
||||||
@ -53,14 +53,11 @@ This file records what is implemented now.
|
|||||||
- Build and lint reportedly pass after the marketing/SEO changes with the same existing unrelated warnings.
|
- Build and lint reportedly pass after the marketing/SEO changes with the same existing unrelated warnings.
|
||||||
|
|
||||||
## Current mobile status
|
## Current mobile status
|
||||||
- The public and dashboard surfaces are not yet considered mobile-optimized.
|
- A targeted mobile responsiveness pass has been applied across public marketing, SEO landing pages, auth pages, server list, server create, and basic console/file/backup surfaces.
|
||||||
- Mobile launch pass should focus on usability rather than redesign:
|
- Public nav now uses a working mobile menu and hides the desktop nav until the larger breakpoint.
|
||||||
- no horizontal scroll at common mobile widths
|
- CTA groups, pricing cards, auth forms, server cards, and dashboard shell spacing have been adjusted with responsive Tailwind utilities.
|
||||||
- CTA buttons stack cleanly
|
- Complex console/file/backup panels are considered basic-mobile-usable rather than full mobile-native experiences.
|
||||||
- pricing cards stack cleanly
|
- Remaining mobile work should be validation/polish only unless new breakage is observed.
|
||||||
- auth forms remain readable
|
|
||||||
- dashboard server cards do not clip actions/status
|
|
||||||
- console/file/backup panels are usable enough or clearly limited on mobile
|
|
||||||
|
|
||||||
## Readiness / operation UI
|
## Readiness / operation UI
|
||||||
- Portal consumes API-normalized state.
|
- Portal consumes API-normalized state.
|
||||||
@ -77,7 +74,16 @@ This file records what is implemented now.
|
|||||||
- game server readiness and dev container readiness are separated in the server list so DEV cards use host/agent/IDE state instead of game `connectable` semantics.
|
- game server readiness and dev container readiness are separated in the server list so DEV cards use host/agent/IDE state instead of game `connectable` semantics.
|
||||||
- host/container lifecycle status is surfaced from the LXC host layer, including `Online`, `Offline`, `Starting`, `Stopping`, and `Restarting`, plus active host-operation polling.
|
- host/container lifecycle status is surfaced from the LXC host layer, including `Online`, `Offline`, `Starting`, `Stopping`, and `Restarting`, plus active host-operation polling.
|
||||||
- server list refresh waits for per-server status enrichment before committing the merged state, preventing transient IDE/readiness badge flips during polling or page remount.
|
- server list refresh waits for per-server status enrichment before committing the merged state, preventing transient IDE/readiness badge flips during polling or page remount.
|
||||||
- server creation redirects back to `/servers` after the create response and tracks setup progress there with user-facing steps such as host creation, install/runtime setup, network/dev-tool finalization, and ready.
|
- server creation now records a pending setup marker and returns the user to `/servers` immediately after submit while the create request completes in the background.
|
||||||
|
- setup progress can be matched by pending name/type before the API returns a VMID, then by VMID once creation finishes.
|
||||||
|
- setup-step labels are state-aware; stopping or stopped hosts no longer appear as `installing`/`creating` simply because the host is offline.
|
||||||
|
- the previous maximum-update-depth loop in server-list creation progress hydration has been fixed by removing state values that were being changed from the polling effect dependency path.
|
||||||
|
|
||||||
|
## Metrics UI
|
||||||
|
- server console metrics continue to poll the API metrics summary route for both DEV and GAME servers.
|
||||||
|
- Portal normalizes multiple CPU, memory, disk, and network field shapes so API casing/name drift does not leave CPU or network stuck at zero.
|
||||||
|
- metrics polling sends no-cache headers and a cache-busting query value to avoid stale summary responses.
|
||||||
|
- if CPU/network still do not move for running servers, the remaining likely cause is API/agent metrics collection or rate calculation rather than Portal rendering.
|
||||||
|
|
||||||
## Backup UI
|
## Backup UI
|
||||||
- game backup UI exists for:
|
- game backup UI exists for:
|
||||||
@ -114,6 +120,9 @@ This file records what is implemented now.
|
|||||||
## API client layer
|
## API client layer
|
||||||
- Portal uses API-mediated transport rather than direct agent calls.
|
- Portal uses API-mediated transport rather than direct agent calls.
|
||||||
- the old Portal-internal `/api/agent/{serverId}/{action}` bridge has been removed from the frontend repo.
|
- the old Portal-internal `/api/agent/{serverId}/{action}` bridge has been removed from the frontend repo.
|
||||||
|
- server deletion has been migrated from `DELETE /api/containers/{vmid}` to `DELETE /api/servers/{id}` through the normal user JWT API client.
|
||||||
|
- Portal does not add or expose `INTERNAL_API_TOKEN` in browser code.
|
||||||
|
- delete UX maps API responses explicitly: `202` as already in progress, `401` as login required, `404` as not owned/missing, `409` as `Stop host before deleting`, and `500` as teardown failure.
|
||||||
- Project cleanup has reportedly removed dead weight around unused wrappers/dependencies, but API-client/status-polling consolidation is not yet considered fully complete.
|
- Project cleanup has reportedly removed dead weight around unused wrappers/dependencies, but API-client/status-polling consolidation is not yet considered fully complete.
|
||||||
|
|
||||||
## Dashboard / IA
|
## Dashboard / IA
|
||||||
@ -126,4 +135,4 @@ This file records what is implemented now.
|
|||||||
## Still true
|
## Still true
|
||||||
- Portal should track API auth / JWT behavior closely because API-side token hardening can require Portal compatibility verification.
|
- Portal should track API auth / JWT behavior closely because API-side token hardening can require Portal compatibility verification.
|
||||||
- Portal cleanup should remain behavior-preserving; build/lint green status is part of the current baseline.
|
- Portal cleanup should remain behavior-preserving; build/lint green status is part of the current baseline.
|
||||||
- Mobile responsiveness is still an open Portal validation/polish item.
|
- Mobile responsiveness is no longer a from-zero open item, but it still needs periodic device/browser validation as UI surfaces change.
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user