|
|
@@ -45,3 +45,5 @@
|
|
|
| B-38 | 本轮 26 红类/69 红例归因(含 GUIDE integration 真实候选) | 研发/测试 | 67 轮全量实测 2219 例 96.71%:26 红类 40F+29E=69 例,归因分层:① **B-13 环境红 3 类 8 例**(primaryDataSource→Hikari→`Communications link failure`);② **A 类断言/装置漂移 ~15 类 47 例**(B-18 同族:doNothing/matcher 误用、NPE、桩缺失、文案断言过期——ArticleWorkflow「仅已驳回」vs「仅已驳回或已撤回」、StatsController「未关联家庭」vs「请先创建或加入家庭」、WishController childId→memberId、MindFortune 401 vs 400);③ **契约断言与实现不一致 6 类 13 例**(DimensionRegistryMapContractTest 3F、EnergySystemFlowTest 6F expected 200 but 500、MembershipPaySwitch/PaymentServiceORDRouting/OrchestrationEngine/OrchestrationIntegration 各 1F);④ **真实问题候选 1 类 1 例**:`GuideModuleIntegrationTest.testGuidePackageCreationFlow` → `MysqlDataTruncation: Out of range value for column 'platform_fee'`(schema 与代码不一致,需研发核验迁移脚本)。建议:① 修 B-13 数据源指向;② 测试侧下轮同步 3 处文案断言 + 修 A 类装置(B-18 清单);③ 研发核验 platform_fee 列定义与 DimensionRegistryMap 契约口径;④ EnergySystemFlowTest 500 需研发确认集成流依赖 | 测试(67 轮实测登记) | 2026-11-07 10:20 | 待处理 |
|
|
|
| B-39 | `cfc-backend/pom.xml` 默认 `skipTests=true`(测试零执行假绿) | 研发 | **P0 流程黑洞**。`cfc-backend/pom.xml:28` 声明 `<skipTests>true</skipTests>`,`:232` 的 surefire 配置引用 `${skipTests}`。本轮(2026-11-07 10:59)实测:在干净隔离树 `D:\_wt_r1054`@`9359de39a` 执行文档标准命令 `mvn -o -B clean test` → **9:49 BUILD SUCCESS,日志明确 `[INFO] Tests are skipped.`,surefire-reports 下 0 个 XML**——即“构建成功但零用例执行”。影响:① 任何按标准 Maven 命令接入的本地验证/CI 都会得到**假绿**,覆盖率与通过率无从谈起;② 本台账历史上多轮“全量通过”结论必须显式带 `-DskipTests=false` 才成立;③ 新入职/新流水线极易踩坑。`.gitlab-ci.yml:16` 注释已记录该陷阱并以 `-DskipTests=false` 绕过,但**根因未修** → 每个使用方都要自己记得加参数。建议:去掉 `:28` 的默认 `<skipTests>true</skipTests>`(或改为 `<skipTests>false</skipTests>`,把“跳过”交给命令行 `-DskipTests` 显式控制);同时在 CI 增加一条守卫:`mvn -o -B test -DskipTests=false` 后断言 `surefire-reports/*.xml` 数量 > 0,否则 job 失败。闭环:默认 `mvn test` 能跑出用例;或 CI 守卫在“0 XML”时报红 | 测试(本轮实测登记) | 2026-11-07 11:10 | 待处理 |
|
|
|
| B-40 | CI 4 个测试 job 为软门禁 + 集成层被排除 | 研发/流程 | `.gitlab-ci.yml` 现有 7 个 job,其中 **4 个 `allow_failure` 语义**:`backend-contract-junit:134`、`langgraph-pytest:165`、`tests-jest:225`(e2e-playwright 亦按注释兜底),即**测试失败不阻断流水线**;且 `backend-contract-junit:142` 使用 `-Dtest='!**/integration/**'` 排除整个 `integration` 包(1794/2219 例)——而本轮 26 个红类中 **14 个位于 `com.etotem.cfc.integration.*`**(含 `EnergySystemFlowTest` 6F、`DimensionRegistryMapContractTest` 3F、`PlannerBindInviteFlowTest` 4F 等),**恰是 CI 视野之外的部分**。后果:CI 绿灯 ≠ 可发布,红灯也不拦人。建议:① 分两级门禁——`test-blocking`(全绿子集,必须过)与 `test-observed`(已知红,允许失败但产出趋势);② 把 `integration` 包按类白名单逐批转 blocking;③ 报告 G6 口径从“有无 CI”升级为“blocking job 覆盖例数占比”。闭环:任一 blocking job 红 → 流水线红;且 blocking 覆盖 ≥ 当前全量 80% | 测试(本轮实测登记) | 2026-11-07 11:10 | 待处理 |
|
|
|
+| B-41 | langgraph.test_analysis_graph_offline_run_returns_interpretation 历史 flaky 需固化 | 研发 | 本轮(2026-11-07 12:57)cfc-langgraph pytest 全量 51 passed / 0 failed / 12 skipped(EXIT 0);历史满跑失败、隔离单跑 PASS 的 `TestGrowthReportInterpretB04::test_analysis_graph_offline_run_returns_interpretation` 本轮未复现,但属顺序相关/模块级 state 污染型 flaky(疑似 chromadb 原生依赖 + 模块级 fixture),存在回弹风险。建议:mock chromadb + 确定性 fixture + 单文件隔离运行(`--forked`);CI 固定隔离。闭环:连续 3 轮满跑全绿后再视为修复生效 | 测试(第11轮 巡检登记) | 2026-11-07 12:57 | 待处理 |
|
|
|
+| B-42 | 后端 JUnit/Playwright 远程派发通道在本运行环境不可用(2914 脚本化用例零实测) | 测试/运维 | 配置(`.tdd/config.json`)要求后端 JUnit 2367 @Test 与 langgraph pytest 派发至 `opencode.iwintrue.com`(192.168.16.251)、Playwright 547 spec 派发至 `web-4091`(本机:4091)/`web-189-4090`(192.168.16.189:4090);但本运行环境无 opencode 客户端、192.168.16.189 TCP 连接拒绝不可达,仅能本地实跑 Jest/pytest。后果:后端 2367 + Playwright 547 共 2914 脚本化用例零实测,目标①「所有用例通过」无法核验。建议:在具备 opencode 会话(web-4091/web-189-4090/opencode.iwintrue.com)的主机运行本自动化,或为本环境配置派发凭证与节点可达性。闭环:派发通道可用后重跑后端/Playwright,覆盖率与通过率可计 | 测试(第11轮 巡检登记) | 2026-11-07 12:57 | 待处理 |
|