93bf991fe1
对齐 compare 链路(_forward 的 setdefault 注入,每步响应都带 trace_id):coupon_step 透传响应在 resp.json() 后 setdefault 注入本次任务 trace_id,客户端任一帧都能从响应 拿到全链 id。**只回显请求里带的、不 mint**——step 是循环接口,每帧签新 id 会把一次 任务打散;领券 trace_id 的唯一签发点保持在 /coupon/session (status=started)。带 isinstance dict + 非空 trace_id 双防御(pricebot 响应顶层本无 trace_id 字段,setdefault 不会覆盖任何上游值)。 顺手修复 test_coupon_proxy.py 一个 pre-existing 红测试:coupon_step 转发早已改为 content=raw 原始字节透传,但 fake_post 仍只捕获 json= 参数 → captured["json"] 恒 None、body 转发断言一直失败(git stash 验证不带本轮改动同样红)。fake 改捕 content、 断言按字节 json.loads 后对比;transparently-passes-through 断言更新为"透传 + 顶层 回显 trace_id"新契约。 领券相关测试 22 passed。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>