Summary
Project Memory(/memory 与自动记忆)在多进程、身份升级、worktree 生命周期下存在数据丢失与静默覆盖风险:共享 global identity 下跨仓库泄漏、身份升级 FK 级联删除 workflow/permission、退役后写入重建孤儿 Home、跨进程写入静默覆盖、worktree 操作破坏性清理。
Required invariants
- 一个 Project 只有一份权威 Memory;退役后任何路径不得重建 Home。
- 身份升级(root→first remote、remote→remote)零数据丢失,冲突 fail-closed。
- 跨进程更新不静默覆盖(锁 + revision 校验)。
- global / 退役 identity 下 Memory fail-closed 惰性。
- worktree 生命周期不破坏 Memory 数据。
- 退役 TOCTOU class 关闭:fence 协议(key + dir + fence 内 liveness 复检)单一权威。
Acceptance criteria
- 上述不变量各有一条公共行为级测试钉住;关键修复有 mutation 敏感性证据。
- 全范围(origin/dev...分支,约 30 文件)Spec + Standards 双轴审查连续两轮无新 P1/P2。
- opencode/core typecheck、lint 棘轮、领域测试全绿;PR 合并后 dev push 全量 CI 绿。
- 不恢复已否决的 ProjectMemoryAuthority / 六阶段 journal / alias tombstone / opaque Revision / destruction guard;Memory source Home 不删除;
.orDie 结构化错误传播为已批准延期项。
Summary
Project Memory(
/memory与自动记忆)在多进程、身份升级、worktree 生命周期下存在数据丢失与静默覆盖风险:共享 global identity 下跨仓库泄漏、身份升级 FK 级联删除 workflow/permission、退役后写入重建孤儿 Home、跨进程写入静默覆盖、worktree 操作破坏性清理。Required invariants
Acceptance criteria
.orDie结构化错误传播为已批准延期项。