marco
93bf991fe1
feat(coupon): /coupon/step 每帧响应顶层回显 trace_id,补齐领券链路
对齐 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>
2026-07-31 23:08:43 +08:00
..
2026-05-23 17:37:18 +08:00
2026-06-04 03:02:41 +08:00
2026-07-21 13:53:10 +08:00
2026-07-31 11:18:00 +08:00
2026-07-22 10:53:21 +08:00
2026-07-27 16:02:40 +08:00
2026-07-31 17:08:06 +08:00
2026-07-27 13:33:55 +08:00
2026-07-28 17:58:23 +08:00
2026-07-31 17:08:06 +08:00
2026-07-27 16:03:31 +08:00
2026-06-14 22:54:07 +08:00
2026-07-09 17:31:24 +08:00
2026-07-09 17:31:24 +08:00
2026-06-19 08:31:31 +08:00
2026-07-27 18:00:23 +08:00
2026-07-31 11:17:30 +08:00
2026-07-10 22:14:00 +08:00
2026-07-31 21:31:24 +08:00
2026-07-30 11:00:35 +08:00
2026-07-04 02:39:12 +08:00
2026-07-04 02:39:12 +08:00
2026-07-22 17:18:26 +08:00
2026-07-23 10:35:41 +08:00
2026-07-28 17:57:52 +08:00
2026-07-27 16:13:54 +08:00
2026-07-24 11:15:09 +08:00
2026-07-23 10:35:41 +08:00
2026-07-24 11:15:09 +08:00
2026-07-31 23:08:43 +08:00
2026-07-31 21:31:24 +08:00
2026-07-24 11:15:09 +08:00
2026-06-30 21:56:58 +08:00
2026-07-23 11:57:37 +08:00
2026-06-25 17:47:30 +08:00
2026-06-20 02:03:33 +08:00
2026-07-27 10:35:15 +08:00
2026-07-22 15:42:25 +08:00
2026-07-28 14:04:36 +08:00
2026-07-02 19:50:14 +08:00
2026-07-05 09:31:53 +08:00
2026-07-29 16:12:05 +08:00
2026-05-23 17:37:18 +08:00
2026-07-21 10:43:58 +08:00
2026-07-21 13:52:40 +08:00
2026-07-27 16:03:31 +08:00
2026-06-26 21:10:21 +08:00
2026-06-26 21:10:21 +08:00
2026-07-31 17:08:06 +08:00
2026-07-27 15:51:19 +08:00
2026-07-24 11:17:09 +08:00
2026-07-05 09:31:53 +08:00
2026-07-22 15:42:25 +08:00
2026-07-22 15:42:25 +08:00
2026-07-20 18:55:38 +08:00
2026-07-04 02:39:12 +08:00
2026-06-07 23:17:27 +08:00
2026-06-29 09:54:13 +08:00
2026-06-17 10:37:54 +08:00
2026-07-27 15:51:19 +08:00
2026-07-30 10:41:43 +08:00
2026-07-16 09:40:56 +08:00
2026-07-31 17:08:06 +08:00
2026-07-28 09:20:57 +08:00
2026-07-31 11:17:30 +08:00
2026-07-28 09:20:57 +08:00
2026-07-31 11:17:30 +08:00
2026-07-31 17:08:06 +08:00
2026-06-16 01:25:57 +08:00
2026-07-25 17:56:23 +08:00
2026-07-17 21:49:10 +08:00
2026-07-17 21:49:10 +08:00
2026-07-22 10:53:21 +08:00
2026-07-09 22:03:07 +08:00
2026-07-27 16:03:31 +08:00