Files
ycode/docs/19项问题修复记录-2026-10-17.md
T

8.3 KiB
Raw Blame History

19 项验收问题的首轮修复(2026-10-17)

本轮范围

主对话规划、制定跨模块接口、集成及最终验收;三个子 agent 并行执行归档、会话状态、设置及专项测试等边界明确的任务。后续本对话继续采用此模式。

本轮落实前次验收汇总 A01~A12 的对应修复,并补上交叉审查发现的运行中重开、失败事务补偿和用量请求兼容问题。YCode 功能回归通过不等于 WorkBuddy 全状态逐像素 1:1 验收。

安装中心、定时任务、资料库、更多中的项目继续只记录,不拆解。云端服务、产品内子代理调度、用户明确不复制的链接不纳入本轮。保留进入本轮时已有的未提交修改。

修复结果

ID 修复后行为 验证范围
A01 回合开始及带序号的事件发送到所有应用窗口;同任务双窗共享运行状态。重开窗口从内存快照恢复正文、工具状态与停止入口,并按序号去重。 真实独立窗口发送、完成、停止、关窗后后台保存、运行中关窗重开、双窗同步:62/62。纯回归覆盖迟到 started、终态快照和 hydration 期间事件。
A02 表格引用快照进入备用内核的后续历史及中断输入恢复;附加上下文随用户消息冻结,避免重放时丢失或使用新设置。 持久化回归断言下一次实际 wire history 包含原引用 markdown;IPC 回归和表格 UI 48/48。
A03 新建会话后首回合启动失败时,只清理本次创建、主进程在同一会话锁内确认无消息且未运行的空会话。草稿、附件、资源引用和空间选择恢复;失败清理或有真实消息时保留会话并报错。 真实创建成功后注入一次启动前拒绝,验证恢复、既有会话不变及原草稿重试;新任务专项 51/51。纯回归另覆盖切换竞态和清理拒绝。
A04 记忆归一化尊重声明默认值;只修改一项不会连带开启另一项。编辑保存期间禁用相关操作并显示忙碌态。 记忆纯逻辑回归;真实开关点击、独立持久化和重开恢复,UI 25/25。
A05 侧栏任务分组增加“已归档”入口,可查看列表、恢复及恢复后打开原消息。确认文案指向可访问入口,不再指向已移除的数据管理。 归档列表/加载/失败重试/独立任务与空间任务恢复/重复点击保护:25/25;任务菜单 43/43。此入口是适配用户移除数据管理后的 YCode 交互。
A06 有产物变更的消息编辑提交先询问回退或保留当前产物;普通回退也支持仅回退对话。取消保留编辑草稿。失败时补偿文件及 YCode 管理的原生转录文件。 消息编辑 UI 74/74;IPC 回归覆盖两种产物选择、原生分支失败和 startTurn 写入失败后文件/历史/转录恢复。
A07 工作台内打开菜单时先关闭菜单;工作台内全屏时 Escape 只退出全屏;非全屏生成中 Escape 才取消回复。 纯决策测试与真实新任务专项中的键盘事件;组合状态下生成不中断,随后正常取消并落库。原版该组合状态的优先级尚未新采集。
A08 扫描未完成时明确显示“统计未完成 / 至少已扫描”,区分下界和上界,不把部分数值作为完整统计。 存储展示纯逻辑覆盖完整/部分/边界值;通用设置 UI 43/43。真实超大目录的完整 UI 扫描仍未构造。
A09 系统文件管理器返回错误字符串时,IPC 明确拒绝,设置页原有错误反馈能显示失败。 IPC 注入 openPath 错误并断言拒绝;没有对用户机器的权限或真实系统文件管理器制造故障。
A10 欢迎语订阅同时响应当前窗口事件和其他窗口的 storage 事件,卸载时正确清理。 订阅纯回归、跨窗口通知专项及个性化 UI 31/31;没有额外采集原版活跃提示条的逐帧画面。
A11 页面展示的默认人设与用户自定义人设一样进入请求上下文,明确清空时才不注入。 个性化提示词纯回归及真实 IPC 提示词冻结链路。保持当前 userText 注入方式,原版指令层级等价性仍待 REA 证据。
A12 进入编辑器前预检历史消息的原生分支可用性;已知不可编辑的旧消息提前反馈原因,避免输入后才失败。服务端提交仍再次检查。 真实 UI 验证旧消息不进入编辑器并显示原因;IPC 预检回归。预检不承诺消除提交时的磁盘或分支运行错误。

