Skip to content

fix: concise summaries and header preservation for v2.0.5 - #11

Merged
lvj-repox merged 12 commits into
mainfrom
feat/concise-summary-20260920
Sep 20, 2026
Merged

lvj-repox merged 12 commits into
mainfrom
feat/concise-summary-20260920

Conversation

@lvj-repox

@lvj-repox lvj-repox commented Sep 20, 2026 •

Copy link
Copy Markdown
Contributor

v2.0.5 已合并并发布

Release v2.0.5。合并提交 50433a6;v2.0.5 与 stable 均指向此提交,旧版本标签不变。

改动

  • 保留4个 Job/检查名称,摘要精简、实际版本/SHA、无需检查状态、同位置诊断合并保留证据。
  • 作者/提交者邮箱、标题/正文、合规头、敏感文案独立正反例测试。
  • 修复 AmD/XgMi 完整词漏检,仍仅提示。
  • 版权/SPDX 比较忽略空白、换行和常见注释包装;保护跨行权利人。
  • 完整标准 MIT/BSD-3-Clause 正文及 Apache-2.0 声明头可无 SPDX;删除原条款/免责声明仍阻断。
  • 不将代码字符串视作头文件声明;未知/残缺变体不推断已准入,不推断H1/H2/H3,不自动修改源码。
  • README、中英文说明、包版本、Workflow 版本与发布说明同步到 v2.0.5。

验证

合并后CI通过126项单元测试、原生自测、编译及真实Gitleaks测试。集群启动测试6/6(含Python3.8拒绝用例)通过,真实扫描器21/21符合预期(15原有+6许可证专项)。
消费者完整MIT头测试通过。
发布后stable验证用于检查实际发布引用。
测试PR #33禁止合并。ci.yml已恢复本次操作前的disabled_manually状态。

完整模板识别受模板范围和扫描行数限制,不等同法律适用性或原创归属证明。

@hygon-ai-reviewer

hygon-ai-reviewer Bot commented Sep 20, 2026 •

Copy link
Copy Markdown

AI Review

审查尚未完整完成,无法给出整体结论;当前没有可发布的已确认问题,不代表代码没有问题。

部分结果不可用:1/2 批未完整完成,已保留可用问题。

审查未完整完成:以 GitHub 返回的 PR diff 为主体,关联上下文仅用于核验,未运行代码。

覆盖情况:共 8 个文件,已审查 0 个,部分审查 7 个,待审查 1 个。

进度已保存。正在继续处理。

@hygon-ai-reviewer

Copy link
Copy Markdown

AI Review

审查尚未完整完成,无法给出整体结论;当前没有可发布的已确认问题,不代表代码没有问题。

审查未完整完成:以 GitHub 返回的 PR diff 为主体,关联上下文仅用于核验,未运行代码。

覆盖情况:共 8 个文件,已审查 0 个,待审查 8 个。

进度已保存。正在继续处理。

@hygon-ai-reviewer

Copy link
Copy Markdown

AI Review

审查尚未完整完成,无法给出整体结论;当前没有可发布的已确认问题,不代表代码没有问题。

审查未完整完成:以 GitHub 返回的 PR diff 为主体,关联上下文仅用于核验,未运行代码。

覆盖情况:共 8 个文件,已审查 0 个,待审查 8 个。

进度已保存。正在继续处理。

@hygon-ai-reviewer

hygon-ai-reviewer Bot commented Sep 20, 2026 •

Copy link
Copy Markdown

AI Review

审查尚未完整完成,无法给出整体结论;当前没有可发布的已确认问题,不代表代码没有问题。

部分结果不可用:1/2 批未完整完成,已保留可用问题。

审查未完整完成:以 GitHub 返回的 PR diff 为主体,关联上下文仅用于核验,未运行代码。

覆盖情况:共 8 个文件,已审查 0 个,部分审查 2 个,待审查 6 个。

进度已保存。正在继续处理。

@hygon-ai-reviewer hygon-ai-reviewer Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AI Review

