| name | legal-document-restoration |
| description | 法律文件脱敏稿还原——将外审后的脱敏稿 docx 按比对文件 .md 中的映射表 runs 级还原为原文,保留批注/修订/格式。 适用情形:用户要求还原脱敏稿/还原审核稿/runs 级还原/收到脱敏稿后还原成原文/外审回来后还原入库。 核心:解析比对文件 mapping 段 → runs 级精确替换(不跨 run 边界)→ 每替换一处重建 runInfo → round-trip 校验。 与 legal-document-redaction 互为反向操作——一个写出去,一个读回来。
|
| argument-hint | [脱敏稿 docx + 比对文件 .md] → 输出还原稿 docx + 还原日志 + round-trip 校验 |
| legal_frame | cn-mainland |
| last_reviewed | 2026-06-24T00:00:00.000Z |
| version | 1.0.0 |
| risk_level | high |
| trigger_phrases | ["还原脱敏稿","还原审核稿","还原","比对还原","runs 级还原","restore redaction","restore","reverse redaction","unredact"] |
/legal-document-restoration — 法律文件脱敏稿还原
场景通用原子 skill。本 skill 与 legal-document-redaction 互为反向操作。
输入:脱敏稿(docx)+ 比对文件(.md)+ 比对文件 hash(可选)
输出:还原稿(docx)+ 还原日志 + round-trip 校验报告
一、加载上下文(必读)
调用本 skill 前必须确认:
1. 脱敏稿路径(必填)
2. 比对文件路径(必填)—— 必须包含 mapping 段
3. 输出格式(docx 默认 / md / txt)
4. 是否保留批注 / 修订痕迹(默认保留)
5. round-trip 校验是否启用(默认启用)
6. 适用法域(cn-mainland 默认 / hk / tw / sg / mo / eu)
未指定 → 暂停,要求补充(按 GCL 原子 skill 规范)。
二、还原输入解析
2.1 解析脱敏稿结构
读取脱敏稿 docx → 解析为:
├─ 段落树(paragraphs)
├─ 每个段落含 N 个 run(runs)
├─ 每个 run 含文本(text)+ 格式属性(font, size, color)
└─ 批注 / 修订 / 表格 / 图片 保留
2.2 解析比对文件
读取比对文件 .md → 提取:
├─ ## 批次元数据(批次 UUID / 法域 / 生成时间)
├─ ## 映射表(占位符 | 原文 | 实体类型 | 上下文角色)
└─ 可选 ## 文件 hash(SHA256)—— 用于校验完整性
2.3 完整性校验
若有 hash:
- 计算脱敏稿当前 hash → 与比对文件声明的 hash 对比
- 不一致 → 拒绝还原(标 [ERROR] 比对文件与脱敏稿不匹配)
若无 hash:
- 提示用户确认脱敏稿未被篡改
三、runs 级精确替换(核心)
3.1 替换原则
- 不跨 run 边界:每个占位符必须完整位于一个 run 内,若跨 run 则失败(标 [WARN])
- 按出现顺序处理:从文档头到尾逐个 run 处理,避免重复匹配
- 每替换一处重建 runInfo:替换后立即重建 run 的格式属性(font / size / color / bold 等),避免格式错位
- 大小写敏感:占位符大小写必须与比对文件 mapping 完全一致
3.2 替换流程
步骤 1:扫描所有 run,构建占位符 → run 位置索引
步骤 2:按位置顺序遍历索引
步骤 3:每个占位符执行:
a. 检查是否完整在单 run 内(否则 [WARN] 跳过)
b. 用 mapping 中的原文替换占位符
c. 重建该 run 的格式属性
d. 记录替换日志(位置 / 占位符 / 原文 / 上下文)
步骤 4:保存还原稿 docx
3.3 失败处理
| 失败类型 | 处理 |
|---|
| 占位符跨 run | 标 [WARN] 跳过该占位符,记录位置 |
| 占位符在 mapping 中找不到 | 标 [WARN] 跳过,记录脱敏稿位置 |
| 原文在脱敏稿中已存在 | 标 [WARN] 可能重复占位符,跳过 |
| run 格式属性丢失 | 重建 runInfo,使用前一个 run 的格式兜底 |
四、格式保留
4.1 必须保留
- ✅ 字体 / 字号 / 颜色 / 加粗 / 斜体 / 下划线
- ✅ 段落结构 / 缩进 / 对齐
- ✅ 表格结构 / 单元格合并 / 边框
- ✅ 列表(有序 / 无序 / 多级)
- ✅ 修订痕迹(w:ins / w:del)
- ✅ 批注(w:commentReference)
- ✅ 页眉页脚 / 页码
4.2 不应变更
- ❌ 不修改脱敏稿之外的元数据(作者 / 创建时间)
- ❌ 不删除批注 / 修订(即使与脱敏内容无关)