Skip to content

Bring VPS performance and root disk editing into one workspace - #505

Merged
Kerrycek merged 2 commits into
mainfrom
codex/vps-resource-workspace
Sep 24, 2026
Merged

Kerrycek merged 2 commits into
mainfrom
codex/vps-resource-workspace

Conversation

@Kerrycek

Copy link
Copy Markdown
Owner

English

The VPS overview's Edit resources link currently opens a long general configuration form, and increasing its root disk requires leaving that form. This PR puts VPS performance and root dataset capacity together at the top of the page.

  • CPU, RAM, swap and the admin CPU limit are grouped beside an inline SSD/root-dataset editor with current capacity and used space. The layout stacks on mobile and has Czech/English copy.
  • Entering from Edit resources collapses additional configuration and hides the empty change review. Other configuration links keep additional settings expanded. Existing owner context is preserved.
  • VPS and dataset retain separate confirmations and saves: they are separate API operations. Saving either preserves the other draft. Disk resize uses dataset.update with MiB refquota and only the explicitly selected admin_override; the root editor is admin-only.
  • Disk saves recheck used space, lifecycle and active dataset tasks before writing. Failed requests preserve drafts; a success response without an action-state ID keeps a durable lock instead of allowing a blind retry. Accepted operations appear in Tasks.

Dependency: stacked on #503 (codex/resource-override-controls) to retain its allocation override controls and keep this review scoped. Review/merge #503 first, then retarget this PR to main. No backend changes, shared deployment or real-resource mutations were performed.

Verification

  • Typecheck, lint, i18n, mutation/overlay audits and production build: PASS.
  • Configuration/storage model and primitive unit tests: 18 passed.
  • Desktop + mobile Playwright: 30/30 workspace/resource checks; 82 related lifecycle/storage scenarios passed in the broader run; overview/permission matrix additionally checked. The new workspace cases participate in PR smoke CI. Tests verify both save orders, exact payloads, allocation failure/override retry, stale usage/busy data, read failure, missing action-state locks across reload, and admin/member scope.
  • Czech/English desktop and mobile screenshots reviewed using synthetic fixtures. These are mocked API browser tests, not live VM evidence.
  • Structural audit still fails on the same inherited baseline violations, reproduced on Expose admin resource overrides beside VPS and dataset allocation controls #503. This change introduces no additional over-budget file; the configuration page shrinks from 602 to 600 lines. The audit is not bypassed or rebased.

Risk: the two saves are deliberately independent. A successful disk operation does not imply a successful VPS operation; the page and confirmation state this explicitly. Root capacity changes still require the API's normal authorization/allocation checks, unless an admin explicitly enables the existing override.

Česky

Odkaz Upravit zdroje dosud otevřel dlouhou obecnou konfiguraci a kvůli změně SSD bylo nutné přejít jinam. Nahoře jsou nyní vedle sebe Výkon VPS a SSD / kořenový disk; na mobilu jsou pod sebou. Disk ukazuje aktuální velikost a využití a lze jej upravit přímo zde. Další konfigurace je při příchodu z přehledu sbalená a prázdná kontrola změn se nezobrazuje.

Každá karta má vlastní potvrzení a uložení, protože API provádí dvě samostatné operace. Uložení jedné zachová rozpracovanou druhou. Před změnou disku se znovu ověří využité místo, stav datasetu a jeho aktivní úlohy. Při chybě formulář zůstane vyplněný; nejasná odpověď bez identifikátoru úlohy blokuje slepé opakování. Přepsání limitů je výslovné a pouze pro administrátora.

PR navazuje na #503; nejprve posoudit/sloučit #503, poté přepnout toto PR na main. Ověření: 18 unit testů, typecheck/lint/i18n/build a audity mutací/dialogů prošly. Cílená sada prostředků prošla 30/30 a širší běh ověřil dalších 82 scénářů životního cyklu a úložiště. Navíc je prověřena matice přehledu a oprávnění. Screenshoty a browser testy používají syntetická data. Strukturální audit má stejné dřívější problémy jako výchozí větev, bez nového překročení. Bez nasazení a bez změn skutečných VPS/datasetů.

Open resource editing with CPU, memory, swap and the root dataset at the
front of the page, and collapse additional configuration on that entry.
Save the VPS and dataset independently so one operation cannot discard
the other draft or imply an atomic update across two API resources.

Preserve explicit admin overrides, validate the disk against fresh used
space and active tasks, and track uncertain updates with durable locks.
Cover independent saves, failures, permissions and responsive cs/en views.
The resource editor now selects its focused view with section=resources.
Keep the overview assertion checking both that entry and the owner filter.
@Kerrycek
Kerrycek changed the base branch from codex/resource-override-controls to main September 24, 2026 23:38
@Kerrycek
Kerrycek merged commit fd1603c into main Sep 24, 2026
2 checks passed
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