chore: rebuild release package
This commit is contained in:
25
.planning/session-form-switch-race/progress.md
Normal file
25
.planning/session-form-switch-race/progress.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# 进度日志
|
||||
|
||||
## 2026-07-18
|
||||
|
||||
- 已读取并启用 `planning-with-files` 与 `todo-list-csv` 技能。
|
||||
- 已分析用户提供的两张截图,确认 F5 可恢复表单渲染。
|
||||
- 已隔离创建本任务规划文件,未覆盖其他会话的活动计划。
|
||||
- 当前阶段:定位表单计数与消息渲染的会话切换链路。
|
||||
- 计划审查代理已通过计划,无阻塞问题。
|
||||
- `codebase-memory-mcp` 索引 `home-cc-web` 状态为 ready(3950 节点、8664 边)。
|
||||
- 已确认表单角标读取完整 `sessionCache`,消息区历史采用带 `renderEpoch` 的异步分批 DOM 渲染,二者存在可观察状态分叉。
|
||||
- 两条独立只读调查均确认 `beginSessionSwitch` 过早失效渲染批次;另确认同一会话旧 `requestId` 响应与无请求 ID 历史块存在竞态。
|
||||
- 已完成步骤 1,进入步骤 2:先编写可确定性失败的回归测试。
|
||||
- 已在 `scripts/regression.js` 新增 `session-switch-race` 定向回归入口,并接入默认回归。
|
||||
- 已运行 `node scripts/regression.js --target session-switch-race`,当前生产代码如预期失败:渲染 epoch、旧 session_info、历史块/finalize 请求归属、服务端历史块 requestId 五类断言全部命中。
|
||||
- 已完成步骤 2、3,进入步骤 4:修改 `public/app.js` 与 `server.js`。
|
||||
- 注意:`scripts/regression.js` 同时出现其他会话新增的侧栏测试改动,本任务不覆盖、不回退。
|
||||
- 已修改 `public/app.js`:渲染 epoch 只在真实 DOM 替换时推进;`session_info`、历史块与 finalize 按加载 requestId 拒绝旧代次。
|
||||
- 已修改 `server.js`:`session_history_chunk` 透传 `load_session` 的 requestId。
|
||||
- 已完成步骤 4;定向 `session-switch-race` 回归、三份 JS 语法检查及 diff whitespace 检查均通过,进入步骤 5 完整回归。
|
||||
- 第一次完整回归失败于旧源码字符串契约 `!messageRequestId && !currentSessionId && !activeLoad && !pendingNewSession`;行为兼容分支仍存在,已改为具名布尔量以恢复旧契约,待重跑。
|
||||
- 定向 `session-switch-race` 回归再次通过。
|
||||
- 完整 `npm run regression` 通过并输出 `Regression checks passed.`,退出码 0。
|
||||
- 已完成步骤 5,进入步骤 6:静态检查与影响面审查。
|
||||
- `codebase-memory-mcp detect_changes` 在影响分析阶段返回 `Transport closed`;已按降级策略改用本地静态检查与独立只读审查。
|
||||
Reference in New Issue
Block a user