feat(web): Redesign the setup page with the usage dashboard style - #117
Merged
Merged
Conversation
Replace the raw JSON proposal dump with a readable preview (status banner, one row per change, validation pills, collapsed raw response), adopt the shared brand and top bar, default every role to Keep current, and pass the real page table into the setup nav.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Summary
The
/setuppage ofcodedeck uiwas hard to read. "Preview changes" dumped the whole API envelope into a<pre>, including the full proposed config and the inert legacyprofilesblock, and the "Current" lines printedJSON.stringifyoutput. This restyles the page with the brand from the usage redesign (#115) and replaces the dump with a readable preview.BRAND_CSS, the logo favicon and the shared top bar, with Setup marked active. Cards, pills, buttons and inputs follow the usage page (black surfaces,#0070f3primary, mono model ids). No native control renders light.balanced) or "custom" with its fields in words. Sandbox shows the literal value (workspace-write), autocompact shows on/off.harness:modeland effort. Effort stays hidden for opencode.resultado("Preview only, nothing written", "Saved", unchanged, error), one row per change (reviewer · effort low → high, with added/removed marked), validation pills, and the raw response inside a collapsed<details>. The full config and legacyprofilesare no longer printed by default. The preview re-renders only when the response changes, so an open raw block stays open while you edit.ui.tsbuilds the setup routes once and shares one page list, so/setuplinks Home/Review/Setup/Usage and the home page still lists only Review/Setup/Usage. The standalonecodedeck setupserver shows only Setup, so it never links to pages it does not serve.Unchanged:
buildSetupSelection, the controller API, element ids, the off-catalog confirm, the 403 expired message and the/api/setup/*shapes. The envelope's Portuguese keys stay as they are becausecodedeck setupalso prints them.Spec, tasks and validation:
.specs/features/web-setup-redesign/.Testing
npx vitest run tests/setup-page.test.ts tests/setup-web.test.ts tests/web-cli.test.ts: 3 files, 43 tests passed.npx vitest run tests/usage-page.test.ts tests/usage-web.test.ts tests/web-brand.test.ts tests/web-pages.test.ts tests/web-server.test.ts: 5 files, 67 tests passed.npx tsc --noEmit -p .andnpm run buildpass.profilesblock: no console errors. All roles start in Keep current. Switching only the reviewer to efforthighgives exactly one change rowreviewer · effort low → high. The raw response stays open while typing. At 390px,scrollWidthis 390 and cards stack in one column.