feat(memory): 留痕表正式迁移 0025 + 保留期清扫(W5)
- 迁移 0025_memory_ingest_reviews(幂等,既有部署重跑不炸/不丢行) - GC:保留期 720h + 条数上限 10 万行,挂进审查服务生命周期(Start 起 / Stop 停 / 启动先扫) - 过期即硬删(RevertMerged 只读 memory_items,删留痕不损失回滚能力) - 偏离一处并给理由:表只留 created_at(先例 0017;append-only;加 updated_at 需三份 DDL 真源) - 3 个变异自检(边界 <=/元组比较方向/Retention=0)
This commit is contained in:
1 parent
ddd3d00d09
commit
ffe2518bf4
7 files changed
+861
-9
No files matched your search
@@ -14,11 +14,13 @@ import (
|
||||
// 语义不同、生命周期也不同 —— 审查是已经生效的事实留痕,不是待批准的提议。
|
||||
// 两表共用同一套 id/时间戳口径(主键 id、created_at),词表口径见各列注释。
|
||||
//
|
||||
// 表结构的权威机制仍是 internal/db 的迁移(tidy 的 0019 是范例);本表**尚未
|
||||
// 登记迁移**,改由 NewStore 幂等前滚,与 memory_items / tidy 两表同一手法
|
||||
// (store_schema.go 的口径:记忆存储必须自包含、可在任意 *sql.DB 上使用)。
|
||||
// 迁移登记留给主会话(见 MTB-report.md 的「未做」一节),以免与并行切片
|
||||
// 抢迁移编号。
|
||||
// 表结构的权威机制是 internal/db 的迁移(`0025_memory_ingest_reviews`,切片 W5 补登记);
|
||||
// 本处仍保留幂等前滚,与 memory_items / tidy 两表同一手法(store_schema.go 的口径:
|
||||
// 记忆存储必须自包含、可在任意 *sql.DB 上使用)。两份 DDL **必须逐字同形**:
|
||||
// 少一列就是「新库有、老库无」的漂移(既有部署的表是这里建的,`CREATE TABLE
|
||||
// IF NOT EXISTS` 不会给它们补列),由 preinsert_migration_test.go 逐列/逐索引比对钉住。
|
||||
//
|
||||
// 保留期清扫(按 created_at 删过期行 + 条数上限)见 preinsert_gc.go。
|
||||
|
||||
// createMemoryIngestReviewsTable 是入库前审查的结构化留痕(design/23 §15 D3-8)。
|
||||
// 刻意**不存记忆正文**:命中的既有 id 足以让 owner-only 的读侧回表取正文,
|
||||
|
||||
Reference in new issue
Block a user