Blind Vault 与 MemChain 崩溃恢复边界
AeroNyx2026年6月17日2 分钟阅读166 次浏览
说明 Blind Vault 与 MemChain 在进程中断后可恢复什么、测试覆盖什么,以及断电持久性、密钥恢复和集群部署为何是不同声明。
<!-- docs-node-evidence-2026-08-31:start -->
<!-- [DOCS-NODE-EVIDENCE 2026-08-31 by Codex] -->
Blind Vault 与 MemChain 崩溃恢复边界
Blind Vault 与 MemChain 是恢复语义不同的两个存储层。
源码已实现
- Blind Vault 使用有界 SQLite WAL 事务保存不可变密文记录;已经提交的重试在进程重启后仍可读取,节点仍然没有内容密钥。
- MemChain 追加文件扫描器验证 framing 与语义链接。打开时只能截断不完整的物理尾部并同步修复;完整但损坏的记录会 fail closed,并保留供调查。
- 启用可选认知路由器时,超出租约的
processing任务可回到pending;这不等于精确续跑外部模型调用,也不保证外部服务绝不被重复调用。
自动化测试已验证
5 个基础测试已通过:Blind Vault 不可变记录重试/拉取、issuer 重启连续性、AOF torn-tail 修复、完整损坏拒绝且不截断、过期 claim 重置。修复后的总指挥整合线另有 6 个副本恢复存储测试通过,覆盖 prepared/committed/resolved 重启恢复、V1 兼容、损坏拒绝及冲突/回滚 fail closed;这仍是自动化测试,不是当前集群崩溃演练。
当前集群已验证
2026-08-31 公开快照报告 3 个 follower 节点具有本地已验证的承诺历史,但没有 active coordinator、严格 checkpoint 阈值或 witness-certified tip。当前也没有 r6 的 Blind Vault 崩溃演练或 MemChain 恢复演练结果,因此集群崩溃恢复仍为待验证。
不作出的声明
- SQLite
synchronous=NORMAL与仅 flush、未 fsync 的追加路径不能证明突然断电零数据丢失。 - 旧版 MemChain AOF 可能包含节点可读的 Fact 字段,不能称为“密文历史”;客户端密封节点存储是另一条路径。
- 恢复不能重建丢失的拥有者身份或内容密钥,不能保证远端副本完整,也不构成公链共识或全局最终性。
受控重启前运行只输出聚合信息的 AOF 验证器;发现完整记录完整性错误必须停止。不得公开存储文件、记录 ID、哈希、签名、拥有者密钥、密文、明文或节点本地路径。
相关:签名承诺账本与见证保护 · 节点健康与中继冒烟验证。
<!-- docs-node-evidence-2026-08-31:end --> <!-- [DOCS-STALE-TAIL-REMOVED 2026-09-03 by Codex] -->