Files
platforms/audit/BUSINESS_FLOW_TEST_REPORT.md

66 lines
4.6 KiB
Markdown
Raw Permalink Normal View History

# 全项目流程审计与检查报告
2026-07-31 11:33:28 +08:00
审计日期2026-08-03
2026-07-31 11:33:28 +08:00
依据:`checking/03-系统与业务覆盖矩阵.md``checking/06-业务流程测试.md`
2026-07-31 11:33:28 +08:00
## 1. 结论
2026-07-31 11:33:28 +08:00
本轮是代码、契约和本地门禁审计不是远程环境端到端验收。BF-01BF-15 中没有任何流程具备“全链路通过”证据4 项为部分具备11 项因实现缺口或环境缺口阻塞。旧报告中的远程数据库、浏览器和 Flutter 成功结论不得沿用。
状态定义:
- `部分具备`:存在主要实现和局部自动化证据,但缺远程依赖、外部沙箱或跨端 E2E。
- `阻塞`:关键业务步骤不存在,或必要环境/安全凭据未提供。
## 2. BF-01BF-15 检查矩阵
| 流程 | 状态 | 本轮证据 | 主要缺口 |
| --- | --- | --- | --- |
| BF-01 邀请注册与服务关系 | 阻塞 | 管理端与 API 可构建 | 无本轮远程 DB/Redis、二维码安全及跨端 E2E。 |
| BF-02 设备绑定与远程关阀 | 阻塞 | 内部命令/Outbox/Gateway/协议代码存在 | 无设备绑定、用户归属鉴权和公开远控入口。 |
| BF-03 高风险遥测与整改 | 阻塞 | 上行消息可持久化 | 无规则事件、自动关阀、通知、整改复检及开阀拦截闭环。 |
| BF-04 共享、群控与报修 | 阻塞 | 无充分证据 | 共享权限、群控结果聚合及撤权服务端校验未形成闭环。 |
| BF-05 下单、支付与任务 | 部分具备 | 支付回调一致性已修复并有单测 | 无远程事务、支付沙箱、商户/appid 显式校验和跨端任务 E2E。 |
| BF-06 超时关单与迟到回调 | 部分具备 | Worker 调度与 API 关单代码可构建 | Worker 无测试;无渠道超时、竞争和重启实测。 |
| BF-07 订单项退款入钱包 | 部分具备 | 退款模型/逻辑可静态检查 | 无远程并发、审核隔离、钱包守恒和渠道对账证据。 |
| BF-08 气瓶配送与回收 | 阻塞 | 三套后台可构建 | 无库存并发、轨迹、扫码取证、押金及结算 E2E。 |
| BF-09 人员准入与离线补传 | 阻塞 | App 代码存在 | Flutter 未验证;服务端强制前置和离线完整性无全链路证据。 |
| BF-10 安装/维修闭环 | 阻塞 | 需求与页面资源存在 | 缺服务端顺序状态机和强制证据集成测试。 |
| BF-11 钱包提现审核 | 部分具备 | 资金逻辑已有历史单测,后端门禁通过 | 本轮未连接远程 DB/Redis未执行并发、重复审批和打款回执 E2E。 |
| BF-12 组织隔离与轨迹访问 | 阻塞 | 鉴权框架和后台资源存在 | 无多组织远程数据、分页/导出/缓存串租户及敏感访问审计 E2E。 |
| BF-13 IoT 上行与 ACK | 阻塞 | 协议、Gateway、Topic 身份单测通过 | ACK 包号复用风险;无 MQTT Broker/真设备联调。 |
| BF-14 IoT Outbox 恢复 | 阻塞 | Outbox/Worker 投递代码存在 | 无双 Worker、崩溃窗口、重复投递、积压和死信测试。 |
| BF-15 审计与灾备 | 阻塞 | 部分事实有审计字段 | 未执行 PostgreSQL WAL 恢复、Redis 故障恢复和 RPO/RTO 测量。 |
## 3. AC-01AC-25 汇总
| 状态 | AC |
| --- | --- |
| 局部代码证据 | AC-02、AC-07、AC-08、AC-24、AC-25 |
| 关键实现或 E2E 阻塞 | AC-01、AC-03AC-06、AC-09AC-23 |
“局部代码证据”不代表验收通过。AC-02/AC-25 仍受 ACK 关联和 Broker 联调阻塞AC-07 仍受支付沙箱和商户身份检查阻塞AC-08 仍受远程并发验证阻塞AC-24 仍需数据库 Schema 全量核查。
## 4. 本轮实际验证
| 范围 | 结果 |
| --- | --- |
| API | `go test ./...``go vet ./...`、build 通过 |
| Worker | test/vet/build 通过,但无测试文件 |
| IoT Gateway | test/vet/build 通过 |
| IoT Server | test/vet/build 通过,含 Topic 身份回归测试 |
| platform_admin | type、contract、build 通过lint 有 111 warnings/12 infos |
| gas_admin、delivery_admin | type、lint、build 命令通过;存在非阻断 lint 告警 |
| site | build 通过4/4 托管测试通过 |
| Flutter Apps | 命令启动超时,未取得结果 |
| 远程 PostgreSQL/Redis | API YAML 已恢复远程配置,但本轮未执行集成流程 |
## 5. 远程执行前置清单
1. 确认 YAML 配置指向隔离库,并为 Redis 使用独立 DB/前缀。
2. 限制配置文件访问权限,不在命令、报告或日志中记录连接值。
3. 明确测试数据前缀和保留策略;禁止清库和删除资金/审计事实。
4. 启动支付沙箱、MQTT 模拟器和四后端进程,逐项记录 UI/API、数据库、Outbox、回执和审计证据。
5. 先解决 P0/P1 实现缺口,再执行完整 BF 门禁;否则测试结果只能是预期阻塞。