交叉审查补强

  • 原生转录:失败补偿前先停止写入进程,恢复 YCode 以 --resume 指定的本会话 JSONL 字节快照;补偿动作逐个尝试,失败由 AggregateError 保留,不能因一项失败跳过另一项。测试以受控故障覆盖主转录文件恢复;没有证明外部 OMP 任意版本的附加副文件或真实磁盘硬故障均能补偿,不宣称完整原生事务等价。
  • Chat Completions:请求标准流式 usage,识别 choices: [] 的最终用量;非法数值不产生假用量。仅当 400/422 的错误正文明确说明 stream_options/include_usage 不支持时,才去掉该字段重试一次。普通 400、401、5xx、SSE 开始后的错误均不重试,AbortSignal 继续有效。
  • 模型用量:切换到不同模型后清理旧样本;运行快照可携带当前真实 usage。五类上下文占比没有编造数据。
  • 事件竞态:事件序号和快照水位线防止正文重复、旧快照覆盖增量、终态后迟到 started 重新激活回复。终态快照直接呈现完成/取消/错误态。

最终验证

构建:npm run build 通过,含 typecheck。最终 UI 批次运行时已使用最后一次业务代码构建。

21 个专项脚本最终全部通过:20 份结构化报告合计 710/710 条检查,另有 Git 检测 6/6。测试中所有真实模型请求均使用隔离本地服务和测试数据,不依赖用户远程服务。主要报告:

专项 最终结果 报告
独立任务窗口/同任务双窗/运行中重开 62/62 .tmp/task-window-stream-V8VDg1/report.json
新任务切页/失败恢复/草稿重试/Escape 51/51 .tmp/new-task-switch-5kOLZ1/report.json
用户消息编辑/预检/产物选择 74/74 .tmp/edit-yrCjoa/report.json
归档列表与恢复 25/25 .tmp/archived-tasks-2ufOR1/report.json
记忆设置 25/25 .tmp/memory-settings-lZKMSf/report.json
个性化设置 31/31 .tmp/personalization-settings-YazCcp/report.json
设置导航 19/19 .tmp/settings-nav-p3OfGW/report.json
Git/上下文输入区 47/47 .tmp/composer-context-X5taI3/report.json

其余任务菜单、运行中任务菜单、表格引用、滚动条、侧栏、账户菜单、通用、两套外观、快捷键、智能体、关于帮助均通过。本轮日志和全部报告路径索引:.tmp/fix19-20261017/final/summary.json。

以下纯逻辑/IPC 命令也已通过:

npm run test:conversation-ipc
npm run test:chat
npm run test:persistence
npm run test:conversation
npm run test:assistant-footer
npm run test:personalization
npm run test:workbench-escape
npm run test:remediation

Responses 网关原有回归另行通过。新增便捷入口 test:task-window、test:archived-tasks 指向本轮真实窗口专项。

测试维护修正:导航不再把 memory 当禁用;上下文测试使用当前主题卡片;记忆测试通过真实点击和等待配置落盘验证保存;失败注入等到主进程实际注册 IPC;窗口探针同时订阅 run-started 和增量事件。初次失败日志保留,最终通过结果没有覆盖或隐去它们。

仍待验收与使用边界

  • 没有新增 WorkBuddy 原版采集;复刻文案和原版结论沿用既有 REA 证据。本轮修复 YCode 已确认缺陷,不推断未知的原版行为。
  • 全状态同视口像素、字体字形、过渡帧、原版浮层边界与未知提示词层级仍未完整验收。快捷键自定义持久化、富文本编辑、文件修改过程等未接能力仍保留待办。
  • 系统登录项、系统通知设置页、真实文件管理器故障和超大目录扫描没有对用户环境制造真实副作用。
  • 构建产物已更新;本轮未重启用户正在运行的 YCode。运行中的主进程需要在下次启动时加载本轮修改。