外观
第 19 章详细提纲:Context Compaction 与长任务
章节目标
读者完成本章后,能够:
- 区分上下文选择、压缩、记忆写入、工作流恢复和评估接受这五种不同动作。
- 为长任务设计包含摘要、稳定事实锚点、证据指针、保留/丢弃决策、再水化计划和损失检查的 Compaction Record。
- 在预算、阶段边界、交接或分支切换时选择压缩触发点,而不把 token 计数当成唯一条件。
- 让恢复者先验证身份、范围、契约和指针,再决定继续、补证、停止或交给第 18 章恢复策略。
- 用纯内存测试覆盖“缺锚点、错版本、断指针、未经说明的丢弃和不确定项”等保守出口。
核心问题
压缩时,哪些信息是下一轮的稳定前提,哪些只能保留为受控指针,哪些可以丢弃;又如何在继续之前发现摘要遗漏、版本漂移或错误接续?
章节结构
1. 为什么长轨迹不是“越长越完整”
- 用书稿审查任务说明原始聊天、工具结果、草稿和决策会同时累积。
- 来源背景:REF-068 对有限 token 与高信号上下文的讨论;REF-069 的位置敏感实验结果。
- 边界:不宣称任何模型都在固定 token 数后失效;不写性能数字。
2. 压缩、记忆、恢复与评估的责任分层
| 概念 | 负责的问题 | 本章不承担的工作 |
|---|---|---|
| Context Packet | 当前调用看什么 | 不保存或恢复跨轮状态。 |
| Compaction Record | 如何带着最少必要前提进入下一轮 | 不授予读取、写入或恢复权限。 |
| Memory Record | 是否可跨任务保存与读取 | 不决定本次摘要是否足够。 |
| State Record / Checkpoint | 工作流处于何状态 | 不替代证据或任务验收。 |
| Evaluation Spec | 结果是否可接受 | 不选择重试或再水化策略。 |
3. 压缩记录的六个字段
- 摘要: 当前阶段、范围与不能推出的结论。
- 稳定事实锚点: 目标、范围、契约版本、已确认决定、未知项。
- 证据指针: 可受控重读的位置、用途与版本线索。
- 保留/丢弃决策: 类别、理由与可恢复性。
- 再水化计划: 下一动作、先决核验和停止条件。
- 损失检测: 锚点、指针、版本与不确定项是否仍可满足。
4. 何时压缩、何时保留原始材料
- 触发:预算临界、阶段完成、交接、并行分支、异常恢复前。
- 不压缩的例外:未确认的外部效果、法律/合规保留对象、仍在争议的原始证据。
- 设计取舍:轻量摘要适合减少重复;指针和检查更适合保留证明责任。
5. 再水化与损失检测
- 比对运行标识、范围和契约版本。
- 检查必需锚点是否存在,且未知项没有被改写为结论。
- 在授权范围内解析指针;不能解析时不得用摘要补齐。
- 重新读取必须刷新项,并把新的观察交给第 15、17 章。
- 输出
ready_to_resume、needs_evidence、needs_rehydration、needs_review或blocked;本章不执行恢复。
6. 最小示例:纯内存压缩记录判定
- 输入
run、record、policy。 - 覆盖正常恢复、记录不完整、身份错配、契约过期、缺锚点、断指针、丢弃理由缺失、不确定项缺损失检查、缺证据指针。
- 不读取真实会话、文件、网络、模型、时钟、账户或外部记忆。
7. 工程案例:多日书稿审查的恢复包
- 对象:一章仍有待核验引用与尚未完成的图示检查。
- 保留:章节范围、决策、未知引用、校验命令指针、恢复条件。
- 丢弃:重复工具输出和已被更高版本草稿取代的临时措辞。
- 失效出口:摘要与当前版本不匹配时停止接续并重新装配上下文。
8. 常见错误、安全边界与练习
- 把“摘要已生成”当作“信息已保留”。
- 把稳定事实、推测和未决项混进一段叙述。
- 将原始秘密、Cookie、完整日志和用户数据复制进恢复摘要。
- 将
ready_to_resume错写成“真实任务已完成”。
计划图示
diagrams/mermaid/chapter-19-context-compaction-recovery.mmd:从原始轨迹分离锚点、指针、保留/丢弃决策与摘要,进入 Compaction Record;再水化先做身份/版本/损失检测,通过才进入下一轮 Context Packet,失败则补证、重新装配或停止升级。
预计交付物
- 原创正式章节和可追溯局部来源。
- Compaction Record 字段规范与多日书稿审查案例。
assessCompactionRecord纯内存 Node.js 示例和边界测试。- Mermaid 源码、SVG、PNG 与图示审查记录。
- 技术、示例、图示、事实、语言和终审记录。
完成检查
- [x] 小节依赖与第 6、7、10、15、16、17、18 章明确分开。
- [x] 所有外部陈述映射到 REF-068、REF-023 与 REF-069 的限定用途。
- [x] 图示和示例都表达教学协议,而不是产品运行时。
- [x] 没有将原始资料改写成正文结构或长段复刻。
