Repository navigation
Conversation
- 面板改用 CINDY 主界面卡片面(亮 #FDFDF8 / 暗 #1F1F1F,深色按用户选的方案 A); 输入框、方式行、返回钮、协议弹窗次级钮与单选底改用墨水填充(黑 5% / 白 6%), 描边统一为墨水线(黑 8% / 白 10%),聚焦描边与重发链接改用墨水正文档。 - 主按钮、第三方圆钮、「同意」钮与单选选中改用主界面反相 CTA (#3C3F43 / #FCFCFC,#EEEEEE / #151515),不再另加描边。 - hover / pressed:填充控件叠同色墨水加深一档;反相按钮叠黑(亮 20% / 40%, 暗 5% / 10%);Apple 圆钮新增 login-overlay-apple-* 两个 token,避免黑圆叠黑无反馈。 - 禁用主按钮改为墨水填充 + 占位档文字,去掉白 70% 叠层与文字 80% 透明度。 - 浏览器登录回调页的页面底、卡片、描边与 CTA 同步;CTA 叠层改挂 background-image, 不再压暗文字。 - loginInkLadder.test.ts 新增 30 组登录 token ↔ 主界面角色同值断言,回调页 CSS 变量同理。 - DESIGN.md §16 改写现行规则,关闭「叠层仍为旧值」的已知缺口;决策日志补记。 - Mobile 登录皮不在本次范围。 Signed-off-by: kirozeng <kirozeng@gmail.com>
注册 pnpm ui:check --page login-skin:用真实 LoginControls 组件渲染邮箱登录、验证码、选择登录方式、SSO 候选层、加载环与协议弹窗六个场景,亮 / 深两色;check 里用真实鼠标悬停、按住主按钮、第三方圆钮、Apple 圆钮、返回钮、重发链接、方式行与协议弹窗按钮并截图。配合 --compare 可直接出改前 / 改后对照。 Signed-off-by: kirozeng <kirozeng@gmail.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
[Medium impact] The changes reach Desktop’s login and account setup screens, splash screen, and browser login callback. 可以合并;建议补齐回调按钮交互颜色的同步测试。 Findings
Fix with agent prompt### Issue 1
apps/desktop/src/renderer/themes/__tests__/loginInkLadder.test.ts:100-105
新增的 `CALLBACK_VARS` 没有比较 `--cta-hover` 和 `--cta-active`。这两个值仍在 `oauthResultPage.ts` 中手写,本次也修改了亮色取值。以后只改登录按钮的叠层,测试仍会通过,回调页却会保留旧颜色。
建议增加断言,将浅色、强制深色和系统深色三段规则中的这两个值,分别与 `login-overlay-button-hover`、`login-overlay-button-pressed` 比较。这是一项非阻塞的测试补充。
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.
|
- 禁用主按钮改为墨水填充 + 占位字后,login-disabled-button-overlay 恒为透明却仍在叠层:删除该 token 与组件里的叠层类,颜色注册总数 570 → 569。 - 第三方圆钮的 hover / pressed 类名只把颜色做二选一,不再整串重复。 - LoginControls 顶部注释改为现行口径(叠层全部走 --login-overlay-*,内容在叠层之上)。 - DESIGN.md §16:更正「手机与桌面登录色同名同值」「两端同 token 同值」等已不成立的说法,验收入口改为 pnpm ui:check --page login-skin;cindy-design-system.md 版本记录、决策日志、token 决策表同步。 Signed-off-by: kirozeng <kirozeng@gmail.com>
DESIGN.md §16.1 的登录色值表自 DS-8 起由 packages/design-tokens 生成,治理合同 §11 处置表仍写「人工维护」,与同表上一行 §10 的写法不一致。 Signed-off-by: kirozeng <kirozeng@gmail.com>
oauthResultPage 的 --cta-hover / --cta-active 是登录主按钮叠层的内联副本,此前只比较了颜色角色没比较叠层。三段规则(浅色、强制深色、系统深色)分别与 login-overlay-button-hover / -pressed 比较;临时把亮色按下改回 30% 验证会红。 Signed-off-by: kirozeng <kirozeng@gmail.com>
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 54d7a95ce7
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| registerColor('login-primary-button-bg', GENERATED_DEFAULTS["login-primary-button-bg"], 'Login — 主按钮/第三方圆钮底(同主界面反相 CTA accent-cta-bg-pure:#3C3F43 / #EEEEEE;社交圆图标保品牌色)'); | ||
| registerColor('login-primary-button-border', GENERATED_DEFAULTS["login-primary-button-border"], 'Login — 主按钮/圆钮描边(与底同色,同主界面 CTA 不另描边)'); | ||
| registerColor('login-primary-button-text', GENERATED_DEFAULTS["login-primary-button-text"], 'Login — 主按钮文字(同主界面 accent-pure-cta-fg:#FCFCFC / #151515)'); | ||
| registerColor('login-disabled-button-bg', GENERATED_DEFAULTS["login-disabled-button-bg"], 'Login — disabled 主按钮底(墨水填充 黑 5% / 白 6%,与输入框同档)'); |
There was a problem hiding this comment.
这里在改写禁用态注册项时同时从 DTCG、bindings 和 registerColor 删除了 login-disabled-button-overlay,但父版本已将该 ID 对外注册,旧版“导出当前主题”也会把它写入本地主题;升级后 exportThemeColors 只遍历现有 registry,因此该键会从再次导出的主题中消失且默认值无法再解析。design-governance.md §4 明确要求旧 Token ID 不得删除或改名,即使组件已不再消费,也应保留为 deprecated/retained 兼容项。
AGENTS.md reference: AGENTS.md:L97-L100
Useful? React with 👍 / 👎.
这次改了什么
摘要
登录页的文字已经在 #6922 并入了主界面的墨水阶梯,但面板、输入框、按钮、描边和悬停 / 按下效果还是登录页自己的一套「墨黑–米白反色」实色,和主界面不是一个口径。深色下尤其明显:输入框比面板还暗,禁用按钮是一块亮灰,比可用按钮还显眼。
这个 PR 把这些也换成主界面 Cindy 皮肤的对应颜色。
login-*仍是独立的 token 族,只跟随亮 / 深两种模式,不受用户扩展主题影响;变的只是取值。方案先出了亮 / 深两套对比稿,由设计负责人确认后实施(深色面板在#1F1F1F与#272727两个候选里选了#1F1F1F)。变更类型
feat新功能fix缺陷修复refactor/perf重构或性能优化docs/test/chore文档、测试或工程维护范围
DESIGN.md §16.5登记的「叠层仍为旧值」缺口由本 PR 关闭)surface-elevated(亮#FDFDF8/ 深#1F1F1F)。surface-chip(黑 5% / 白 6%)。border-default(黑 8% / 白 10%);聚焦 / 已填描边和重发链接用正文档,链接 hover 说明档、pressed 强调档。#3C3F43底#FCFCFC字 /#EEEEEE底#151515字),去掉原来的描边。#E2E2E2,取值不变)。login-overlay-apple-hover/-pressed两个 token。它的底色由 Apple 规范决定(亮黑 / 深白),亮色黑圆叠黑没有反馈。login-disabled-button-overlay随之无用,已删除(第三个提交)。oauthResultPage.ts,内联常量):页面底、卡片、描边、CTA 同步;CTA 叠层改挂background-image,叠黑时不再压暗按钮文字。loginInkLadder.test.ts新增 30 组「登录 token = 主界面对应角色」逐值断言,回调页 6 个 CSS 变量同理。改主界面颜色而登录页没跟上会直接报错。pnpm ui:check --page login-skin(第二个提交):真实组件,六个场景,用真实鼠标悬停 / 按住截图,以后改登录页可直接--compare出改前 / 改后。DESIGN.md §16改写现行规则,删除已被取代的 2026-07-24 Figma 状态矩阵,更正「手机与桌面登录色同名同值」等已不成立的说法;cindy-design-system.md版本记录、决策日志、token 决策表、设计台账同步。apps/mobile,另行收拢);服务端那份浏览器回调页模板需要从本仓重新导出;尺寸、布局、文案、品牌红、错误红、Apple 圆钮底色、协议弹窗遮罩均不变。#3C3F43、禁用钮变浅);深色变化明显(面板变暗到#1F1F1F,控件改为比面板亮一档,禁用钮不再是亮灰)。login-*42 个改值、新增 2 个(login-overlay-apple-hover/-pressed)、删除 1 个已无作用的login-disabled-button-overlay(login-*受主题导入保护,用户主题不会引用它);颜色注册总数 568 → 569,两处计数测试相应更新。UI 变化
截图来源:单页验证
pnpm ui:check --page login-skin --case all --theme all --compare,macOS · Electron 42.11.12(Chromium 148,与 Cindy 同一渲染内核)。真实组件与主题,场景数据,不是登录账号下的完整 Cindy。改前 =0694ed7e00(当前 main),改后 = 本分支(截图时为5acb44cd10;第三个提交只删除透明叠层与改文档,渲染不变,已重跑ui:check12/12 通过)。12/12 个场景通过。圆钮里的 A / G / 楼宇是占位字形,不是真实社交图标资产。亮色 · 整屏
亮色 · 悬停 / 按下 / 聚焦(真实鼠标操作)
深色 · 整屏
深色 · 悬停 / 按下 / 聚焦(真实鼠标操作)
ui:check 原始总览图
DESIGN.md §16.1(本 PR 改写):登录页面板 / 控件 / 描边 / 主按钮取 CINDY 主界面对应角色,仍为独立login-*token、不随扩展主题。DESIGN.md §16.5第 1 条与「disabled 态」(本 PR 改写):hover / pressed 叠层取值、Apple 圆钮例外、禁用态写法;叠层挂在内容之下。DESIGN.md §15.16与token-decision-table.md §9.2–§9.4:面阶梯、墨水交互态(5% / 8% / 10% / 13%、边框 8% / 10%)与文字档的取值来源。DESIGN.md §10「Light / Dark 双模式交付门槛」:两模式都已实现,并在单页验证里亮 / 深各截一遍。design-governance.md §7:本 PR 属于改设计数值(含新增 2 个 token),设计批准见上方摘要。怎么验证的
自动验证
测试价值(新增 / 改写的测试):
loginInkLadder.test.ts:新增「登录面板 / 控件 / 主按钮 = 主界面墨水口径」30 组 × 亮 / 深断言,回调页 CSS 变量从 3 个扩到 9 个。最小失败输入:任一侧单独改值(例如只改cindy-dark的surface-elevated)即红。单独运行 99 项、约 0.3s。desktop-color-defaults.json(冻结快照)、production.test.ts/generatedEffortInitialization.test.ts的计数 568 → 569:按治理合同显式更新独立预期,不是放宽断言。oauthResultPage.test.ts:页面底与卡片色断言换成新值。scripts/fixtures/login-skin/:新增单页验证场景,不进单测,ui:check运行约 12s。手工验证
逐张看过上面 4 张对照图(亮 / 深 × 整屏 / 状态):改前一侧与 main 现状一致,改后一侧的面板、控件、描边、主按钮、禁用态与各 hover / pressed 符合 §16.1 / §16.5;亮色主按钮按下(叠黑 40%)明显深于悬停(20%)。
未执行的验证
风险
风险分类
login-*42 个改值、2 个新增、1 个删除),用户可见的视觉变化影响与回滚
login-*受主题导入保护,扩展主题与用户自定义主题不受影响;不改任何几何、交互逻辑或数据。packages/design-tokens生成,没有数据迁移。提交前检查
git commit -s,见 DCO)