feat(sessions): support Qwen Code local sessions - #476
Conversation
[P1] [P2] [P2] [P2] |
3429e2c to
0e8d0e3
Compare
|
已根据反馈完成修复,并将分支重放到最新 upstream/main: |
[P1] [P2] [P2] |
0e8d0e3 to
14b4099
Compare
|
第二轮反馈已修复并同步到最新 upstream/main,提交 14b4099:V1/V2 Qwen loader 现返回逐条 tokenEvents;active parent chain 统一经 qwen adapter 解析,保留 displayText、thought 过滤和文本 fallback,删除重复解析路径;QWEN_RUNTIME_DIR > QWEN_HOME > homeDir/.qwen 在显式 homeDir 下也生效。补充了事件明细、显式 homeDir 环境变量优先级、文本 fallback 与推理不泄露测试。验证结果:V1 聚焦测试 24/24、V2 12/12、双端 typecheck、V2 dead-code(591 modules)、release-note range、git diff check、独立只读验收均通过。 |
[P2] |
|
第三轮反馈已修复,提交 ef2246a。V2 Qwen 的 function/thought trace、独立 tool_result trace、token event 与 active chain 创建时间现统一复用 timestampString/timestampMs,与 V1 归一化语义一致。新增 synthetic fixture 同时覆盖数字秒 epoch 与数字毫秒 epoch,并断言 session、message、token、functionCall trace、tool_result trace。已通过 V2 Qwen 6/6、typecheck、dead-code 591 modules、release-note range、git diff check 与独立只读验收。 |
[P2] |
|
已按反馈修复 Qwen Code 父链损坏时的历史静默截断(commit 23bc822):\n\n- 正常 parentUuid 链仍严格只读取活动分支,rewound 分支继续排除。\n- 若链中出现缺失 parent、重复 UUID、cycle、非法 parent 类型或活动节点缺少 UUID,则降级为按文件顺序读取全部可解析记录,避免丢失断点之前的历史;损坏场景可能包含 rewound 分支,这是明确的保全优先取舍。\n- 无 UUID 的普通 metadata 不会误触发降级。\n- 同一 recovered row set 统一驱动 messages、token events/totals、trace events 和会话时间。\n- V1/V2 均新增断链、重复 UUID 与健康链 metadata 回归覆盖。\n\n本地验证:V1 Qwen 7/7,V2 Qwen 8/8;两套 typecheck 通过,V2 dead-code 591 modules 通过;release-note range check 与 git diff --check 通过。 |
23bc822 to
efb5471
Compare
[P1] [P2] |
[P2] [P2] |
63ab7c5 to
dc5aa69
Compare
[P2] [P2] |
变更概述
Closes #475
更新说明检查
.release-notes/<branch-slug>.mdrelease-target: both,并覆盖 V1/V2upstream/main作为正确基线)验证
npm --prefix apps/main-1.0 run typechecknpm --prefix apps/main-2.0 run typechecknode scripts/release-notes.mjs check-range upstream/main HEADgit diff --check upstream/main...HEAD备注:仓库默认
npm run release-note:check使用陈旧的 forkorigin/main,会把上游已有的 124 条 release note 误计入当前范围;显式使用 PR 目标upstream/main后检查通过。