ch15-13 审计准备
先定交付标准
这一节按上线视角读“审计准备”。如果某个判断不能被测试、监控或运行手册证明,它就还不是出版级和生产级内容。
源码入口
- packages/deepbook/tests:测试 fixture、断言或可复现验证材料。
- packages/deepbook_margin/tests:测试 fixture、断言或可复现验证材料。
- packages/predict/tests:测试 fixture、断言或可复现验证材料。
- crates/schema/migrations:表结构、索引、Diesel schema 或迁移约束。
从测试到上线
审计前准备:资产清单、权限清单、关键不变量、交易流程图、错误码表、测试覆盖报告、已知风险和不审范围。没有威胁模型的审计效率很低。
审计准备需要交付架构图、威胁模型、测试矩阵、已知限制、部署权限和变更记录。对审计方最有价值的是可复现证据:测试命令、fixture、migration、风险假设和未修复问题清单。
交付判断
- 每个测试或部署结论都要能回到具体命令、fixture、日志、指标或审计材料。
- 同时覆盖成功路径、失败路径、边界值、权限错误和数据延迟。
- 升级、迁移和部署步骤要写明回滚点、兼容窗口、健康检查和负责人。
- 涉及资金安全时,把链上约束、SDK 构造、Indexer 读模型和前端提示分层验证。
动手检查
- 本节的验收证据是 Move 测试、SDK 测试、snapshot、E2E、指标还是部署日志?
- 哪些失败路径、权限边界、迁移风险或运维故障还没有被覆盖?
- 如果生产事故发生,能否用 digest、checkpoint、日志和监控在 10 分钟内定位责任层?