chore(changelog): 抢单前联系对方发不出消息 前端 implemented(9b824f5c)
所有检测均成功
changelog-filename-gate / validate (push) Successful in 3s

这个提交包含在:
Mimingguang 2026-08-11 16:51:16 +08:00 提交者 Mimingguang
父节点 5cedd5fb44
当前提交 c5996d43ce

查看文件

@ -7,12 +7,12 @@ change_type: "前端缺陷"
author: "wx(GIT)"
backend_status: "not_required"
gateway_status: "not_required"
frontend_status: "pending"
frontend_status: "implemented"
frontend_owner: "mmg"
frontend_ref: ""
frontend_ref: "9b824f5c"
target_release: ""
verified_at: ""
status_note: ""
status_note: "前端已实现(9b824f5c)。changelog 怀疑的「peerAdminId=0 禁用发送」不成立canSend/sendContent 门禁均不含 peerAdminId,open-house 对 '0' 传 '0' 后端返 200,emit 链全程无门禁。Workflow 对抗审查代码级证实真实根因——非抢单专属,是 request.js 通用缺陷access token 过期(页面闲置首开聊天常见)时 open-house POST 首试在 shouldDedupe 写时间戳,后端业务体 401 → tryRefreshAndRetry 只清 signal/__requestKey 不清 writeRequestTimestamps,refresh 零延迟重放距首试 <300ms 被误判重复写 abort CanceledError openFlow catch isCanceledRequest 静默吞 conversationKey 永不赋值但标题因 peerName 空兜底仍显示待接单房务看似正常 sendContent key 空静默 return(=点发送无反应)curl 持新鲜 token 不经 401 重放必 200与观测吻合修复 request.js 两条重放路径(401 refresh 重放 + 5xx/限流重试)统一 config.dedupe=false(重放是合法重发非重复提交);② ChatDrawer open 失败(非主动取消) message.error 提示并关抽屉,不留死抽屉测试:request.spec +2(修复前精确复现 CanceledError)37/37,ChatDrawer.spec +2 6/6,全量 190 文件 1780 用例全绿,checkpoint 含生产构建全过"
updated_at: "2026-08-11"
base: "dev-v3"
---