Skip to content

fix(ISSUE-263): W5-C1 golden_set 盲化注入与 self-test 修复 - #83

Merged
cloudbrid-agent[bot] merged 1 commit into
mainfrom
fix/issue263-w5c1-golden-blind
Aug 23, 2026
Merged

fix(ISSUE-263): W5-C1 golden_set 盲化注入与 self-test 修复#83
cloudbrid-agent[bot] merged 1 commit into
mainfrom
fix/issue263-w5c1-golden-blind

Conversation

@cloudbrid-agent

Copy link
Copy Markdown
Contributor

fix: W5-C1 golden_set 盲化注入与 self-test criteria 匹配修复

跟进 #80(已合并)中的两个问题:

修复内容

  1. blind_sample 不再重命名 report 文件路径 — 盲化仅剥离 sample 层级元数据
    (id/tags/source),不创建新文件。之前错误地在 report 路径上加 _blinded
    后缀导致 self-test 找不到文件(exit 2)。
  2. self-test criteria AC 编号匹配 — 构造的 criteria 使用 AC-1/AC-9(与
    fixture 报告的 criterion_scores 键一致),使回归断言正确判定
    (之前用 AC-test 导致所有 valid 样本被误判为 insufficient)。

Card: Cloudbird-Software/.github#286

修复两个问题:
1. blind_sample 不再重命名 report 文件路径(盲化仅剥离 sample 层级元数据,
   不创建新文件,避免 self-test 找不到 report 文件);
2. self-test 构造的 criteria AC 编号与 fixture 报告的 criterion_scores 键匹配
   (使用 AC-1/AC-9 替代 AC-test),使回归断言正确判定。

Card: Cloudbird-Software/.github#286
@cloudbrid-agent
cloudbrid-agent Bot merged commit 5503e26 into main Aug 23, 2026
21 checks passed
@cloudbrid-agent
cloudbrid-agent Bot deleted the fix/issue263-w5c1-golden-blind branch August 23, 2026 09:35
randypanding added a commit that referenced this pull request Aug 26, 2026
对近一周(#21..#124)全部 PR 复盘后的机械债清理:仅删除 AST 级验证
「全仓零引用」的未用导入/未用名,不改任何判定逻辑、阈值、白名单或
policy 数据。逐文件出处:

- pipeline/adversary/cnb_bridge.py:删未用 `from typing import Any`(#73/#74)
- pipeline/adversary/golden_set.py:删未用 `from typing import Any`(#80/#82/#83)
- pipeline/adversary/holdout_registry.py:删未用 `from typing import Any`(#81/#82)
- pipeline/adversary/e2e/e2e-runner.py:删未用 `from typing import Any`(#89)
- pipeline/adversary/llm_verifier.py:删未用 `import math`;可选库导入行去掉
  未用名 extract_score(call_verifier/create_openai_client 均在用,保留)(#72/#76)
- pipeline/entropy/tests/test_e2e.py:删未用 `import sys`(#56)
- pipeline/selftest-c/tests/test_registry.py:删未用 `import copy`(#103)
- pipeline/trust-gate/tests/test_adjudicate.py:删未用 `import copy`(#63)
- pipeline/trust-gate/tests/test_cli.py:from-import 去掉未用名
  PREDICATES/UNLOCK_STATE(保留 trust_gate 可导入性冒烟导入与 noqa 惯例)(#63)
- scripts/dep-supply-chain-check.py:删未用 `import copy`(#36/#43)

刻意不动(已核验非死代码):各模块 `from __future__ import annotations`;
fuzz/sast/symbolic 的 `_yamlmini` 双模式导入守卫(noqa F401,保证包路径);
golden_set 等 try-import yaml 的环境 fail-closed 守卫;org-gate /
suppression-gate / adversary-gate 等关卡 workflow 与 policy/suppressions.yaml
基线数据——门语义一概不变。

验证:
- py_compile 全部 scripts/pipeline *.py 通过;bash -n 全部 *.sh 通过
- workflows/policy/pipeline 共 62 个 YAML 解析通过
- scripts/test-integrity-fixtures/run.sh、scripts/suppression-budget-selftest.sh 通过
- python -m unittest:trust-gate test_adjudicate+test_cli 17 例、
  selftest-c tests.test_registry 14 例、entropy tests.test_e2e 10 例——全绿

Co-authored-by: randypanding <randypanding@users.noreply.github.com>
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.

0 participants