docs(changelog): 核心订单首次排车候选弹窗因 canonicalSnapshot 空派车组被判非法而全空(前端缺陷) #86

已合并
wx 于 2026-09-24 16:50:50 +08:00 将 1 次代码提交从 docs/frontend-canonical-empty-snapshot合并至 main
所有者

背景

2026-09-24 同事报「核心订单的车务排车不对」。排查后确认是前端缺陷(后端零改动):尚未产生任何派车行的订单(看板「待派车」)第一次打开「统一选择车辆/司机」时,候选接口返回的 canonicalSnapshot.retainedGroupIds 是空数组(#7067 去槽位化后首次排车本就没有派车组,属合法状态),而前端 normalizeCanonicalAssignmentSnapshot 把空数组判为快照非法直接 throw,整条响应作废——车辆/司机候选都拿不到,弹窗只剩红字报错。

证据

  • 测试服订单 HL20260924152729671(团号 26-0013)只读复现:POST /admin/fleet/assignments/candidates 返回 HTTP 200 / code 200,canonicalSnapshot = {planGeneration, snapshotVersion:1, retainedGroupIds:[], editableServiceDates:[4 天], cells:[]},同一响应里 vehicles.records / drivers.records 都有数据;
  • 部署产物 assets/AssignModal-*.js 内函数 yt()(= normalizeCanonicalAssignmentSnapshot)首段校验即抛 Error(缺少完整的代际、稳定派车组或服务日期);
  • 同单在其产生派车行之后,同一接口返回 retainedGroupIds=[一个雪花组 ID] + 3 cells,前端校验通过、弹窗正常。

内容

新增 changelog 条目:changelogs-v2/2026-09/24_frontend_核心订单首次排车统一选择车辆司机候选全空canonicalSnapshot空派车组被判非法-前端缺陷-管理后台.md(change_type: 前端缺陷,backend_status/gateway_status: not_required,前端修法与回归清单在正文)。

注:npm test 里 changelog-path-aliases 报的 11_7510_* 与 canonical 不一致是 main 上既有(见 10502cc),与本次新增文件无关;本次两个 diff 校验器(filenames / frontmatter)均 PASS。

## 背景 2026-09-24 同事报「核心订单的车务排车不对」。排查后确认是**前端缺陷**(后端零改动):尚未产生任何派车行的订单(看板「待派车」)第一次打开「统一选择车辆/司机」时,候选接口返回的 canonicalSnapshot.retainedGroupIds 是空数组(#7067 去槽位化后首次排车本就没有派车组,属合法状态),而前端 normalizeCanonicalAssignmentSnapshot 把空数组判为快照非法直接 throw,整条响应作废——车辆/司机候选都拿不到,弹窗只剩红字报错。 ## 证据 - 测试服订单 HL20260924152729671(团号 26-0013)只读复现:POST /admin/fleet/assignments/candidates 返回 HTTP 200 / code 200,canonicalSnapshot = {planGeneration, snapshotVersion:1, retainedGroupIds:[], editableServiceDates:[4 天], cells:[]},同一响应里 vehicles.records / drivers.records 都有数据; - 部署产物 assets/AssignModal-*.js 内函数 yt()(= normalizeCanonicalAssignmentSnapshot)首段校验即抛 Error(缺少完整的代际、稳定派车组或服务日期); - 同单在其产生派车行之后,同一接口返回 retainedGroupIds=[一个雪花组 ID] + 3 cells,前端校验通过、弹窗正常。 ## 内容 新增 changelog 条目:changelogs-v2/2026-09/24_frontend_核心订单首次排车统一选择车辆司机候选全空canonicalSnapshot空派车组被判非法-前端缺陷-管理后台.md(change_type: 前端缺陷,backend_status/gateway_status: not_required,前端修法与回归清单在正文)。 注:npm test 里 changelog-path-aliases 报的 11_7510_* 与 canonical 不一致是 main 上既有(见 10502cc),与本次新增文件无关;本次两个 diff 校验器(filenames / frontmatter)均 PASS。
wx 于 2026-09-24 16:50:48 +08:00 推送 1 个提交
wx 于 2026-09-24 16:50:50 +08:00 合并提交 dbfeb85f61 到 main
wx 于 2026-09-24 16:50:50 +08:00 删除分支 docs/frontend-canonical-empty-snapshot
登录 并参与到对话中。
未指定评审人
未选择标签
1 名参与者
通知
截止日期
未设置截止日期。
依赖工单

未设置依赖工单。

引用:wx/hl-api-changelog#86