GFramework/ai-plan/public/analyzer-warning-reduction/todos/analyzer-warning-reduction-tracking.md
gewuyou a75194337e fix(pr-review): 收口当前 PR 仍有效的 review 建议
- 修复 AGENTS 中 latest-head review thread 指向的英文标点一致性问题

- 删除 MediatorAdvancedFeaturesTests 中未使用的 TestLoggingBehavior 测试基础设施

- 重构 VersionedMigrationRunner 的迁移执行上下文传递并补充对应 XML 文档

- 更新 analyzer warning reduction 的 active tracking 与 trace,记录 PR #291 复核结果和 639 条根构建基线
2026-04-25 17:18:01 +08:00

5.5 KiB
Raw Blame History

Analyzer Warning Reduction 跟踪

目标

继续以“直接看构建输出、直接修构建 warning”为原则推进当前分支并保持 active recovery 文档只保留当前真值。

当前恢复点

  • 恢复点编号:ANALYZER-WARNING-REDUCTION-RP-070
  • 当前阶段:Phase 70
  • 当前焦点:
    • 2026-04-25 主线程按 $gframework-pr-review 复核当前分支 PR #291 的 latest-head AI review threads、nitpick 与 MegaLinter 信号
    • 当前批次只吸收本地仍成立且修复成本明确的 3 项:AGENTS.md 英文标点一致性、MediatorAdvancedFeaturesTests.cs 中未使用的 TestLoggingBehaviorVersionedMigrationRunner.cs 的迁移上下文参数对象化
    • dotnet clean + dotnet build 的直接仓库根基线已从 640 Warning(s) 降至 639 Warning(s),说明本轮 PR review follow-up 继续有效
    • GFramework.Game 的直接受影响 Release build 当前为 326 Warning(s)0 Error(s)GFramework.Cqrs.Tests149 Warning(s)0 Error(s)
    • CodeRabbit 提到的 TestLogger 重复实现与 YamlConfigLoaderTests.cs 常量位置仅属于可选整理,本轮未纳入修复写集

当前活跃事实

  • 当前 origin/main 基线提交为 4ad880c2026-04-25T14:35:38+08:00)。
  • 提权后的直接仓库根验证当前确认为:
    • dotnet clean
      • 结果:成功;此前沙箱内 “Build FAILED but 0 errors” 的 clean 结果不是仓库真值
    • dotnet build
      • 最新结果:成功;639 Warning(s)0 Error(s)
  • 已提交的低风险批次文件:
    • AGENTS.md
    • GFramework.Core.Tests/Logging/LogContextTests.cs
    • GFramework.Core.Tests/Logging/LoggerTests.cs
    • GFramework.Cqrs.Tests/Cqrs/CqrsHandlerRegistrarTests.cs
    • GFramework.Cqrs.Tests/Logging/TestLogger.cs
    • GFramework.Cqrs.Tests/Mediator/MediatorAdvancedFeaturesTests.cs
    • GFramework.Ecs.Arch.Tests/Ecs/EcsAdvancedTests.cs
    • GFramework.Game.Tests/Config/GameConfigBootstrapTests.cs
    • GFramework.Game.Tests/Config/GeneratedConfigConsumerIntegrationTests.cs
    • GFramework.Game.Tests/Config/YamlConfigLoaderTests.cs
    • GFramework.Game.Tests/Config/YamlConfigTextValidatorTests.cs
    • GFramework.Game/Internal/VersionedMigrationRunner.cs
    • ai-plan/public/analyzer-warning-reduction/todos/analyzer-warning-reduction-tracking.md
    • ai-plan/public/analyzer-warning-reduction/traces/analyzer-warning-reduction-trace.md
  • 当前批次验证结果:
    • dotnet build GFramework.Game/GFramework.Game.csproj -c Release
      • 最新主线程结果:成功;326 Warning(s)0 Error(s)
    • dotnet build GFramework.Cqrs.Tests/GFramework.Cqrs.Tests.csproj -c Release
      • 最新主线程结果:成功;149 Warning(s)0 Error(s)
    • dotnet build GFramework.Core.Tests/GFramework.Core.Tests.csproj -c Release
      • 上一轮主线程结果:成功;0 Warning(s)0 Error(s)

当前风险

  • active ai-plan 之外的历史归档仍保留一部分沙箱内 workaround / 假阻塞记录。
    • 缓解措施active todo/trace 已刷新为新真值;历史归档保留为时间线,不再作为默认恢复入口。
  • 当前 worktree 仍存在未跟踪的 .codex 目录。
    • 缓解措施:提交时只暂存 analyzer-warning-reduction 相关源码与 ai-plan / AGENTS.md 变更。
  • GFramework.CoreGFramework.GameGFramework.Core.TestsGFramework.Cqrs.Tests 仍有较大 warning 基线。
    • 缓解措施:后续批次继续优先挑低风险、少文件、可独立验证的测试与局部逻辑切片。

活跃文档

验证说明

  • dotnet clean
    • 当前结果:成功;在提权后的直接 shell 中可正常完成仓库根 clean
  • dotnet build
    • 当前结果:成功;639 Warning(s)0 Error(s)
  • dotnet build GFramework.Game/GFramework.Game.csproj -c Release
    • 当前结果:成功;326 Warning(s)0 Error(s)
  • dotnet build GFramework.Cqrs.Tests/GFramework.Cqrs.Tests.csproj -c Release
    • 当前结果:成功;149 Warning(s)0 Error(s)
  • dotnet build GFramework.Core.Tests/GFramework.Core.Tests.csproj -c Release
    • 当前结果:成功;0 Warning(s)0 Error(s)

下一步建议

  1. 以当前 639 Warning(s) 根基线为新恢复点,继续按 $gframework-batch-boot 50 规则重算 branch diff并挑选下一个 1-3 文件的低风险热点。
  2. 下一轮优先从 GFramework.GameGFramework.Cqrs.Tests 中继续选择单文件 MA0051MA0016 或 review 新暴露的低风险 warning 切片,避免把“可选整理”与 warning 收敛混成大改。
  3. 后续凡是沙箱内 .NET 验证再次出现无诊断失败、pipe/socket 权限问题或与普通 shell 不一致的结果,直接申请沙箱外重跑同一命令,不再扩散 workaround 型命令噪音。