🟡 建议修改

发现有明确证据的问题,建议核对并处理。

已确认 1 个问题,其中 1 个已添加到对应代码行。

变更概览

本次变更主要包含:

  • 摘要工作流新增门禁版本环境变量与执行 SHA 传递,审核脚本记录版本信息,步骤摘要改为展示版本/SHA 与以仓库保护规则为准的判定文案,并将汇总状态表折叠。
  • local_executor 在无适用目标时将 semgrep/ruff 扫描状态由 passed 改为 not-applicable,用于区分无适用源码文件与扫描通过。
  • 门禁摘要渲染重构:以各检查项名称作为标题,新增状态结论行、阻断/提示计数以及门禁版本与执行 SHA 展示,将扫描范围详情折叠进 details 块,并细化四个内置检查显示名称、新增“无需检查”状态标签。
  • 重构必须修改区块渲染:将阻断问题按文件路径与行号聚合,逐项显示检查名称与证据,并对修复建议去重
文件审查摘要
文件 变更 审查结果
tests/test_summary_presentation.py 新增 · +53/-0 P3 × 1
src/hygon_pr_gate/render_summary.py 修改 · +34/-36 —
.github/workflows/pr-quality-gate.yml 修改 · +14/-5 —
docs/plans/2026-09-20-summary-design.md 新增 · +13/-0 —
tests/pr_gate_self_test.py 修改 · +5/-4 —
src/hygon_pr_gate/local_executor.py 修改 · +2/-2 —
src/hygon_pr_gate/audit_pr.py 修改 · +3/-0 —
src/hygon_quality_security/models.py 修改 · +1/-1 —
审查信息
  • 变更统计:8 个文件,+125/-48。
  • 覆盖情况:共 8 个文件,已完整审查 8 个。
  • 候选问题:1 项;证据复核过滤:0 项;发布前敏感信息保护:0 项。
  • 本服务以 GitHub 提供的 PR diff 为审查主体,PR 描述与按相关性选取的仓库片段仅用于核验;未执行代码或重跑测试,结论仍需维护者核验。
提交修复并推送新 commit 后,将自动审查 PR 的最新版本。

Comment thread tests/test_summary_presentation.py Outdated
self.assertNotIn('Repository /', visible)
self.assertEqual(text.count('本检查通过'), 1)

def test_no_targets_is_not_passed(self):

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3 · test_no_targets_is_not_passed 缺少与名称对应的未通过断言

触发条件: 若摘要实现在全部扫描器均为 not-applicable(无适用文件)时错误显示“本检查通过”,运行该回归测试验证该场景

证据与影响: 测试方法名为 test_no_targets_is_not_passed,但函数体仅有 self.assertIn('| Ruff | 无需检查 |', text),从未断言“本检查通过”不出现在结果中,与 test_failed_and_partial_are_not_success 的断言方式不一致 该测试在被测实现发生相关回归(无适用文件却显示成功标识)时仍会通过,无法为本次新增的 not-applicable 展示行为提供回归保护

修改建议: 在该测试中追加 self.assertNotIn('本检查通过', text),补齐与测试名称一致的断言

@hygon-ai-reviewer

hygon-ai-reviewer Bot commented Sep 20, 2026 •

Copy link
Copy Markdown

AI Review

发现 1 个问题。

[P2] job.workflow_sha 非有效上下文属性,执行 SHA 恒为空

  • 位置:.github/workflows/pr-quality-gate.yml:131
  • 触发条件:任一 PR 触发门禁后 result 步骤渲染摘要、incremental_check 步骤读取环境变量时。
  • 证据与影响:新增语句 QUALITY_GATE_SHA: ${{ job.workflow_sha }}。GitHub Actions 的 job 上下文仅包含 status、container、services 等已知属性,没有 workflow_sha;对未定义属性的表达式会求值为空字符串,不会报错,两个 job 中用法相同。 摘要中『执行 SHA:』后内容始终为空,PR 描述声称显示的执行提交无法核对,显示功能失效。
  • 修改建议:将 ${{ job.workflow_sha }} 改为 ${{ github.sha }}(触发事件提交 SHA,如需 PR head 则用 github.event.pull_request.head.sha),并人工核验摘要输出。

