mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-05-12 22:03:30 +08:00
- 修复 schema 正则校验缺少超时边界导致的 analyzer 风险 - 更新字符串等值比较为 ordinal 语义 - 补充 warning reduction 批处理恢复状态与验证结果
6.0 KiB
6.0 KiB
Analyzer Warning Reduction 跟踪
目标
继续以“直接看构建输出、直接修构建 warning”为原则推进当前分支,并保持 active recovery 文档只保留当前真值。
当前恢复点
- 恢复点编号:
ANALYZER-WARNING-REDUCTION-RP-093 - 当前阶段:
Phase 93 - 当前焦点:
2026-04-29使用$gframework-batch-boot 50从 clean build warning 基线继续分批清理 analyzer warnings- 已接受三个 worker 的
GFramework.Cqrs.Tests/Mediator/*独立切片,三个 Mediator 测试文件的 warning 已清零 - 主线程补齐
YamlConfigSchemaValidator运行时正则 timeout 与 ordinal 字符串比较,先收掉低风险MA0009/MA0006 - 当前停止条件为相对
origin/main接近50个变更文件;本轮尚未接近阈值,下一批可继续处理GFramework.Game/Config/YamlConfigSchemaValidator*
当前活跃事实
- 当前
origin/main基线提交为0e32dab(2026-04-28T17:15:47+08:00)。 - 当前直接验证结果:
dotnet clean -p:RestoreFallbackFolders= -v:quiet- 最新结果:成功;标准
dotnet clean仍会先命中当前 WSL 环境的 Windows NuGet fallback 目录,已按既有环境口径先执行dotnet restore GFramework.sln -p:RestoreFallbackFolders= --disable-parallel后清理
- 最新结果:成功;标准
dotnet build -p:RestoreFallbackFolders= -clp:WarningsOnly -v:minimal -m:1 -nodeReuse:false- 最新结果:成功;
75warnings、0errors;warning 从本轮基线236降到75
- 最新结果:成功;
dotnet build GFramework.Cqrs.Tests/GFramework.Cqrs.Tests.csproj -c Release -p:RestoreFallbackFolders= -m:1 -nodeReuse:false -clp:Summary- 最新结果:成功;
0 Warning(s)、0 Error(s)
- 最新结果:成功;
dotnet test GFramework.Cqrs.Tests/GFramework.Cqrs.Tests.csproj -c Release --no-build -p:RestoreFallbackFolders= -m:1 -nodeReuse:false --filter "FullyQualifiedName~Mediator"- 最新结果:成功;
45通过、0失败
- 最新结果:成功;
dotnet build GFramework.Game/GFramework.Game.csproj -c Release -p:RestoreFallbackFolders= -m:1 -nodeReuse:false -clp:Summary- 最新结果:成功;
75 Warning(s)、0 Error(s);剩余均为YamlConfigSchemaValidator*的MA0048/MA0051
- 最新结果:成功;
dotnet test GFramework.Game.Tests/GFramework.Game.Tests.csproj -c Release -p:RestoreFallbackFolders= -m:1 -nodeReuse:false --filter "FullyQualifiedName~YamlConfigLoaderTests|FullyQualifiedName~YamlConfigSchemaValidatorTests"- 最新结果:成功;
80通过、0失败
- 最新结果:成功;
- 当前批次摘要:
- 当前已提交分支相对
origin/main...HEAD包含3个变更文件;本次主线程待提交的GFramework.Game/Config/YamlConfigSchemaValidator.cs与ai-plan文档会把累计变更推到约6个文件,低于50个文件阈值 - 已完成 worker 切片:
ed269d4:MediatorArchitectureIntegrationTests.cs,清理MA0048/MA0004/MA0016121df44:MediatorAdvancedFeaturesTests.cs,清理MA0048/MA0004/MA00159109eec:MediatorComprehensiveTests.cs,清理MA0048/MA0004/MA0016/MA0002/MA0015
- 主线程切片:
YamlConfigSchemaValidator.cs正则 timeout 与 ordinal equality,清理MA0009/MA0006
- 当前已提交分支相对
当前风险
GFramework.Game/Config/YamlConfigSchemaValidator*仍然是仓库根 warning 热点,剩余45条MA0048与30条MA0051。- 缓解措施:下一批优先把
YamlConfigSchemaValidator.cs末尾 schema model 类型拆到独立文件,再评估MA0051方法拆分。
- 缓解措施:下一批优先把
- 标准
dotnet clean在当前 WSL 环境仍会读取失效的 Windows fallback package folder。- 缓解措施:本主题验证继续沿用
-p:RestoreFallbackFolders=,必要时先执行 solution restore 刷新 Linux 侧资产。
- 缓解措施:本主题验证继续沿用
活跃文档
- 当前轮次归档:
- 历史跟踪归档:
- 历史 trace 归档:
验证说明
- 权威验证结果统一维护在“当前活跃事实”。
GFramework.Cqrs.Tests的当前受影响项目 Release 构建已清零,并通过 Mediator 定向测试回归。GFramework.Game当前低风险正则 / 字符串比较切片通过 Release 构建与 config 定向测试;剩余 warning 属于拆文件与复杂度拆分。git diff --check结果为空,说明本轮新增改动没有引入新的尾随空格或冲突标记。- warning reduction 的仓库级真值以同轮
dotnet build、定向dotnet test与git diff --check为准,并与 trace 中的验证里程碑保持一致。
下一步建议
- 提交主线程
YamlConfigSchemaValidator正则安全补丁与本轮ai-plan同步。 - 继续下一批
GFramework.Game/Config/YamlConfigSchemaValidator.cs末尾 schema model 类型拆文件,目标清理MA0048。 - 再评估
YamlConfigSchemaValidator.ObjectKeywords.cs与主 validator 的MA0051方法拆分,避免单批触碰过多高耦合逻辑。