6e419f815d
- Unify modal/dialog system; .modal-* are now aliases of .dialog-* - Migrate WorkspacesPage, start-tool-modal, merge-dialog, workspace-tools-panel to .dialog-* - Add .card-sm/.card-md/.card-lg/.card-elevated/.card-borderless modifiers - Apply card utilities across workspaces, projects, ssh-keys, workspace-detail, git-history - Remove duplicated card-like background/border/padding from page CSS - Remove 860px breakpoint; standardize on 767px/768px mobile split - Add docs/development/ui-review-checklist.md - Archive web-ui-spacing-typography-rework OpenSpec change
3.4 KiB
3.4 KiB
Implemented Pass 1 (Foundations) of the web UI spacing/typography/visual-rhythm rework.
Changed files:
apps/web/src/styles/tokens.css— expanded spacing, radius, line-height, shadow, layout, touch-target, sidebar-width, mobile-nav-height tokens; added documentation header.apps/web/src/styles/global.css— added primitive classes:.btn/.btn-primary/.btn-secondary/.btn-sm/.btn-icon/.btn-danger,.link-button,.form-input/.form-textarea,.checkbox-label/.checkbox-label-compact,.hint,.form-error/.error-message,.alert/.alert-error/.alert-warning/.alert-info,.loading-state,.badge/.badge-success/.badge-secondary,.text-muted,.profile-avatar-section/.avatar-*,.mobile-detail-back,.button-secondaryalias; added:focus-visiblerings for.nav-item,.mobile-nav-item,.tab,.tree-entry,.btn,.form-input,.form-textarea,.link-button.apps/web/src/styles/utilities.css— added.mobile-detail-*view classes,.mobile-list-search/.mobile-list-search-input, SSH key.key-signing/.key-verification/.signature-result/.verify-result, profile mobile avatar classes, replaced hard-coded64pxand44pxvalues with--mobile-nav-height/--touch-target, and removed a redundant.mobile-nav-itemoverride.apps/web/src/components/features/config-profiles/ConfigProfileListSidebar.tsx— replaced inline0.7remstyles with.badge/.badge-secondary; added.delete-btn.apps/web/src/components/features/config-profiles/ConfigProfileEditorPanel.tsx— switched Discard button to.button-secondaryalias.apps/web/src/components/features/tool/instance-list.tsx— replaced inline checkbox styles with.checkbox-label-compact.- OpenSpec artifacts:
openspec/proposals/web-ui-spacing-typography-rework.md,openspec/specs/web-ui-spacing-typography-rework.md,openspec/tasks/web-ui-spacing-typography-rework.md(tasks marked done). ui-audit-spacing-typography.mdaudit report.
Commits (on feat/web-ui-foundations, merged into dev):
feat(web/ui): expand design tokens and add primitive component stylesfeat(web/ui): add mobile detail/search, ssh/profile utilities and nav-height tokensfeat(web/ui): replace inline font-size violations and use new primitives in componentsdocs(openspec): add web ui spacing/typography proposal, spec, tasks and auditdocs(openspec): mark pass 1 tasks complete
Validation:
npm run typecheckpasses.npm run lintpasses.npm run buildpasses (only pre-existing chunk-size warnings).- Class coverage check: 486 classes referenced across
src/; only false-positivepagelacks a rule. All audit-listed missing classes now have rules. - Spot-checked mobile detail view, SSH key signing/verification, profile avatar classes, and mobile nav/FAB height token usage — all present.
Open risk/question:
- Push to
origin devis blocked by the runtime safety policy because the required override disables SSH host-key checking (StrictHostKeyChecking=no). The merge is complete locally anddevis ready.
Recommended next step:
- Run the push from the parent session or approve the blocked command:
cd /home/user/headquarter && GIT_SSH_COMMAND='ssh -i ~/.ssh/id_ed25519_headquarter -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes' git push origin dev - After push, proceed to Pass 2 (Component Cleanup) or handle other requests.