部分结果不可用:2/4 批未完整完成,已保留可用问题。

审查未完整完成:以 GitHub 返回的 PR diff 为主体,关联上下文仅用于核验,未运行代码。

覆盖情况:共 11 个文件,已审查 0 个,部分审查 9 个,待审查 2 个。

进度已保存。正在继续处理。

@hygon-ai-reviewer hygon-ai-reviewer Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AI Review

🟡 建议修改

发现有明确证据的问题,建议核对并处理。

已确认 1 个问题,其中 1 个已添加到对应代码行。

变更概览

本次变更主要包含:

  • 增量门禁汇总精简:workflow 定义门禁版本与执行 SHA 环境变量,结果步骤将其写入审计数据与顶部摘要,并调整判定措辞与折叠布局。
  • semgrep/ruff 无适用变更源码或无 Python 变更时状态由 passed 改为 not-applicable,并在 CI 单元测试步骤设置 CORE_GOVERNANCE_SUMMARIES=1 启用核心治理汇总。
  • 摘要渲染重构:顶部改为显示检查名、通过/阻断状态、阻断与提示计数、门禁版本及执行 SHA,仓库与扫描范围详情折叠进 details 标签;新增无需检查状态标签,四个内置扫描器显示名改为各自的中文专项名称。
  • 重构摘要的必须修改区块:阻断问题按同文件同位置分组合并为单一位置标题,逐条保留各问题的证据,并对修复建议去重后输出。
文件审查摘要
文件 变更 审查结果
tests/test_summary_presentation.py 新增 · +53/-0 P3 × 1
tests/test_core_governance.py 新增 · +214/-0 —
src/hygon_pr_gate/render_summary.py 修改 · +34/-36 —
docs/plans/2026-09-20-core-regressions.md 新增 · +21/-0 —
.github/workflows/pr-quality-gate.yml 修改 · +14/-5 —
docs/plans/2026-09-20-summary-design.md 新增 · +13/-0 —
tests/pr_gate_self_test.py 修改 · +5/-4 —
src/hygon_pr_gate/sensitive_diff_check.py 修改 · +7/-1 —
src/hygon_pr_gate/local_executor.py 修改 · +2/-2 —
src/hygon_pr_gate/audit_pr.py 修改 · +3/-0 —
src/hygon_quality_security/models.py 修改 · +1/-1 —
.github/workflows/ci.yml 修改 · +1/-0 —
审查信息
  • 变更统计:12 个文件,+368/-49。
  • 覆盖情况:共 12 个文件,已完整审查 12 个。
  • 候选问题:1 项;证据复核过滤:0 项;发布前敏感信息保护:0 项。
  • 本服务以 GitHub 提供的 PR diff 为审查主体,PR 描述与按相关性选取的仓库片段仅用于核验;未执行代码或重跑测试,结论仍需维护者核验。
提交修复并推送新 commit 后,将自动审查 PR 的最新版本。


def test_no_targets_is_not_passed(self):
text = self.render(statuses=[dict(scanner='ruff', state='not-applicable', detail='无 Python 变更')])
self.assertIn('| Ruff | 无需检查 |', text)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3 · 无适用目标测试未断言不显示通过措辞

触发条件: 当无适用扫描目标时摘要被错误标记为通过措辞,运行 test_no_targets_is_not_passed 仍会通过

证据与影响: 用例名为 test_no_targets_is_not_passed,但唯一断言是 assertIn('| Ruff | 无需检查 |', text),未验证『不显示通过』这一名称所声明的行为,与 test_failed_and_partial_are_not_success 中的反向断言形成对比 若 render_summary 回归为在仅含 not-applicable 状态时输出本检查通过,该测试无法发现,形成名称与验证内容不符的测试盲区

