Files
qipai/docs/devlogs/2026-06-24-M06-G-真实硬件联调.md
T

1.5 KiB
Raw Blame History

M06-G 真实硬件联调

  • 日期:2026-06-24
  • 起始 commitc00526f
  • 工程 commitd01f771
  • ENGINEERING_DELTA=YES
  • 子阶段状态:BLOCKED_EXTERNAL;烟测运行器已完成,真实设备未执行

工程增量

  • 新增 hardware-smoke-runner,默认 dry-run 生成控制箱、Sub-1G 门锁和智慧插座联调矩阵。
  • 未配置 DeviceID 时安全 SKIP;未显式设置 QIPAI_HARDWARE_SMOKE_ENABLE=true 时只输出 DRY_RUN,不发布真实硬件命令。
  • 危险动作默认关闭;只有 QIPAI_HARDWARE_SMOKE_ALLOW_ACTIONS=true 且提供对应 DeviceID/subID 时才加入控电、开锁和插座开关动作。
  • 真实执行时通过 MQTT 3.1/QoS 1 发布 /deviceaccept/{DeviceID} 并等待 /devicesend/{DeviceID} 中匹配命令 ID 的 ACK。
  • 输出 JSON 结果,便于后续粘贴进硬件联调报告和部署验收记录。

验证

  • Windows npm run build:退出码 0。
  • Windows node tests/hardware-smoke-runner.test.mjs:退出码 0。
  • Windows node dist/devices/hardware-smoke-runner.js:退出码 0,未配置 DeviceID 时返回 SKIP
  • Windows npm test:退出码 0,M01-A 至 M06-G 全量后端回归通过。
  • 工程 commit 已 pushHEAD == origin/main == d01f771

外部阻塞与后续

缺生产 MQTT 账号/ACL、控制箱、Sub-1G 门锁、4G 智慧插座、DeviceID、subID 和现场配线/负载,未执行真实 ACK、断电保护、开锁、订单联动和异常恢复矩阵。M06 保持 PARTIAL/BLOCKED_EXTERNAL,游标旁路进入 M07-A 双余额账本。