49 lines
5.5 KiB
Markdown
49 lines
5.5 KiB
Markdown
# 数据切换与回退执行单
|
||
|
||
本文供 W29—W31 使用。新实现通过隔离演练后才接管正式写入;当前准备计划不执行连接、迁移、停机或发布。
|
||
|
||
## 环境与基线
|
||
|
||
明确旧应用、旧 PG、旧 SQLite、私人文件、受控 raw/归档、新应用、独立新目标库、开发库和验收库的位置与用途。开发库只能保存可重放数据。验收使用实际作者材料前核对授权与保存方式;不能让测试默认连接正式库。
|
||
|
||
基础设施位置优先采用项目明确配置;无覆盖时按全局分工核对 mini-infra 的持久服务与 mini-desktop 的构建/发布职责。执行者需实查当时服务和连接引用,不能只根据主机名修改进程。凭据值留在受控存储,切换包仅保存引用。
|
||
|
||
切换包固定:旧来源快照与最终增量范围、内容哈希、旧新身份映射、完整迁移版本及校验和、资源发布身份、目标配置、未决差异、在途任务/调用、原文租约/归档状态、恢复入口及观察判据。
|
||
|
||
## 演练与切换步骤
|
||
|
||
| 步骤 | 动作 | 通过条件 | 失败处理 |
|
||
|------|------|----------|----------|
|
||
| C01 完整空库演练 | 从空验收库装最终基线、用途角色与结构种子 | 迁移按依赖成功,实际约束和权限用例通过 | 保留失败记录,重建验收库;旧生产不变 |
|
||
| C02 全量导入 | 读取授权快照,按来源命名空间、K01—K08 和生命周期转换 | 每条源记录为明确目标、历史保留或可解释隔离;字节与关系对账 | 不静默丢弃,修正规则后重演练 |
|
||
| C03 恢复验证 | 从备份恢复完整内容、结构、关系和授权状态,再跑旅程 | 原文和决定可读,动态字段可解释,关键旅程通过 | 保留原快照与备份,不能进入切换 |
|
||
| C04 固定候选发布包 | 固定应用/前端/Skill/Schema/配置版本,并核对切换动作授权 | 成品与演练一致,观察及回退条件具体可审 | 产物改变则重验受影响部分;不沿用旧结果 |
|
||
| C05 停旧写与旧领取 | 停旧作者写入口和后台领取,盘点在途任务与模型调用 | 旧请求不能继续写,未知调用有单独对账结果 | 保持旧正式权威,排清在途状态;不盲目重发 |
|
||
| C06 最终增量 | 导入停写后的增量,重算相关内容和引用差异 | 源与目标截止点一致,正文/事实/决定/归档齐全 | 新写仍关闭,修复或按首笔写入前方案回退 |
|
||
| C07 权限与路由交接 | 验证旧写权关闭后启用新唯一写入口 | 不存在旧新双写窗口,首笔新生产写入可定位 | 立即停新写并进入适用窗口的恢复方案 |
|
||
| C08 观察与实际试用 | 检查真实作品操作、任务、派生、原文和恢复状态 | 约定观察动作均完成,数据不变量和关键旅程无阻断失败 | 停止受影响动作,保全新增数据并修复;不以等待时长当作通过 |
|
||
| C09 旧实现退出 | 核对全部替代包、用例和数据条件,逐项清理旧入口/配置/代码 | 活跃引用已改接,恢复资产与历史用途清楚 | 恢复误删资料,重新核对;不能恢复第二条正式写路径 |
|
||
|
||
W29 必须事先约定观察动作与结束条件,例如真实正文保存、采纳、一次章后失败重试、刷新恢复及索引读取。观测指标包括错误分类、版本冲突、重复写入、派生积压、未知调用、原文清理/归档异常和迁移差异。没有设定观察动作时不启动 C07,不以一个任意固定时长或“页面能打开”替代观察。
|
||
|
||
## 两个回退窗口
|
||
|
||
| 窗口 | 允许的处理 | 不能承诺的事情 |
|
||
|------|------------|----------------|
|
||
| 新系统尚无正式写入 | 停新入口,核对旧库仍是停写时完整基线,再恢复旧写权限和路由 | 不能在旧新都可写时直接切路由 |
|
||
| 已有新正文、事实、决定或任务写入 | 先停新写并保全增量,优先修复新版或恢复兼容的新版程序;只有已验证反向转换时才能切回旧系统 | 不能仅回退代码、丢弃新库或覆盖新稿;不能假设旧结构能解释新元数据和决策 |
|
||
|
||
若没有可验证的反向转换,出现阻断问题后的安全状态是停止相关写入、保留新数据并恢复新版,不是无条件恢复旧程序。恢复备份前核对新增版本与作者未提交缓冲,不能把它们当可清缓存。
|
||
|
||
## 原文与历史特别处理
|
||
|
||
临时原文、持久证据和受控归档严格遵守[生命周期合同](../接口契约/原文证据生命周期.md)。migrating 原文先对账,不得因停机、过期或旧代码退出而被普通清理删除;已归档字节与回执须在新目标可核对。来源授权不能因迁移提升。
|
||
|
||
旧 PG 的正式内容不被 SQLite review 覆盖。SQLite 独有的运行、审阅、反馈、经验和向量身份要分别承接;原本只有指针的记录不能被伪装成完整内容。旧数据、备份、私人草稿及研究材料的保留与代码删除分别决定。
|
||
|
||
旧源码说明和测试取证在退出时转为固定基线引用:优先使用已获授权提交的不可变版本;尚无提交时使用 W00 的内容快照及哈希索引。不能只引用缺少未提交改动的 HEAD,也不为维持旧链接长期保留可执行的重复写入口。
|
||
|
||
## 交付回执
|
||
|
||
记录实际截止点、发布版本、权限交接、首笔新写入、增量与差异、关键用例结果、观察动作、原文状态、回退窗口和保留资产位置。缺失项保持未完成,不生成伪成功回执。
|