修改建议: 在同一用例中补充 self.assertNotIn('本检查通过', text),使断言与用例意图一致

@hygon-ai-reviewer

hygon-ai-reviewer Bot commented Sep 20, 2026 •

Copy link
Copy Markdown

AI Review

审查尚未完整完成,无法给出整体结论;当前没有可发布的已确认问题,不代表代码没有问题。

部分结果不可用:1/8 批未完整完成,已保留可用问题。

审查未完整完成:以 GitHub 返回的 PR diff 为主体,关联上下文仅用于核验,未运行代码。

覆盖情况:共 20 个文件,已审查 5 个,部分审查 5 个,待审查 10 个。

进度已保存。正在继续处理。

@hygon-ai-reviewer

hygon-ai-reviewer Bot commented Sep 20, 2026 •

Copy link
Copy Markdown

AI Review

审查尚未完整完成,无法给出整体结论;当前没有可发布的已确认问题,不代表代码没有问题。

部分结果不可用:1/8 批未完整完成,已保留可用问题。

审查未完整完成:以 GitHub 返回的 PR diff 为主体,关联上下文仅用于核验,未运行代码。

覆盖情况:共 21 个文件,已审查 5 个,部分审查 5 个,待审查 11 个。

进度已保存。正在继续处理。

@hygon-ai-reviewer

hygon-ai-reviewer Bot commented Sep 20, 2026 •

Copy link
Copy Markdown

AI Review

发现 1 个问题。

[P2] job.workflow_sha 非有效的 GitHub Actions 上下文属性,执行 SHA 显示为空

  • 位置:.github/workflows/pr-quality-gate.yml:79
  • 触发条件:每次运行该可复用工作流并渲染步骤摘要中的版本行时
  • 证据与影响:GitHub Actions 的 job 上下文仅包含 status、container、services、runner 等属性,不存在 workflow_sha;引用不存在属性求值为空字符串,两处 step env 中 QUALITY_GATE_SHA 均取此无效表达式,摘要中“执行 SHA:”后为空。两处属同一根因。 本次改动声称顶部展示的实际执行 SHA 无法呈现,摘要缺少可审计的版本信息;不影响 exit 判定逻辑,门禁结论本身仍正确。
  • 修改建议:人工核验后改用有效表达式,如 reusable workflow 场景的 github.job_workflow_sha 或按意图选用 github.event.pull_request.head.sha,并在测试 PR 中确认渲染结果非空。

审查未完整完成:以 GitHub 返回的 PR diff 为主体,关联上下文仅用于核验,未运行代码。

覆盖情况:共 21 个文件,已审查 10 个,待审查 11 个。

进度已保存。正在继续处理。

@lvj-repox lvj-repox changed the title feat: 精简门禁摘要并显示执行版本 fix: concise summaries and header preservation for v2.0.5 Sep 20, 2026
@hygon-ai-reviewer

hygon-ai-reviewer Bot commented Sep 20, 2026 •

Copy link
Copy Markdown

AI Review

审查尚未完整完成,无法给出整体结论;当前没有可发布的已确认问题,不代表代码没有问题。

部分结果不可用:1/9 批未完整完成,已保留可用问题。

审查未完整完成:以 GitHub 返回的 PR diff 为主体,关联上下文仅用于核验,未运行代码。

覆盖情况:共 22 个文件,已审查 5 个,部分审查 5 个,待审查 12 个。

进度已保存。正在继续处理。

@hygon-ai-reviewer

Copy link
Copy Markdown

AI Review

审查尚未完整完成,无法给出整体结论;当前没有可发布的已确认问题,不代表代码没有问题。

审查未完整完成:以 GitHub 返回的 PR diff 为主体,关联上下文仅用于核验,未运行代码。

覆盖情况:共 22 个文件,已审查 0 个,待审查 22 个。

进度已保存。正在继续处理。

@lvj-repox
lvj-repox merged commit 50433a6 into main Sep 20, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant