fix(desktop): 诊断页与会话视图硬编码颜色改用语义 token - #3686
Conversation
|
| Filename | Overview |
|---|---|
| apps/desktop/src/renderer/features/maker-experimental/MakerExperimentalView.tsx | 大部分硬编码颜色已正确收敛,但事件标题将受限的 warning-accent 用作 11px 正文,在 Light 模式下对比度不足。 |
| apps/desktop/src/renderer/features/cc-agent/CCAgentSessionView.tsx | handoff pill 与容量环均改用已注册且适合对应 CSS/SVG 用途的主题 token。 |
| apps/desktop/src/renderer/tests/makerExperimentalThemeContract.test.ts | 新增诊断页裸色、token 注册和双模式槽位守卫;当前变更覆盖有效。 |
| apps/desktop/src/renderer/tests/ccAgentSessionViewThemeContract.test.ts | 新增 handoff pill 与容量环 token 的定向回归守卫及双模式检查。 |
| docs/design-rules/DESIGN.md | 移除已完成的 MakerExperimentalView 延后清理示例。 |
| docs/design-rules/design-decision-log.md | 将硬编码颜色清理登记为已解决,但实现中的 warning-accent 消费者尚未符合现有受限用途规则。 |
Prompt To Fix All With AI
### Issue 1
apps/desktop/src/renderer/features/maker-experimental/MakerExperimentalView.tsx:332
**事件标题颜色对比度不足**
Light 主题下,事件流在白色 `surface-elevated` 背景上以 11px 字号使用固定的 `warning-accent` 橙色,约 3.2:1 的对比度低于普通小号文本所需的 4.5:1,导致事件编号和类型难以辨认;同时该 token 按设计规范仅限已登记的运行或警告状态表面,普通诊断事件标题不在其适用范围内。
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.Reviews (1): Last reviewed commit: "fix(desktop): CCAgentSessionView handoff..." | Re-trigger Greptile
|
@Michael-Yu2978 👋 这个 PR 还有 1 条 review conversation 没 resolve(apps/desktop/src/renderer/features/maker-experimental/MakerExperimentalView.tsx),auto-review 因此暂时跳过、没法继续审查 / 合并。 如果你已经按评论改完或回应了,请到对应 thread 上点 Resolve conversation;全部 resolve 后,下一轮 auto-review 会自动重新审查这个 PR。 |
|
命中 UI 路径(CCAgentSessionView / MakerExperimentalView)但 description 未附界面效果证据——建议补充改动后效果:截图/录屏,或改动后界面的 HTML 页面,便于确认界面符合 DESIGN.md 设计规范。 |
|
@Michael-Yu2978 这条改动会改变诊断页和会话视图的实际配色,并更新了设计规则文档,先走维护者确认,暂不合并。 请维护者在本 PR 上 Approve;如果要改,请 Request Changes,作者改完后再 Approve。讨论 issue:#3720 |
bf4a85f to
ccaf711
Compare
|
@Michael-Yu2978 👋 这个 PR 目前与 请在本地 merge 最新的 |
Signed-off-by: Michael-Yu2978 <ymt2978@163.com>
Signed-off-by: Michael-Yu2978 <ymt2978@163.com>
Signed-off-by: Michael-Yu2978 <ymt2978@163.com>
Signed-off-by: Michael-Yu2978 <ymt2978@163.com>
ccaf711 to
47c6b85
Compare
|
@Michael-Yu2978 👋 这个 PR 目前与 请在本地 merge 最新的 |
…pr2-rebase Signed-off-by: Michael-Yu2978 <ymt2978@163.com> # Conflicts: # docs/design-rules/design-inventory.md
MagicLizi
left a comment
There was a problem hiding this comment.
独立审查通过:诊断页与会话视图硬编码色已换成已注册语义 token,规则文档只勾掉 backlog。没有 P0/P1。
|
主干侧代合并了。冲突只在生成的 |
这次改了什么
摘要
合并原 5-PR 提案中的 PR2 + PR3 为同一个「renderer 硬编码颜色清理」。
MakerExperimentalView诊断页整页裸写暗色 hex(生产按 URL 可达,Light 主题下不可读);CCAgentSessionView的 handoff pill 文字与 context 环阈值色也裸写 hex,与 token 体系脱钩。两处全部收口到已注册的语义 token,颜色随 Light / Dark 及内置主题自动取色,满足双模式交付门槛;纯样式替换,无逻辑与行为变化。另按自动 review(Greptile)提出的 P1 意见,将诊断事件流标题从
warning-accent调整为text-secondary:warning-accent按设计规范仅限已登记的运行/警告状态表面,普通诊断事件标题不在其适用范围内,且橙色在白色surface-elevated上对比度不足;修复已包含在本 PR 提交内。变更类型
feat新功能fix缺陷修复refactor/perf重构或性能优化docs/test/chore文档、测试或工程维护范围
main的 merge commit,head9a4204594,基于上游main@7f03b7436):MakerExperimentalView约 20 处裸 hex → 语义 token(text-primary/secondary/tertiary、surface-elevated、border-default、accent-cta-bg/accent-pure-cta-fg、error-flat、warning-accent、surface-chip/surface-chip-alt)MakerExperimentalView诊断事件流标题 →text-secondary(修复自动 review P1 对比度问题)CCAgentSessionViewhandoff pill 两处text-[#595959]→text-muted-foreground;context 环阈值#EF4444/#F59E0B→var(--error-flat)/var(--warning-fg)makerExperimentalThemeContract.test.ts、ccAgentSessionViewThemeContract.test.ts(锁「零新增裸色 + 消费 token 已注册 + light/dark 双槽位」)design-decision-log.mdbacklog 条目置为已解决并登记合并范围(含修正未被源消费的 token 清单);DESIGN.md§13 移除已失效示例;pnpm design:inventory重新生成design-inventory.md台账(冲突期间随上游台账演进再次生成)CCAgentSessionView中<strong>被 preflight 渲染为 700 的已登记缺口;PR4(effortMapping死代码)、PR5(Windows Pi 测试)UI 变化
error-flat/warning-fg语义豁免色,跨主题同值怎么验证的
自动验证
手工验证
themes/colors.ts实际 token 取值渲染两视图的 Light / Dark 预览并目检,对比度与层级正常(截图存于本地,未上传)。该预览为 token 精确渲染,不等同于应用内实机。未执行的验证
风险
风险分类
影响与回滚
MakerExperimentalView诊断页、CCAgentSessionViewhandoff pill + context 环),纯样式取值替换,无逻辑变化。main的全部改动(head9a4204594)即可;旧值为暗色系,Dark 下外观近似,Light 下按旧值渲染,无数据或兼容风险。不涉及 SQLite / system prompt / 协议 / 原生层,无需特殊降级流程。提交前检查
git commit -s,见 DCO)design-decision-log.md、DESIGN.md、design-inventory.md)