210 lines
23 KiB
Markdown
210 lines
23 KiB
Markdown
# Ygent ↔ WorkBuddy 原生渲染精确差异清单(2026-10-08)
|
||
|
||
> 阶段收尾与当前实现状态见[进度汇总](ygent-chat-stage-summary-2026-10-08.md)。下文40项为历史采集基线,不是当前未完成数量;后续通用样式、字体、完整时间线/锚点折叠及动作摘要修复以动态记录为准。
|
||
|
||
> 对标范围已明确包含真实流式交互。动态P0、必测事件序列和证据分级见 [动态交互对标清单](ygent-chat-interaction-parity.md)。本文件的历史画面通过不等价于流式通过。
|
||
|
||
> 后续过程修复:真实原生1335×916、DPR1、默认2档下,D11—D13、D16、D18—D20、D28、D31已修复并检查折叠往返;D15的尺寸/位置/颜色及D17文字色已对齐,图标path形状仍需核验。首命令面板dy227.25、752×198.75已匹配,D23通过此状态复测。最终正文仍因缺少reasoning及其包装留白提前48.25px,D25—D26未完成;不能硬补高度。详细结果见动态清单中的“当前已验证的局部交互”。
|
||
|
||
> 后续字体修复:[字体对齐验收](ygent-font-parity.md)。D01—D05、D14、D21—D24、D27、D32—D33涉及的字体/行高/文字行框已处理;此处40项保留为修复前基线,不能把其他层级、间距和操作栏缺失视为已修复。D23面板总高另需随着后续层级调整复测。
|
||
|
||
本轮确认 **40项对话区渲染、结构及折叠差异**,另列 **4项外围差异、5项源码交互缺口、15项待验收场景**。这是已检查范围的清单,不是整个产品缺口总数。仅梳理、采集和定位,本轮没有修改对话区实现。P0优先恢复当前同一对话的形态和交互,P1收敛细节,外围与复杂交互后置。
|
||
|
||
## 采集条件和坐标
|
||
|
||
- 均为真实原生渲染器:WorkBuddy CDP 9223,Ygent Tauri WebView2 CDP 9335。没有模拟IPC或fixture。
|
||
- 同一“处理大文件”对话,锚点为移动项目请求后的最后一个取消回合。YG真实会话5,829条消息。
|
||
- WB原视口1200×762,临时调整YG真实窗口到相同视口;DPR均1、scale均1、字号均默认2档。
|
||
- A:过程收起;B:过程展开,首个运行命令和意图结果展开。等待动画稳定并贴底后采集。没有发送消息、执行工具、读取或展开深度思考正文。
|
||
- `(x,y,w,h)`为页面视口CSS px;`dy`为元素顶部减头像行顶部,用于排除不同历史高度和滚动位置。负y表示在滚动区域上方,不表示CSS错误。
|
||
- A头像行:WB y267.98,YG y322.69;B头像行:WB y-40.02,YG y52.69。两端均贴底;不能把绝对y差直接当作需要修复的margin。
|
||
- 字体通过`CSS.getPlatformFontsForNode`检查实际命中字库,不只读取font-family。数值保留两位小数,0.1px以内取整不单列缺陷。
|
||
- [整理后的几何、样式、字体证据](reference/workbuddy/render-audit-2026-10-08.json)。原始DOM和截图保存在私有目录`C:\Users\Administrator\.ygent\imports\render-audit-20261008`,不入库。
|
||
- 主比较为1200×762;YG1335×916已单独采集,但WB1335同条件比较未完成,不将结论外推到所有尺寸。
|
||
|
||
## 需要纠正的历史判断
|
||
|
||
WB用户气泡外层声明13px,内部Slate实际文字是15px;输入容器声明14px,内层编辑器实际也是15px。此前仅看外层得到的规格不能继续作为验收目标。YG“过程消息”最终级联命中13px,即便某条源码规则已写参照值也不能算通过。
|
||
|
||
## D01—D10:字体、用户气泡和顶栏
|
||
|
||
| ID/优先级 | 具体位置 | WorkBuddy实测 | Ygent实测 | 差异、目标与代码定位 |
|
||
| --- | --- | --- | --- | --- |
|
||
| D01 P0 | 助手中文正文`.cr-markdown p`↔`.md p`;对话标题 | 实际Noto Sans SC,强调使用Bold | 实际Microsoft YaHei,强调使用Bold | 同字号仍有字形/笔画/行框差。先匹配字库和回退;`src/styles/tokens.css:78` |
|
||
| D02 P1 | 头像右侧名称,x393 | Arial Bold,14px/24.5px,宽78.31 | Segoe UI Semibold,14px/24.5px,宽74.67 | 文字短3.64px;头像和10px间距已一致,不能扩大整个头像行;`.assistant-name` |
|
||
| D03 P0 | 命令/结果灰面板英文,x375,内容宽720 | Courier New,中文回退NSimSun | Consolas,中文回退NSimSun | 等宽字库不同导致换行字符不同;`src/styles/chat.css:763`、`:775` |
|
||
| D04 P0 | 最新用户气泡的内部实际文字 | Slate15px/26.25px,内部p15px/26.7px | `.msg.me .txt`13px/19px | 少2px;不能以WB外层13px为参照;`src/styles/chat.css:436` |
|
||
| D05 P0 | 最新用户气泡,右边均x1111 | x755.84、w355.16、h44.59 | x800、w311、h35 | 左边向右缩44.16、高度少9.59;padding8×12、底色/圆角已一致。修内层文字,不写死355.16宽度 |
|
||
| D06 P1 | 左上“处理大文件”,(304,46),h24 | 黑色rgb(0,0,0) | rgb(31,35,40) | 坐标/16px字号/24px行高一致,颜色冷灰;`.chat-title` |
|
||
| D07 P1 | 顶栏五按钮,x1012/1048/1084/1120/1156,y42,32×32 | 黑70% | #5b6472 | 坐标都一致,颜色偏蓝灰;不能再整体平移按钮组 |
|
||
| D08 P1 | 第二个分享按钮,(1048,42) | 弯曲分享箭头 | 从托盘向上导出箭头 | 图形不同,应核对SVG/path;`src/components/ChatView.tsx:464` |
|
||
| D09 P1 | 第四个概览按钮,(1120,42) | 纸张/文档轮廓 | 四块网格 | 外框一致,内部图形不同;`ChatView.tsx:485` |
|
||
| D10 P1 | 对话标题旁的编辑入口 | 有“编辑标题”按钮,默认隐藏 | h1只有文字,无对应按钮 | 侧栏重命名不等价;已确认DOM缺失,hover后坐标待验收 |
|
||
|
||
## 路径标签及思考事件位置补齐(2026-10-08)
|
||
|
||
通用Markdown行内代码组件根据真实路径关联渲染文件/目录标签,其他代码不变。普通会话在自身工作目录下通过IPC只读分类;参照导入保留来源cwd下核实的路径关联。原生YG/WB同一`ygent`标签68.25×20、字号15/行高22.5、padding1px 4px、颜色#1470b4、背景#e9eef2、文件夹图标15×15已匹配;非按名字直接装饰的静态标签。标签键盘/点击接实际opener,未在参照采集中自动打开外部应用。
|
||
|
||
导入旧规则丢弃全部reasoning事件,现只保存存在和位置标记,不提取内部正文;相邻可见消息前通过通用组件呈现“深度思考”。标题15px/26.25px、灰色、包装padding2px 0。此为D25的数据/标题部分补齐,内容展开、真实思考流式阶段及D26上下层间距尚未通过,不能将标题出现等同于reasoning交互完整。
|
||
|
||
普通会话和参照会话共用TurnBlock/ToolCard/Markdown;本次工具摘要跨会话原生样式一致。仍需覆盖普通完成、单/多工具、特殊取消的分组标题、默认折叠和块间距,禁止按参照会话名称/ID加样式补丁。
|
||
|
||
## 失败命令显示规则修正(2026-10-08)
|
||
|
||
用户补充同一“检查目标位置与源目录”失败命令截图后,真实WorkBuddy CDP确认:外层“运行命令”摘要使用14px灰色终端图标,不因失败替换红叉;下方意图行`.cr-tool-head__icon--error`使用14px灰色圆形感叹号。失败数据与视觉位置独立,不能由Ygent自身的红叉规则推断参考行为。Ygent现保留toolError数据,按这一分层显示;终端图标/失败图标/箭头使用当前原生DOM核实的向量路径。
|
||
|
||
长结果面板宽752、高300、padding12px 16px,10px滚动条使文本可用宽710。命令12px/19.2px、输出12px/18px,pre-wrap且word-break:break-all。之前Ygent默认滚动条和overflow-wrap:anywhere导致长命令断行不同,现已修正。输出还遗漏非零Exit Code对应的`执行失败 (退出码: 1)`末行,已恢复。真实Ygent/CDP下同一命令高度95.9375、输出756,与WB一致;完整可见输出文本比较相同。
|
||
|
||
此结果覆盖该失败命令的局部显示,不代表整段完成:截图中的“深度思考”、路径标签及上层布局仍在原有待办中;未伪造推理内容。其他工具类别、运行中/取消/信号终止的图标策略仍须分别验证。此前补验中“失败红叉保留”仅是当时YG状态,以上修正取代该视觉规则。
|
||
|
||
## 取消历史工具样式补验(2026-10-08)
|
||
|
||
此前D20等工具样式修复只限定在`.process-fold`,遗漏了“已取消”展开后的`.turn-history`:同一ToolCard上方仍为2px竖线、4px左缩进、摘要负margin和蓝灰文字,下方已使用无边框的中性灰样式。现将共同规则移至基础`.tool`,移除父容器限定覆盖,历史/过程/实时回合共享基础外观;失败红叉与运行中状态独立保留。
|
||
|
||
真实Ygent WebView2、1335×916下,已核验同一取消回合中的5条历史命令和1条过程命令:边框/左缩进/摘要margin均为0,文字rgba(0,0,0,0.5)、15px/26.25px;逐条展开意图和结果,详情上间距4px,结果面板宽752px、padding12px 16px、左边缘对齐。2条失败命令仍保留红色状态图标。操作后恢复各工具原有展开状态;未发送消息或执行命令。这是Ygent两条渲染路径的一致性补验,未据此新增WorkBuddy失败图标或实时状态验收结论。
|
||
|
||
## D11—D20:回合间距、过程标题和工具层级
|
||
|
||
| ID/优先级 | 具体位置 | WorkBuddy | Ygent | 差异与代码定位 |
|
||
| --- | --- | --- | --- | --- |
|
||
| D11 P0 | 头像行底→取消耗时行顶 | 12px;状态dy36.5 | 16px;状态dy40.5 | 下移4;头像margin12又叠加msg gap4;`.assistant-header`、`.msg` |
|
||
| D12 P0 | 状态行底→首段正文顶 | 12px | 8px | 少4,抵消D11,所以首段dy都74.75;不能只看首段坐标;`.turn-body`与WB文本块margin |
|
||
| D13 P0 | 首段正文底→过程消息顶 | 12px;过程dy140.25 | 8px;过程dy136.25 | 过程标题相对头像提前4;统一gap不能模拟所有局部间距 |
|
||
| D14 P0 | “过程消息”标题 | 15px/26.25px,文字宽60;点击行76×26.25 | 13px/20.8px,文字宽52;点击行80×26.80 | 文字小2px但按钮反而更宽;`src/styles/chat.css:845`、`.mf-label` |
|
||
| D15 P1 | 过程标题右侧箭头 | x423,12×12,黑50% | x419,14×14,#8a93a3 | 左移4、变大2,颜色/线形不同;`.mf-arrow`,连同标题字号/gap/padding修复 |
|
||
| D16 P0 | 过程标题底→运行命令顶(B) | 2px;命令dy168.50 | 8px;命令dy171.05 | 命令相对头像晚2.55;需process-inner局部padding;`.mf-body` |
|
||
| D17 P1 | 运行命令文字、意图和终端图标 | 黑50% | #5b6472 | 整体偏蓝灰;摘要15px/26.25已一致;`.fn`、`.tool-intent`、`.tool-ico.command` |
|
||
| D18 P0 | 意图“切换工作目录后重试移动”左侧 | x359有独立14px终端图标,文字x381 | 文字x381,但本层图标缺失 | 不是第一层运行命令图标能代替;`TurnBlock.tsx:190` |
|
||
| D19 P0 | 工具意图及邻近右箭头 | 独立可点击/折叠;文字宽154,标题主区192,有箭头 | `.tool-intent`普通div,宽730,无箭头/折叠 | WB“过程→运行命令→意图→结果”,YG少一层;需结构和状态共同补齐 |
|
||
| D20 P0 | 展开工具左边x≈359 | 无贯穿意图/面板的竖线 | 旧工具卡border-left仍形成竖线 | 检查`.tool`border-left/padding和`.tool-row`负margin,不能用白色遮盖 |
|
||
|
||
## D21—D31:命令结果、深度思考和回合尾部
|
||
|
||
| ID/优先级 | 具体位置 | WorkBuddy | Ygent | 差异与代码定位 |
|
||
| --- | --- | --- | --- | --- |
|
||
| D21 P0 | 灰面板命令结束→stdout | 独立`__command`与`__output`,块间4px | 一个pre拼接命令/输出 | 缺分块,无法独立设行高;`formatToolResult`、`ToolCard` |
|
||
| D22 P0 | stdout正文,WB(x375,y283.98)(B) | 12px/18px,当前5行高90 | 同命令共用12px/19.2px | 每行多1.2;命令本身19.2已一致,不应全部改18 |
|
||
| D23 P1 | 命令灰面板(B),x359,w752 | h198.75,dy227.25 | h200.69,dy231.80 | 高多1.94,顶部晚4.55;圆角16、padding12×16、内容宽720已对齐,不写死高度 |
|
||
| D24 P1 | bash标签与代码文字 | 黑90% | #1f2328 | 冷灰字色;背景同为#f2f2f2,不再调整背景 |
|
||
| D25 P0 | 结果面板后、最终正文前(B) | reasoning外框h30.25、dy440;标题dy442,15px/26.25 | 整段缺失 | 缺“深度思考”收起行;normalized数据未映射该段,需要数据/时间线联合处理。本轮未读取正文 |
|
||
| D26 P0 | 过程组底→最终正文(B) | 12px,最终正文dy486.25 | 8px,最终正文dy440.48 | 最终正文提前45.77,含D25及过程高度差;不能硬加45.77margin |
|
||
| D27 P0 | “用户已取消” | 15px/20px,内容宽75 | 13px/20.15px,外框拉伸752 | 少2px且渲染类型不同;`chat.css:527`、`TurnBlock.tsx:471` |
|
||
| D28 P0 | 最终正文底→取消提示 | 0px | 8px | YG多统一gap;需取消状态局部规则,不能清零所有回合间距 |
|
||
| D29 P0 | 取消提示下所有产物入口 | x359;B y504.48,129.83×25,15px/25,“查看所有产物(5)” | 无本回合尾部入口 | 顶栏概览不等价;需真实回合产物关联和计数,不硬编码5 |
|
||
| D30 P0 | 所有产物下助手操作栏 | B(359,537.48,547.59,38.25);复制/赞/踩/朗读/重试/分享/更多,消耗/模型/时间 | 助手回合整行缺失;MessageToolbar只用于用户 | 缺整行,不是像素偏移;入口、排列和后台能力分别验收,不伪造消耗/模型数据或放无效按钮 |
|
||
| D31 P1 | 关闭过程再重新展开 | 本轮首命令/意图展开状态保留 | ToolCard卸载后open重置false | 相同点击看见不同内容;本轮往返操作与useState/条件挂载已确认;需状态存放策略 |
|
||
|
||
## D32—D40:输入编辑区、提示和滚动条
|
||
|
||
| ID/优先级 | 具体位置 | WorkBuddy | Ygent | 差异与代码定位 |
|
||
| --- | --- | --- | --- | --- |
|
||
| D32 P0 | 输入实际文字,左上(365,605) | Slate15px/26.25;空p高28.38 | textarea14px/21 | 少1px、行高少5.25;外框64px一致不代表文字一致;`chat.css:1105` |
|
||
| D33 P1 | 输入占位 | 实体span15px/26.25,黑90%×opacity.5 | ::placeholder14px/21,黑40% | 字号见D32;深浅不同;YG问号与@之间多一个空格;Composer placeholder |
|
||
| D34 P1 | 权限项文字及警告图标 | 文字(x429,y687,h20),#b42c3f,13px/20;盾牌感轮廓 | (x430,y688.5,h17),#d5304f,13px/normal;圆圈叹号 | 右移1、下移1.5、行框少3,图形/颜色不同;`Chips.tsx:43` |
|
||
| D35 P1 | 右下模型选择 | 品牌图标+模型名+6×3箭头,文字黑90% | 品牌图标缺失、蓝灰文字、15px caret外框 | 当前Deepseek与gpt-6-luna最高是配置差异,不强改模型;对齐真实模型的图标槽/字体/箭头 |
|
||
| D36 P1 | 模型项左侧圆环,中心约(885.27,697) | 有上下文/用量类指示控件 | spacer空白 | 控件缺失;准确语义/tooltip待验收,不用常驻loading伪装 |
|
||
| D37 P1 | 发送按钮,均(1087,681,32,32) | 白实心纸飞机/上行形状 | 细线向上箭头,路径约8.4×10 | 内部轮廓不一致,外框无需移动;Composer SEND |
|
||
| D38 P1 | 框下免责声明 | 外框(348,726,784,36),12px/20,黑30%,内部padding定位 | (348,736,784,14),12px/14,#8a93a3 | 外框含padding,不能把y差10直接当文本偏移;颜色/行高不同,需对内部基线;`.composer-hint` |
|
||
| D39 P1 | 历史最右滚动条 | 宽6、thumb黑20%、圆角3 | 宽10、thumb蓝灰14%、圆角4 | 粗4且颜色不同;改宽会影响可用宽度和居中,应联动复测正文;`chat.css:373` |
|
||
| D40 P1 | 滚动条上下端小箭头 | 当前截图可见原生小三角,pseudo display inline | 未呈现同样箭头,pseudo display block | 宿主可能影响外观,需匹配可见效果和点击/滚动表现,不机械复制display |
|
||
|
||
## 精确定位:相对回合头像行
|
||
|
||
A过程收起,除头像名称x393外,以下锚点x359。
|
||
|
||
| 锚点 | WB绝对y | YG绝对y | WB dy | YG dy | 说明 |
|
||
| --- | ---: | ---: | ---: | ---: | --- |
|
||
| 头像行 | 267.98 | 322.69 | 0 | 0 | h24.5一致 |
|
||
| 取消耗时 | 304.48 | 363.19 | 36.5 | 40.5 | YG相对晚4 |
|
||
| 首段正文 | 342.73 | 397.44 | 74.75 | 74.75 | 上下间距抵消,不能误判 |
|
||
| 过程消息 | 408.23 | 458.94 | 140.25 | 136.25 | YG提前4 |
|
||
| 最终正文 | 446.48 | 493.73 | 178.5 | 171.05 | YG提前7.45 |
|
||
| 用户已取消 | 472.73 | 527.98 | 204.75 | 205.30 | 近似同起点但字号/前间距不同 |
|
||
| 所有产物 | 504.73 | 缺失 | 236.75 | — | 实际入口缺失 |
|
||
|
||
B过程、首命令、意图结果展开。
|
||
|
||
| 锚点 | x | WB绝对y | YG绝对y | WB dy | YG dy |
|
||
| --- | ---: | ---: | ---: | ---: | ---: |
|
||
| 头像行 | 359 | -40.02 | 52.69 | 0 | 0 |
|
||
| 首段正文 | 359 | 34.73 | 127.44 | 74.75 | 74.75 |
|
||
| 过程消息 | 359 | 100.23 | 188.94 | 140.25 | 136.25 |
|
||
| 运行命令 | 359 | 128.48 | 223.73 | 168.50 | 171.05 |
|
||
| 意图文字 | 381 | 158.73 | 255.98 | 198.75 | 203.30 |
|
||
| 灰面板 | 359 | 187.23 | 284.48 | 227.25 | 231.80 |
|
||
| bash标签 | 375 | 199.23 | 296.48 | 239.25 | 243.80 |
|
||
| 命令文本 | 375 | 222.42 | 319.67 | 262.44 | 266.98 |
|
||
| stdout | 375 | 283.98 | 没有独立块 | 324.00 | — |
|
||
| 深度思考标题 | 359 | 401.98 | 缺失 | 442.00 | — |
|
||
| 最终正文 | 359 | 446.23 | 493.17 | 486.25 | 440.48 |
|
||
| 用户已取消 | 359 | 472.48 | 527.42 | 512.50 | 474.73 |
|
||
| 所有产物 | 359 | 504.48 | 缺失 | 544.50 | — |
|
||
| 助手操作栏 | 359 | 537.48 | 缺失 | 577.50 | — |
|
||
|
||
## 已对齐的基准,不应继续盲调
|
||
|
||
| 元素 | 两端共同值(1200×762) |
|
||
| --- | --- |
|
||
| 主区/历史视口 | 主区x280,w920;滚动视口(280,86,920,506) |
|
||
| 正文列 | x359,w752,右边1111 |
|
||
| 标题/顶栏按钮 | 标题(304,46),16px/24;五按钮位置和32×32尺寸一致 |
|
||
| 头像行 | x359,头像24×24,名称x393,gap10,h24.5 |
|
||
| Markdown默认字号 | 根17.143/30.0002;段落15.0001/26.2502;首段h53.5、最终段h26.25 |
|
||
| 普通inline code | Device or resource busy宽197.69、高18、字号15.0001 |
|
||
| 用户气泡外壳 | #f2f2f2、padding8×12、圆角16且右下直角;实际文字另见D04 |
|
||
| 输入外框 | (348,592,784,134),1px #e6e6e6,圆角24,同一双层阴影 |
|
||
| 编辑宿主/工具栏 | 宿主(349,605,782,64),左右padding16;工具栏(349,669,782,56),padding12 |
|
||
| 发送按钮外框 | (1087,681,32,32),圆形灰底;内部图形未齐 |
|
||
| 命令面板壳层 | w752、内容720、圆角16、#f2f2f2、padding12×16 |
|
||
|
||
## 4项外围壳层差异,另行记录
|
||
|
||
| ID/位置 | 差异 | 范围说明 |
|
||
| --- | --- | --- |
|
||
| X01 顶部 | WB菜单与全局图标,主顶栏(280,30,920,56);YG品牌标题栏,主顶栏(280,46,920,40) | 宿主结构不同,但内部对话标题/按钮坐标一致;不应为复制菜单破坏这些坐标 |
|
||
| X02 左栏x0—280 | WB中性浅灰;YG冷色背景及顶部渐变 | 整窗视觉仍不同;核心对话优先 |
|
||
| X03 当前选中任务 | WB项目ygent下子项,文字约(48,417)、条h31;YG独立任务,文字约(20,240)、条h35 | 同时含层级/导入归属/不同列表数据;不能硬移整个侧栏 |
|
||
| X04 左下y626—744 | WB邀请卡、头像账号;YG设置与收起侧栏 | 外围产品入口;不默认复制平台商业体系 |
|
||
|
||
## 5项源码确认的交互缺口,未发送消息实测
|
||
|
||
| ID/位置 | YG已确认实现 | 与目标的关系 |
|
||
| --- | --- | --- |
|
||
| C01 左下+按钮(361,681,32,32) | Composer.tsx:115仅showToast附件上传M4落地 | 不是可用附件入口,需添加/展示/删除/提交链路 |
|
||
| C02 编辑器@与/ | 普通textarea onChange/Enter,未接候选菜单 | 占位提示承诺的上下文/技能交互未接通;菜单、chip、键盘导航待做 |
|
||
| C03 生成中发送 | Composer.tsx:68 pending直接return,按钮变停止 | 暂无忙时队列UI/编辑删除立即发送;需真实流式测试 |
|
||
| C04 字号设置/快捷键 | 六档滑杆与token表已实现;设置旁暴露Markdown px;未找到对应全局Ctrl+-/Ctrl++/Ctrl+0处理 | token参数一致不等于设置形态/快捷键/持久化/全覆盖一致 |
|
||
| C05 长会话与系统事件 | 当前全量829消息;分页、回退、队列、模型切换/压缩事件未全部接通 | 旧“几十条消息无需虚拟列表”的规模假设失效;两端DOM总高不能直接推出性能结论 |
|
||
|
||
## 15项待验收场景,暂不声称一致或确定差异
|
||
|
||
| 编号 | 精确验收状态/位置 | 需要检查 |
|
||
| --- | --- | --- |
|
||
| V01 | 两端1335×916 | 正文/输入上限、换行、贴底;本轮仅YG该尺寸已采集 |
|
||
| V02 | 窄窗、最小980×640 | padding切换、模型权限挤压、横向溢出、标题省略 |
|
||
| V03 | 六档1—6实际设置 | 正文、用户文字、过程、代码、输入、按钮行框;操作后恢复原档 |
|
||
| V04 | 设置滑杆 | 轨道刻度thumb颜色、键盘/点击调节、重启持久化 |
|
||
| V05 | 用户气泡hover | 时间/复制/编辑坐标、出现时机、hover间隙、键盘焦点 |
|
||
| V06 | 顶栏搜索打开/有命中/无命中 | 输入宽高、计数、导航、高亮、折叠命中与滚动定位 |
|
||
| V07 | 分享模式 | 选择框、底部操作条、复制导出;与平台分享链接分开 |
|
||
| V08 | 最近任务/概览popover | 锚点、行距、最大高、外部关闭、产物计数/跳转 |
|
||
| V09 | 右工作台打开 | 两列变化、主列收缩、工具和产物列表、空态 |
|
||
| V10 | 真实表格 | 字体、padding、横滚、添加到对话hover位置/引用内容 |
|
||
| V11 | Markdown代码块 | 与命令面板分开:语言栏、复制、字库、背景、横滚、最大高 |
|
||
| V12 | 真实widget/SVG | iframe高度、前后间距、响应尺寸、产物链接;不沿用模拟页结论 |
|
||
| V13 | 流式/失败/取消/重试 | 文案、耗时、按钮状态、错误、重复丢消息、折叠稳定 |
|
||
| V14 | 上翻后新消息/展开变高 | 阅读锚点、自动跟随条件、回底按钮位置/appearance |
|
||
| V15 | 图片附件引用路径长文本 | tooltip/图标/点击、加载尺寸、复制、310px长气泡、输入增长/IME |
|
||
|
||
## 修复顺序与完成标准
|
||
|
||
用户明确动态目标后的优先顺序:先处理 [S01/S02/S06事件管线](ygent-chat-interaction-parity.md),建立增量、折叠、滚动与取消的双端验收,再继续下列静态细节;不能只沿像素微调顺序推进。
|
||
|
||
1. 先修真实文字和字库:D01—D05、D14、D27、D32。重测六档,不仅核对font-size数值。
|
||
2. 恢复过程真实层级:D11—D23、D25—D28、D31。摘要、意图、命令、输出、reasoning应有独立可测间距和状态,移除旧工具卡干扰。
|
||
3. 补当前回合尾部:D29—D30。真实产物关联、操作栏及有依据的元数据,分项接通交互。
|
||
4. 收敛图标颜色滚动:D06—D10、D24、D33—D40。改尺寸后重新核对正文与输入,避免引入全局偏移。
|
||
5. 扩展V01—V15验收矩阵和C项;明确外围X项是否纳入同轮,平台能力不阻塞核心对话区。
|
||
|
||
每项完成需提供同条件原生采集,记录字库、字号档位、视口/DPR、展开状态、rect/样式及行为结果。字库差先消除;关键几何允许不超过1px取整误差,缺失结构/入口/错误交互不按像素误差豁免。无法获取的元数据和未操作场景明确标记,不伪造数据、不以“组件存在”标记已完成。
|