# Gap Surfacer

> 参考资料：支持 /regulatory-legal:gaps 和 /regulatory-legal:comments 的共享差距和意见征集跟踪框架。跟踪未关闭的政策差距及其整改状态， 从 policy-diff 中获取差距，呈现开放和即将到期的事项，路由给负责人， 并通过企业通讯工具通知差距负责人，每次发送前需确认。 由 gaps 和 comments 技能在实质工作前加载。

- Skill: `cslawyer1985/gap-surfacer` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add cslawyer1985/gap-surfacer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/cslawyer1985/gap-surfacer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: cslawyer1985 (https://skillmd.com/u/cslawyer1985)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/cslawyer1985/gap-surfacer

---


# 差距呈现

> 负责人通知：默认开启。如需选择某个负责人不接收通知，将 `owner_contact` 留空。

## 逐次发送确认——无例外

在发送**任何**通知消息（分配通知、逾期提醒、批量通知、状态报告）之前：

1. 向用户展示你即将发送给谁、发送什么内容。
2. 等待明确的同意。
3. 绝不要不经确认就发送。不因是定时任务而跳过。不因是批量而跳过。不因昨天发送过而跳过。

未经确认的自动发送是本插件中最不可逆的操作——发送了插件自身页脚声明可能出错的内容，给无法检查的人。这种组合不能跳过审阅。

---

## 目的

差距被发现后就忘了。此技能跟踪它们直到关闭，并通知负责关闭它们的人。

## 跟踪文件

位于 `~/.claude/plugins/config/claude-for-legal-zh/regulatory-legal/gap-tracker.yaml`：

```yaml
gaps:
  - id: GAP-001
    requirement: "[法规要求的内容]"
    regulation: "[名称 + 引用]"
    policy_affected: "[名称或'需要制定新政策']"
    gap_type: "partial"  # none | partial | full | new-policy | watch | comment-decision
    owner: "[政策索引中的姓名]"
    owner_contact: "[联系方式，如已知]"
    opened: 2026-03-01
    due: 2026-06-01  # 法规生效日期、内部截止日期或意见征集截止日期
    status_verified: true  # 如果上游政策差异分析无法确认法规有效，则为false；未验证的事项永不会进入🔴逾期分类
    status: "open"  # open | in-progress | closed | risk-accepted
    notified: false  # 分配通知发送后设为true
    resolution: ""  # 关闭时填写
```

**绝不要将差距分类为"逾期"——如果法规未经验证。** 🔴逾期分类意味着"我们错过了一个具有约束力的截止日期"。如果法规状态未经验证（政策差异分析设置了 `status_verified: false`，或法规>12个月/已超过适用日期且未确认时效性），截止日期可能不具有约束力。使用🟡"需要审查"并注明。

**`gap_type` 语义：**

| 值 | 含义 | 典型提醒频率 |
|----|------|------------|
| `none` | 政策已涵盖此要求。仅为审计追踪记录。 | 无自动提醒。 |
| `partial` | 政策涵盖该主题但未完全覆盖新要求。需要修订。 | 到期前30天。 |
| `full` | 政策与新要求矛盾或未提及。需要重写或添加新章节。 | 到期前30天。 |
| `new-policy` | 现有政策中无此项内容。需要起草政策。 | 到期前30天。 |
| `watch` | 前瞻性事项——预征求意见、调研通知、尚未最终确定的征求意见稿。当前没有合规义务；政策工作等待正式法规出台。`due:` 是重访日期，不是合规截止日期。 | 无自动提醒；在征求意见稿发布时或重访日期重新评估。 |
| `comment-decision` | 预规则意见征集决策待定——团队正在决定是否提交反馈意见。`due:` 是意见征集截止日期。 | 截止日期前21天（比合规差距更紧凑）。 |

## 模式

### 模式1：从政策差异分析中获取

当政策差异分析发现差距时，追加到 gap-tracker.yaml。去重——相同要求 + 相同政策 = 相同差距，不重复计算。

**获取后，通知负责人：**

如果企业通讯工具可用且 `owner_contact` 已设置：向差距负责人发送通知——但仅在完成逐次发送确认之后。预览消息给用户，等待明确的同意，然后发送。发送后将 `notified: true` 设置在跟踪条目中。

### 模式2：状态报告

```markdown
[工作成果头 — 按照插件配置 ## 输出]

## 开放差距 — [日期]

### 要点

[N个差距需要在[日期]前采取行动 — 前3项：X、Y、Z]

### 🔴 逾期

| ID | 要求 | 政策 | 负责人 | 截止日期 | 逾期天数 |
|----|------|------|--------|----------|---------|
| | | | | | |

### 🟠 30天内到期

[同上]

### 🟡 开放

[同上]

### 👀 观察事项（前瞻性——预法规）

[预法规跟踪——`watch` 和 `comment-decision` 条目。这些不是合规差距。单独呈现。]

### 进行中

[同上]

### 最近关闭

[最近5项，附解决方案]

---

**最早开放的差距：** [ID]，[N]天
**按负责人分组的差距：** [分布]
**负责人通知已发送：** [N] / [N个总差距]

---

**依赖前核实引注。** 此跟踪文件中的法规引注由AI在上游生成（reg-feed-watcher 和 policy-diff），未经对照一手来源核实。在关闭、接受风险或引用到任何合规声明、董事会报告或监管机构回复之前，通过法律研究工具确认。
```

### 模式3：关闭差距

更新状态为 closed，记录解决方案和关闭日期。

### 模式4：风险接受

有时答案是"我们不打算修复这个"。这是一个有效的决定——但应被记录。

状态 → risk-accepted。保留在跟踪文件中（不删除），但不出现在开放差距报告中。

## 收尾

以 CLAUDE.md `## 输出` 规定的下一步决策树收尾。

如果跟踪器呈现超过约10个开放差距，或用户任何时候提出要求：提供仪表板——按严重程度统计、按截止日期排列的差距时间线、及附有负责人、状态和最后更新日期的可排序网格。

---

## 本技能不做的事

- 不自行关闭差距。关闭需要解决方案说明和该说明所描述的人工操作。
- 如果企业通讯工具未配置，不发送通知。回退到在状态报告中标记。
- 不对每个差距在7天内发送超过一次提醒。提醒一次，不反复催促。

