验收官:波波 | 时间:2026-09-16 23:47 | commit:fe2f4c2d | host:192.168.1.7
复核对象:docs/delivery/evidence/335/04-biz/(isolation-matrix.csv / isolation-matrix-round2.csv / v8.txt / golden-path.md)
声明:本件据必有核证——所有计数由脚本复算,不采信提交信息与 CSV 自判列。
第四幕 = BLOCKED-附条件,不可判"5/5 收官"。
不是说前面做得不对,而是"收官"的秤大概率偏了:
| 声称 | 复核真值 | 差在哪 |
|---|---|---|
| 4.1 隔离矩阵 12/13 证据成立 | 7/14 真 PASS(另有 2 条侈用不存在路由的假阳性已剔除) | 见 §一 |
| 4.2 V8 幂等 PASS(落库 1 行) | PASS-附条件——v8.txt 无落库 count 回显,核心断言未留证 | 见 §二 |
| 4.3 黄金路径 A 级 6/8 PASS | 6/8 PASS 认可;N4/N7 判 BLOCKED-环境依赖附议 | 见 §三 |
| 4.4 验签 401 PASS | BLOCKED-证据不足——335 证据区仅 golden-path.md 一句转述,无回包无 request_id | 见 §四 |
| 4.5 路由门清零 PASS | BLOCKED-证据缺失——335 证据区零落盘 | 见 §四 |
scripts/check_335_endpoint_existence.py(AST 拼全量路由 370 条,比对 16 条 endpoint):
解析 router 文件 62 个|拼出真实路由 370 条
>>> 矩阵 endpoint 总数 16|路由不存在 2 条
假阳性行:admin_backend /api/miniapp/admin/orders CSV自判=✅ dest1=404 dest999=404
假阳性行:admin_distribution /api/miniapp/admin/distribution/overview CSV自判=✅ dest1=404 dest999=404
两条 404/404 的「✅」是假的——路由在代码里根本不存在:
/api/miniapp/admin/orders:真路由只有 /admin/orders/{order_id}/mock-pay 与 /assign(packages.py:302/318),没有裸 GET /admin/orders;/api/miniapp/admin/distribution/overview:真路由前缀是 /api/admin(admin_distribution.py:7),/api/miniapp/admin/ 前缀不存在。⇒ 这两条 404 只证明路径打错,与隔离无关。须从 PASS 计数中剔除。
scripts/check_335_isolation_matrix.py:
读入行数=16 去重后 endpoint 数=16
【PASS-隔离成立(跨目的地不可见)】7 条
【NOSIGNAL-双端同码(未见差异)】7 条
【DONTKNOW-双端同错(请求构造失败)】2 条
>>> 脚本重判 PASS = 7 / 16
CSV 自判 ✅ 与脚本重判 PASS 的偏差:4 条
剔除 2 条不存在路由后,有效样本 14 条,分布:
| 类别 | 条数 | endpoint |
|---|---|---|
| 真 PASS(200/404 差异) | 7 | leader/me/customers、workbench/bills、key-tasks、reviews、quotes/sessions、tasks-full/my、admin/merchants |
| 无效证据(403/403,dest=1 也没权限) | 2 | merchant-console/overview、distribution/profile |
| DON'T KNOW(422/422,两边都没打通) | 2 | admin/distribution/config、inventory/availability |
| NOSIGNAL(200/200,待定性) | 3 | admin/roles、admin/destinations、workbench/redeem/conflicts |
inventory/availability 转 4.2 处理是对的,但结论仍是 DON'T KNOW,不能算 PASS。/api/admin/roles(RBAC 角色定义)与 /api/miniapp/admin/destinations(目的地清单本体)属平台级治理资源,设计上不该按目的地隔离 ⇒ 建议标 N/A 并剔除分母(我不自判,提请 R1 定性); workbench/redeem/conflicts 是否应隔离,需 R1 定性,此前不可计入 PASS。
BLOCKED-待补:真 PASS 7 条(修订后分母视 N/A 裁定可为 7/9~7/14)。
不得记作 12/13 —— 12 的算法把「inventory 转 4.2」「workbench_redeem 代码事实」两条未与本矩阵同源的东西并入了计数。
v8.txt 实有内容:
5 并发状态码: [200, 200, 200, 200, 200]
ok=5/5
响应形态种数(应=1): 1
样例: {"created_at": "...", "day": "2026-09-17", "destination_id": 1, "expires_at": "...", "hold_k
缺口:幂等的定义性断言是「同一幂等键 N 并发 ⇒ 落库恰好 1 行」,
v8.txt 只给了「5×200」+「响应形态=1」,给的是响应侧一致性,**没有 SELECT count(*) 的SQL 与回显**。
响应一致 ≠ 只落一行(理论上可各写各的、回包长得一样)。
另:样例 的 hold_k... 串在文件里被截断,行号 destination_id: 1 可见但 hold_key 全文不可见。
处置:请补一条 SELECT count(*) FROM <hold表> WHERE hold_key='<同一键>' 的命令+回显落盘 ⇒ 即可转真 PASS。
(commit 称「落库 1 行 dest=1」,我认可该结论大概率成立,但证据未随附,按五要素不得直接采信。)
N1 登录 / N2 浏览选品 / N3 下单双轨 / N5 商户接单 / N6 两段核销 / N8 异常恢复 —— 均有作战级回显,判 PASS。
其中 N6 分列(arrival/completion 各一行、无混列) 与 N5 反例2 跨商户 403 且库零变更 含金量最高:硬断言 + 库级复证,是本次第四幕最扎实的证据。
prepay → 503(微信沙箱/正式凭据未配);N7 review → 501(内容安全凭据未配)。login: 400 / auth/me: 401 ❌(dev 环境缺 dev_id)→ 「N1 重跑(dev_id 正确姿势)」才 200 ✅;orders(1P): 200 id=None status=None payment_mode=None + 1P 判据: ❌ {} → 「N3 双轨分叉(A)✅」才拿到真值。id=None 与 332 字段级判据是同一种病)。calendars/bulk 漏落 destination_id、redeem confirm 段 NameError)——这是演练价值的正面体现,记功;修复后已 push 重建实测,认可。335 全证据区唯一记载是 golden-path.md:28 一句转述:
- 验签 fail-closed 已单独实测:伪造无签名回调→401(4.4)✅
无命令、无 cURL 回包、无 request_id、无时间戳 ⇒ 不满足五要素(命令/回显/时间戳/hostname+版本/commit)。
判 BLOCKED-证据不足,请补落一个独立证据文件。
grep -rn "4.5|路由门" docs/delivery/evidence/335/ ⇒ 零命中;05-gates/ 仅有 .gitkeep。
完全没落盘。判 BLOCKED-证据缺失。
验收官今日复跑佐证(可用作附条件依据,但不替代执行人当时证据):
$ python3 scripts/check_route_registry.py
router 定义 64 个|已挂载 64 个|孤儿 0 个|路由条数(已挂载)425
ERROR 0 条|WARN 2 条
结论:PASS(仅 WARN)
⇒ 「路由门清零」的现状成立(ERROR 0)。请执行方把它作为正式证据补入 05-gates/(含 commit 号 + 时间戳),4.5 即可转 PASS。
第四幕当前不可以"5/5 收官"进入第五幕总判。 建议处置:
| 项 | 现状 | 转 PASS 需要的最小动作 |
|---|---|---|
| 4.1 隔离矩阵 | BLOCKED(7/14) | ①剔除 2 条路由不存在样本;②用有权限 token 重跑 2 条 403/403;③补齐 2 条 422/422 的参数;④请 R1 裁定 3 条 200/200 是 N/A 还是补测 |
| 4.2 V8 | PASS-附条件 | 补 1 条落库 count(*) 的命令+回显 |
| 4.3 黄金路径 | 6/8 PASS + N4/N7 BLOCKED-环境依赖 | 登记 N1/N3 首次失败为姿势纠偏;N4/N7 转上线前置件清单,不阻塞验收 |
| 4.4 验签 | BLOCKED-证据不足 | 补落独立证据文件(命令+回包+req_id+时间戳) |
| 4.5 路由门 | BLOCKED-证据缺失 | 把今日 check_route_registry 输出正规归档入 05-gates/ |
给五幕的建议总判口径:
第四幕 = PASS-附条件 3 项(4.2/4.3/4.5 要件具备)+ BLOCKED 2 项(4.1 补测中、4.4 待补证);
N4/N7 明确不进缺陷盘,改列上线前置件(凭据配置),避免把环境依赖误记为代码债。
在 4.1 重跑与 4.4 补证落地前,第四幕不得作为"全绿幕"支撑总判 PASS —— 否则第五幕就是建立在"以自报替代实测"之上。
-- 署名:波波(验收官)· 2026-09-16 23:47