fix(glossary): 修复历史 V1 漂移并建立 V2 迁移
bat-rust / Build and test Rust (push) Waiting to run
bat-rust / Build and test Go API (push) Waiting to run

This commit is contained in:
2026-09-17 21:25:29 +08:00
parent 7f7d757f15
commit e486f1aaaa
13 changed files with 679 additions and 86 deletions
+8 -9
View File
@@ -313,14 +313,13 @@ T03 → T16
## 完成记录
为 Translation Tasks、Translation Memory 和 Glossary 收口统一的 SQLite
migration contract:现有数据库先以只读方式读取 schema、component version 和结构
fingerprintfuture/unknown/mismatch 在任何写入前 fail closed;确认可迁移后在
`BEGIN IMMEDIATE` 事务内执行显式版本步骤,重读并校验结构后写入版本并提交。Translation
Tasks 按真实历史从 V1 迁移到 V2Translation Memory 和 Glossary 保持真实的 V1
contract,没有凭空引入版本;已覆盖缺失 schema bookkeeping、业务数据保留、失败回滚
重试、并发打开和当前版本 reopen no-op。生产路径不再依赖 `ensure_column` 隐式升级,
相关状态、架构、RPC 参考和缺口文档已同步。
将 Glossary 历史 schema drift 收口为 V2:精确识别真实历史 V1-A(无
`glossary_term_deletions`)和 V1-B(已有 deletion audit 但 version 仍为 1),并在
`BEGIN IMMEDIATE` 内分别执行创建 deletion audit 表或仅提升 bookkeeping version 的
显式迁移。V1-A/V1-B 均兼容缺失 `schema_migrations` 或 component row,未知和 future
schema 仍 fail closed;已验证业务 term/history、deletion audit 保留、失败回滚重试、
V1-A 并发迁移和 V2 reopen no-op。当前 Translation Tasks 为 V2、Translation Memory
为 V1、Glossary 为 V2。
---
@@ -875,7 +874,7 @@ Embedding/vector 不应默认进入第一阶段。
## 目标
在现有 Glossary V1 基础上逐步增加:
在现有 Glossary V2 基础上逐步增加:
* bulk import/export
* richer search