3.8 KiB
3.8 KiB
name, description, disable-model-invocation
| name | description | disable-model-invocation |
|---|---|---|
| 备份作品抽取结果 | 对单本作品的 upgrade_book 派生状态做七域一致性备份、离线复验、回滚演练与精确恢复。需要在重置或高危维护前留下可复验快照、或需要把作品抽取状态恢复到某个备份点时使用;不负责重置、定向修复和正常按窗抽取。 | true |
备份作品抽取状态
何时用:要对某本书的 upgrade_book 派生状态做可离线复验的快照,或要把它恢复到某个已有快照。重置由 重置作品抽取结果 负责,定向修复与存量迁移由 修复作品抽取结果 负责,正常 windows/run/status 由 抽取作品知识 负责。
依赖边界
同书互斥复用 抽取作品知识/scripts/upgrade_work_lock.py 的 PostgreSQL session advisory lock,不复制第二套互斥规则。upgrade_book、parse_upgrade.py、parse-book/SKILL.md 等字符串是存量数据库与备份清单的兼容键,不随 Skill 改名;capture_code_identity 里 key 稳定、value 指向拆分后的真实路径。
输入
| 子命令 | 参数 | 用途 |
|---|---|---|
backup |
--work-id、--expected-chapters、--expected-windows |
一致性导出七域状态到 /private/tmp 下的新目录。 |
verify |
--backup-dir |
纯离线复验已有备份,不加载数据库连接配置。 |
rehearse |
--work-id、--backup-dir、--confirmation-sha |
在真实表的单事务中应用并强制回滚。 |
restore |
--backup-dir、--backup-id、--confirmation-sha、--execute |
精确匹配后逐域读回再提交。 |
.venv/bin/python muse/content/entity/skills/ingest/备份作品抽取结果/scripts/backup_upgrade_work.py backup \
--work-id 8 --expected-chapters 594 --expected-windows 116
.venv/bin/python muse/content/entity/skills/ingest/备份作品抽取结果/scripts/backup_upgrade_work.py verify \
--backup-dir /private/tmp/muse-upgrade-work8-before-reset
.venv/bin/python muse/content/entity/skills/ingest/备份作品抽取结果/scripts/backup_upgrade_work.py rehearse \
--work-id 8 --backup-dir /private/tmp/muse-upgrade-work8-before-reset \
--confirmation-sha <manifest-confirmationSha>
输出
备份目录内七个状态域各一个 JSONL,加 manifest.json 与 manifest.sha256。清单绑定数据库 identity、Canonical 章节与 block、窗口边界、活动字段合同、计划参数和实际代码 fileSha,并给出下游必须精确匹配的 backup_id 与 confirmationSha。verify 输出逐文件行数、主键摘要、内容摘要与文件摘要的复验结论;rehearse 输出应用差异并声明已回滚。
数据边界
backup只在一个REPEATABLE READ READ ONLY事务里读库,不写库、不调用模型;连接关闭后从磁盘独立重算全部摘要。verify只读本地文件。restore --execute是唯一写库入口,写入范围限于目标租户、目标作品、upgrade_book边界内的派生状态。- 备份目录必须是
/private/tmp下尚不存在的新目录;导出失败时删除本次新建目录并非零退出。
红线
- 恢复前固定执行离线
verify;未verify不得restore。 restore --execute必须精确匹配backup_id + confirmationSha,逐域读回后才提交。- work、tenant、数据库 identity、Canonical、窗口、字段合同或代码 fileSha 任一漂移,整体拒绝,不做部分恢复。
- 取锁失败必须在任何业务 SQL、文件验证、嵌入或模型调用之前非零退出。
- 备份清单里的逻辑键不得为了"看起来整齐"改名,否则存量备份立刻不可离线复验。
复利合同
backup并离线复验通过后经propose_lesson_dedup登记example_lesson(绑 work_id / backup_id)。- 升格仍走人工评审,不自动把备份参数升为公共运维规则。