test(zcode): 把门禁判决实验收进仓库(test/manual/gate-e2e.py)
它是「yolo + 自有工具面 + 我们自己的门禁」这个姿态**唯一**的决定性验证: 批了→命令真执行(比对文件内容,不只看回信);拒了→命令真没执行(文件不存在) **且回信把成因说成「人拒绝」而不是「超时」**;同会话第三次调用仍产生新请求 并在获批后执行(幂等键按调用唯一)。之前只放在 /root 下,会随环境丢弃。 顺手修两处会骗人的东西: 1. **不要用 `python3 run.py | tee log` 再取 `$?`** —— 那是 tee 的退出码(恒 0)。 实测踩过:脚本自己打印 5/6(有失败),后台任务通知却报 exit-code 0, 日志里那句 `EXIT=0` 完全是噪声。现在脚本把**自己的** exit_code 写进证据文件, README 也改成 `set -o pipefail` 的调用方式。 (同源问题第三次:PIPESTATUS 在 dash 下报错、`go build | head` 假绿、这次是 tee。) 2. **备注文字不再显示在通过项旁边** —— 通过的判据曾挂着「很可能又被当成重复请求 丢弃了」这种失败提示,会把「全绿」读成「有问题」。 已从仓库路径连跑三次 13/13(不同标记),确认收进仓库后仍可用。
This commit is contained in:
@ -245,7 +245,9 @@ node test/manual/permission-e2e.mjs
|
||||
node test/manual/driver-e2e.mjs
|
||||
|
||||
# 门禁端到端(真模型、真网关、真邮件):批了→真执行;拒了→真不执行
|
||||
python3 /root/e2e-zcode-gate/run.py
|
||||
# ★ 不要写成 `python3 gate-e2e.py | tee log` 再取 `$?` —— 那是 tee 的退出码(恒 0),
|
||||
# 失败会被吃掉。实测踩过:脚本自己打印 5/6(有失败),后台任务却报 exit-code 0。
|
||||
bash -c 'set -o pipefail; python3 test/manual/gate-e2e.py'
|
||||
```
|
||||
|
||||
新增的两组测试把安全性质钉住(共 34 条):
|
||||
|
||||
Reference in New Issue
Block a user