2.2 KiB
2.2 KiB
工作流 PR 证据包
变更说明
在现有 workflow +review-context 的基础上增加可选的提交记录和 CI 构建结果,并为文件、Review、提交和构建结果统一提供数量上限。默认行为保持不变;只有显式启用 --include-commits=true 或 --include-ci=true 时才会请求新增接口。
这项基础能力用于支撑已经合并的 PR 维护 Skills:代码审查可以把提交记录、变更文件和 Review 放在同一份证据中,集成检查可以使用 CI 结果作为合并门禁,契约守卫可以验证新增输出仍然是有界且可机器读取的,维护者雷达和 PR 拓扑分析也可以复用同一份上下文而不重复请求 API。该 PR 只提供只读证据,不替代五个 Skill 各自的判断职责。
使用示例
gitlink-cli workflow +review-context \
--owner Gitlink --repo gitlink-cli --number 1 \
--include-commits=true --commit-limit 30 \
--include-ci=true --ci-limit 20 \
--format json
新增结果字段:
commits:PR 提交记录,只有启用include-commits时出现。ci_builds:仓库 CI 构建记录,只有启用include-ci时出现。ci_summary:优先按 PR head SHA 关联构建,找不到 SHA 匹配时回退到 head branch;状态统计只包含匹配构建,并显式给出unmatched,避免把其他分支的失败构建误判为当前 PR 失败。sections:成功获取的证据分区,便于 Agent 判断证据是否完整。notes:单个证据探针失败时的可解释记录,不会伪造成功数据。
兼容性与安全
- 旧参数、旧默认请求和已有 JSON 字段保持兼容。
- 所有新增请求均为
GET,不会评论、审批、合并、关闭或修改远程资源。 - 每个列表都带有上限,避免大仓库响应无限膨胀。
- CI 获取失败时保留其他证据,并在
notes中标记为不可用;只有所有启用分区都失败时才返回错误。 - 标签列表兼容
issue_tags和tags包装,避免接口返回标签数据时被错误解析为空。
验证
go test ./shortcuts/workflow -run 'TestFetchReviewContext|TestSummarizeReviewCI|TestRenderReviewContextFormats' -count=1
go build ./...