621421f3ca
票 = task-26(自报缺陷,Lead 批准开树自修)。两处都是我上一笔(导航器入库)留下的: 一条会让工作树变脏,另一条更严重——动到了不属于我的台架。 一、--walk 的存证落点 - 症状:outdir = os.path.join(HERE, "walk"),HERE = <仓库根>/scripts → 真机跑完在 scripts/walk/ 落 12 个帧:git status 立刻脏、done 的并集残留审计会把它当任务遗留物, 下一个窗口还盖掉上一个窗口的证据。我自己刚立过「轨迹只在 --trace 给了路径才落盘」的 规矩,这条路径上被自己破了。 - 改法:默认落 <仓库根>/ci-artifacts/uinav/walk/(已 gitignore,本仓台架产物一贯在此), --outdir 可改;并加**反向拒绝**——解析后的目录若落在版本控制内且不在 ci-artifacts 之下, 直接 [FAIL] 退出 3、连目录都不建。「跑完记得删」只防得住记得的人(同 bom-guard 立项 理由,也同今天 .map / 缺 lvgl_sim.exe 那一族:事实源不存在就大声失败)。 二、未持锁就注入了按键(实测踩到,已做成参数闸) - 我给「默认落点会打印成什么」做验收时跑了 --walk,脚本在没有任何拦截的情况下连上 7003 并开始注键;而那时台架属于验收窗的准备方,板子停在主干 mega 镜像上。**板端 UI 状态可能 已被推到别处**:只注入了方向/进入/退出类按键,未烧录、未碰串口、未触发任何写操作 (网口设置的保存行走不到——导航器从不在保存行按 ENTER,过密码默认也只走只读查看密码)。 - 根因不是手滑,是「必须持 bench 锁」只写在文档与 print 里:跑的人自认为在跑一次离线 检查,脚本就真去连了。于是把确认做成参数 --i-hold-bench-lock:不给就拒绝(退出码 3, 不碰网络);脚本不代取锁,也不替人判断「应该没人在用」。 - 给窗口方的处置建议:验收窗前先复位一次,或直接以 --walk 起步(导航器第一步就是回根, 且回根后还补收一次 l 防被裁弹框漏计)——别把我注入后的残留状态当成验收现象。 验收(本机、无板,全部实跑) - --walk --outdir <仓库内目录> → rc=3 + [FAIL] + 目录未被创建; - --walk / --board 未给确认位 → rc=3 且**不触网**(瞬时返回,不再有任何连板可能); - --selftest-quick rc=0(黄金参考 18 帧 0 错);check_doc_links 通过; - 一笔提交,未用 --no-verify;工作树仅这 2 个文件改动,无多余产物。 文档同步:docs/UI设计/UI_自动化测试流程.md §7.3 补「存证不进工作树」「真机动作需显式 确认位」两条并把用法示例改对(同一事实只在一处,正文仍在那一节)。