Skip to content

Commit a38ba08

Browse files
os-zhuangclaude
andauthored
ci(dx): TEST_DEBT 的隐藏测试文件数改由闸门实时导出,删掉手写 tests 字段 (#5826) (#6196)
TEST_DEBT 每条有两个手写数字。#5278 / PR #5827 给 `errors` 装上了真棘轮 (每次 --re-measure 重跑 tsc,实测 > 记录即红),`tests` 没有——而 `tests`(被 tsconfig 排除、因而对 tsc 隐形的测试文件数)恰恰是这个脚本 每次运行都已经算出来的量:`testCoverage()` 返回的 `pkg.testFiles`, 亚秒级、无需编译器,`evaluate()` 里就在用它判 TESTS_COVERED。 两个数字需要相反的修法,所以是两单:`errors` 不跑编译器就不可知,冻结 + 重测是唯一形状;文件数是免费的,所以删掉副本、直接读活数。 - 19 条 TEST_DEBT 条目的 `tests` 字段全部删除;`errors` 值与 note 一律未动 (含 #5827 的五条 Option A 记档余量)。 - 摘要行的「隐藏了多少文件」改读新函数 `hiddenTestFiles(packages, TEST_DEBT)`, 按包求和 `pkg.testFiles`,本次运行实算。 - RECONCILED 增一条:TEST_DEBT 条目再带 `tests` 字段即红——**结构性拒绝**, 哪怕今天数值恰好对。改成「不一致才红」会把「新增一个干净的测试文件」变成 记账费,正是 #5278 裁决里排除的方向。 - note 里复述文件总数的散文同样去重(plugin-security / service-sms / mcp / objectql):闸门实时导出的数字不再在散文里留第二份副本,事件(哪个 PR 加了 哪个文件)保留。 - --self-test 新增 1 条语义用例 + 5 条 observation 用例,共 23 + 16 + 11。 漂移实测(本 PR 分支,origin/main @ 80f7dc6):#5827 昨夜刚把 12 个 `tests` 刷成实测值,今天已有 3 条重新漂移——objectql 130→135、runtime 102→105、 formula 16→17,合计 534 vs 实算 543。机制未变时,刷新只在下一个测试文件落地 前有效。 Claude-Session: https://claude.ai/code/session_014wsZeReNTqiceBfLb5Pyf5 Co-authored-by: Claude <noreply@anthropic.com>
1 parent 80f7dc6 commit a38ba08

1 file changed

Lines changed: 150 additions & 45 deletions

File tree

0 commit comments

Comments
 (0)