From cf784aadfd2169b15e15c4b999db5a7848b57913 Mon Sep 17 00:00:00 2001 From: Mengz <2567587994@qq.com> Date: Mon, 20 Jul 2026 16:27:12 +0800 Subject: [PATCH] =?UTF-8?q?feat(skills):=20=E6=8E=A5=E5=85=A5=20PR=20?= =?UTF-8?q?=E8=AF=81=E6=8D=AE=E5=8C=85=E4=B8=8E=E9=98=9F=E5=88=97=E5=B7=AE?= =?UTF-8?q?=E5=BC=82=E8=83=BD=E5=8A=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- skills/gitlink-cli-contract-guard/SKILL.md | 12 +++++ skills/gitlink-code-review/SKILL.md | 10 ++++ skills/gitlink-maintainer-radar/SKILL.md | 11 +++++ skills/gitlink-pr-integrator/SKILL.md | 10 ++++ skills/gitlink-pr-topology/SKILL.md | 11 +++++ skills/gitlink-shared/SKILL.md | 2 + .../maintenance-evidence-workflow.md | 49 +++++++++++++++++++ 7 files changed, 105 insertions(+) create mode 100644 skills/gitlink-shared/references/maintenance-evidence-workflow.md diff --git a/skills/gitlink-cli-contract-guard/SKILL.md b/skills/gitlink-cli-contract-guard/SKILL.md index 19fb1ec..bc3401d 100644 --- a/skills/gitlink-cli-contract-guard/SKILL.md +++ b/skills/gitlink-cli-contract-guard/SKILL.md @@ -8,6 +8,18 @@ metadata: cliHelp: "gitlink-cli pr --help" --- +## 已合并功能的增量证据 + +前置 PR #426 和 #427 同时扩展了 workflow 命令的参数与可选 JSON 字段。本 Skill 应把它们作为契约变更样本,核对旧调用是否保持兼容、新开关默认值、`changes`/`commits`/`ci_builds` 字段的可选性,以及 JSON 输出没有 ANSI、HTML 或敏感值: + +```bash +gitlink-cli workflow +review-context --help +gitlink-cli workflow +review-queue --help +gitlink-cli workflow +review-queue --from queue.json --previous queue-previous.json --format json +``` + +本 Skill 只输出 `CG-` 契约问题;不把新增字段本身判为破坏性变化,也不替代代码质量、队列治理或集成门禁结论。 + # gitlink-cli-contract-guard **CRITICAL - 如果需要拉取 GitLink 上的 PR 元数据、diff 或评论,先阅读 [`../gitlink-shared/SKILL.md`](../gitlink-shared/SKILL.md)。** diff --git a/skills/gitlink-code-review/SKILL.md b/skills/gitlink-code-review/SKILL.md index 46281ea..460ef07 100644 --- a/skills/gitlink-code-review/SKILL.md +++ b/skills/gitlink-code-review/SKILL.md @@ -8,6 +8,16 @@ metadata: cliHelp: "gitlink-cli pr --help" --- +## 已合并功能的增量证据 + +前置 PR #426 合并后,优先用 `workflow +review-context` 一次获取变更文件、Review、提交记录和 CI 结果,再进行本 Skill 的代码质量、测试充分性和代码安全审查: + +```bash +gitlink-cli workflow +review-context --owner --repo --number --include-commits=true --include-ci=true --format json +``` + +本 Skill 只消费代码层证据;CI 失败可以作为审查依据,但不直接替代 `gitlink-pr-integrator` 的合并门禁。若 `sections` 缺少 `commits` 或 `ci_builds`,或 `notes` 标记探针失败,相关结论必须标记为 `partial`。 + # gitlink-code-review(智能代码审查) **CRITICAL — 开始前必须先阅读 [`../gitlink-shared/SKILL.md`](../gitlink-shared/SKILL.md),其中包含认证、权限处理和 API 注意事项。** diff --git a/skills/gitlink-maintainer-radar/SKILL.md b/skills/gitlink-maintainer-radar/SKILL.md index 285af7a..02b8876 100644 --- a/skills/gitlink-maintainer-radar/SKILL.md +++ b/skills/gitlink-maintainer-radar/SKILL.md @@ -8,6 +8,17 @@ metadata: cliHelp: "gitlink-cli pr --help" --- +## 已合并功能的增量证据 + +前置 PR #427 的队列差异是本 Skill 的增量输入。值班扫描应优先展示 `new`、`priority_changed`、`risk_changed` 和 `resolved`,把未变化项压缩为数量;需要深入某个 PR 时,再用前置 PR #426 的证据包补齐 Review、提交和 CI 状态: + +```bash +gitlink-cli workflow +review-queue --owner --repo --previous queue-previous.json --format json +gitlink-cli workflow +review-context --owner --repo --number --include-ci=true --format json +``` + +本 Skill 只负责 SLA、Reviewer 负载、责任停滞和今日待办;`risk_changed` 是提醒信号,不直接宣称代码存在漏洞或阻断合并。 + # gitlink-maintainer-radar **CRITICAL - 先阅读 [`../gitlink-shared/SKILL.md`](../gitlink-shared/SKILL.md),按其中的认证、全局参数和安全规则执行。** diff --git a/skills/gitlink-pr-integrator/SKILL.md b/skills/gitlink-pr-integrator/SKILL.md index 41e62b6..0cc597b 100644 --- a/skills/gitlink-pr-integrator/SKILL.md +++ b/skills/gitlink-pr-integrator/SKILL.md @@ -8,6 +8,16 @@ metadata: cliHelp: "gitlink-cli pr --help" --- +## 已合并功能的增量证据 + +前置 PR #426 合并后,先复用统一 PR 证据包,再进入本 Skill 的独立 worktree 验证。重点读取 `commits`、`ci_builds`、`sections` 和 `notes`,将 CI 状态与本地构建、测试结果一起纳入集成门禁: + +```bash +gitlink-cli workflow +review-context --owner --repo --number --include-commits=true --include-ci=true --format json +``` + +本 Skill 只负责合并态、构建、测试、契约和发布影响,不代替代码审查。已有队列快照时可读取前置 PR #427 的 `changes`,但它只能辅助排序,不能跳过本地验证。 + # gitlink-pr-integrator **CRITICAL - 开始前先阅读 [`../gitlink-shared/SKILL.md`](../gitlink-shared/SKILL.md)。** diff --git a/skills/gitlink-pr-topology/SKILL.md b/skills/gitlink-pr-topology/SKILL.md index 9c7621b..75581cd 100644 --- a/skills/gitlink-pr-topology/SKILL.md +++ b/skills/gitlink-pr-topology/SKILL.md @@ -8,6 +8,17 @@ metadata: cliHelp: "gitlink-cli pr --help" --- +## 已合并功能的增量证据 + +前置 PR #426 提供统一的 PR 文件、提交和 Review 证据;前置 PR #427 提供队列变化。拓扑分析可以先取一次队列快照,再为候选关系补取证据,减少对整条 open PR 队列的重复请求: + +```bash +gitlink-cli workflow +review-queue --owner --repo --previous queue-previous.json --format json +gitlink-cli workflow +review-context --owner --repo --number --include-commits=true --format json +``` + +本 Skill 只输出 `TP-` 关系、证据、置信度和处理顺序,不把队列变化直接解释为代码缺陷,也不替代 `gitlink-code-review` 和 `gitlink-pr-integrator` 的结论。 + # gitlink-pr-topology **CRITICAL - 开始前先阅读 [`../gitlink-shared/SKILL.md`](../gitlink-shared/SKILL.md)。** diff --git a/skills/gitlink-shared/SKILL.md b/skills/gitlink-shared/SKILL.md index ddc227c..f630fa0 100644 --- a/skills/gitlink-shared/SKILL.md +++ b/skills/gitlink-shared/SKILL.md @@ -8,6 +8,8 @@ metadata: cliHelp: "gitlink-cli --help" --- +五个维护 Skill 的证据复用和职责边界见 [`references/maintenance-evidence-workflow.md`](references/maintenance-evidence-workflow.md)。前置 PR #426 提供单 PR 证据包,前置 PR #427 提供队列快照差异;二者只提供只读基础数据,不合并五个 Skill 的职责。 + # gitlink-cli 共享规则 维护者类 Skill 的报告协议见 [`references/maintenance-report-contract.md`](references/maintenance-report-contract.md),安全检查见 [`references/security-review-matrix.md`](references/security-review-matrix.md),五个维护 Skill 的核心职责、允许重叠范围和交接见 [`references/skill-scope-and-handoff.md`](references/skill-scope-and-handoff.md)。生成报告时先给执行摘要,再提供可追溯的证据附录;JSON 不得混入展示层样式。 diff --git a/skills/gitlink-shared/references/maintenance-evidence-workflow.md b/skills/gitlink-shared/references/maintenance-evidence-workflow.md new file mode 100644 index 0000000..3d329c7 --- /dev/null +++ b/skills/gitlink-shared/references/maintenance-evidence-workflow.md @@ -0,0 +1,49 @@ +# 维护 Skill 证据工作流 + +这份协议把五个维护 Skill 的输入分成两层:单个 PR 的证据包,以及 open PR 队列的变化快照。它们是基础数据,不是新的“总控 Skill”;每个 Skill 仍然只对自己的职责给出结论。 + +## 单个 PR 证据包 + +前置 PR #426 合并后,优先使用以下只读命令: + +```bash +gitlink-cli workflow +review-context \ + --owner --repo --number \ + --include-commits=true --commit-limit 100 \ + --include-ci=true --ci-limit 20 --format json +``` + +证据包包含仓库信息、PR 详情、变更文件、Reviews、提交记录和 CI 构建结果。所有集合都有上限;某个探针失败时检查 `notes` 和 `sections`,不能把缺失数据写成“通过”。已有调用不传新增开关时保持原行为。 + +## 队列变化快照 + +前置 PR #427 合并后,先保存 JSON 基线,再在下一轮比较: + +```bash +gitlink-cli workflow +review-queue \ + --owner --repo --format json > queue-previous.json + +gitlink-cli workflow +review-queue \ + --owner --repo \ + --previous queue-previous.json --format json +``` + +`changes` 只表达队列事实:`new`、`resolved`、`priority_changed`、`risk_changed` 和 `unchanged`。它不替代代码审查、集成门禁或维护者判断。无 PR 编号的本地输入只能按规范化标题匹配,报告必须降低置信度。 + +## 五个 Skill 的消费边界 + +| Skill | 使用单 PR 证据 | 使用队列变化 | 最终只负责什么 | +|---|---|---|---| +| `gitlink-code-review` | 文件、提交、Review、CI | 不需要 | 代码质量、测试充分性和代码层安全问题 | +| `gitlink-pr-integrator` | PR 详情、提交、CI、已有结论 | 可读取变化作为上下文 | rebase、构建、测试、契约和合并态门禁 | +| `gitlink-pr-topology` | PR 详情和文件摘要 | 新增/解决项作为关系图增量 | PR 间依赖、重叠、冲突和替代关系 | +| `gitlink-maintainer-radar` | Review 和 PR 元数据 | 重点消费新增、风险变化和已解决项 | SLA、Reviewer 负载、责任停滞和今日待办 | +| `gitlink-cli-contract-guard` | 文件、帮助、JSON 和错误证据 | 只在涉及 workflow flags/JSON 时消费 | CLI 参数、帮助、输出、错误和编码契约 | + +## 组合运行规则 + +1. 先获取一次证据包和队列快照,后续 Skill 通过 `sections`、`notes` 和 `changes` 判断证据完整性。 +2. 单独运行某个 Skill 时只读取它需要的字段,并把其他维度标记为未纳入本次检查。 +3. 组合运行时允许共享事实和安全信号,但发现编号必须保留各自前缀:`CR-`、`IN-`、`TP-`、`MR-`、`CG-`。 +4. 同一事实可以被多个 Skill 引用,但只能由负责该维度的 Skill 生成最终动作;例如 CI 失败可以被代码审查引用,却只能由集成 Skill 决定是否形成合并阻断。 +5. 任何探针失败或快照缺失都输出 `not_run`/`partial`,不能用默认值填充成功结论。