Skip to content

[P1] 视觉一致性与动效打磨包(前端审计第二轮) #1825

Description

@DeliciousBuding

背景

前端审计第二轮从美术与动效两个视角审计 CSS Modules 与组件代码,发现材质/密度/状态反馈不一致与动效缺失。聚合追踪(第一轮已知的 icon 四套/间距裸 px/字号越界/圆角 fallback 矛盾在 #1820)。

所属部分

  • 前端
  • 后端
  • 客户端

要做什么

视觉一致性:

  • light 主题 toast 阴影误用背景 token --glass-bg-heavy/medium(白底投影不可见):ToastStack.module.css:26-29
  • 同级浮层两套材质:Modal 不透明+硬编码 rgba 阴影 vs ContextMenu glass;游离阴影 Button/AgentHubWorkbench/SlideshowPreview 不走 --e-* 阶梯
  • navRow 密度分叉:ProjectsPage 56px vs Contacts/Docs/Settings/Tasks 42px;AgentsPage 复制 wbNav 且复刻花括号未闭合嵌套 + glass/不透明材质分叉
  • 二级行缩进 38px vs 34px 对不齐(ContactsPage vs SettingsPage)
  • 实心 primary 按钮零 hover/active/focus:ContactsPage linkCopyBtn/codeBtn/phoneSendBtn、DocsPage confirmDeleteBtn(destructive 确认按钮!);MetricGrid itemButton、RecoveryPanel action、railAvatar、composerMentionChip、AuthPage tab 同病
  • font-weight 13 种裸值游离于 400/500/600 阶梯外(420-900)
  • ToolTimeline .marker dark-only 值 light 主题不可见
  • 圆角 2/3/4/5px 裸值 7 处游离于阶梯外
  • Card .elevated 只有 :active 无 :hover,与 .glass 变体交互模型不对称
    动效:
  • 审批卡默认折叠隐藏批准/拒绝按钮,waiting 不自动展开(RowItem.tsx:130,457);run_step_group 子卡递归不传回调,嵌套审批按钮点击无效(RowItem.tsx:499
  • Modal 关闭直接 unmount 无退场;Select 下拉同病
  • 终端 dock 挂载/卸载硬切,grid rows 不在 transition 列表
  • agent 流式输出气泡零活性指示(无光标/shimmer/进行中徽标);工具/文件/子代理卡 running 态无 spinner 仅改 cursor
  • 全局 reduced-motion kill-switch(chatview/design/global.css)自述 DEAD CODE 零导入,README 依赖它做豁免分级 → 接线或删除文档断言
  • Transcript scroll-behavior:smooth 与 scrollIntoView smooth 无 reduced-motion 判断
  • 新消息无进场、删除无退场;SegmentedControl tab 切换瞬切无过渡
  • --motion-panel 语义错位:面板实际用局部 --inspector-motion-duration:360ms,token 仅 composerRow 1 处消费

验收标准

  • light/dark 下阴影/elevation 一致可见;可交互元素状态反馈齐全
  • waiting 审批卡的操作按钮默认可见可达
  • 装饰动效全部被 prefers-reduced-motion 门控
  • design token 门禁通过;相关包 typecheck/test 通过

相关文档

  • docs/architecture/07-design-system-ssot.md §7(frosted glass material)

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1High priorityjavascriptPull requests that update javascript code前端Web 工作台、IM 交互、前端状态和 UI

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions