记忆删除与清空
wesgine 记忆的删除操作:单条删除、按层清空、按 session 清空、按 metadata 批量删除。
单条删除
DELETE /memory/{id}
- 不属于你 → 403
- 不存在 → 幂等成功(nil)
- 判据:
ActorVisible
与读单条(GET /memory/{id})的差异:读并进 404——记忆 id 会随导出与分享链接流出,一次读不配得到「它确实存在」这个确认。删回 403——点名要删一行配得上一句拒绝。
按层清空
DELETE /memory/layer?layer=about_me&actor=alice
| 参数 | 说明 |
|---|---|
layer | 目标层(必须是可写层) |
actor | 非共享层必须带 actor |
可清空层
与可写层一致:consensus、about_me、agent_memory。
拒绝清空
| 层 | 原因 |
|---|---|
environment | 宿主感知器产出,下次 boot 重写 |
session / working | 运行时态 |
unknown | 非法层 |
三种返回成功的 0 也会被拒绝
- 带 actor 清无主层 → 错误
- 带 actor 清
agent_memory共享通道 → 错误 - 给自寻址的层带 namespace →
ErrLayerNamespaceDerived
按 Session 清空
DELETE /memory/session/{sid}
删除指定 session 关联的所有记忆条目。
按 Metadata 批量删除
POST /memory/delete-by-meta
按 metadata 键值对批量删除。权限 cell:admin。
权限
所有 /memory 非 GET 端点一律 cell:admin(INV-MEM-45)。
相关文档
- Memory 层模型 →
memory-layer-model.md - 写入管线 →
memory-write-pipeline.md - GC 与 Digest →
memory-gc-digest.md