SuperAPI AI 工具集

dotnet-code-analysis

通用与其它

查看项目

更新于 10-16 00:04

技能介绍

用途:为 .NET 仓库建立第一方(SDK 内置)代码分析策略,让分析器警告在 dotnet build 与 CI 中真正失败,而不是只停留在 IDE 提示。触发场景包括:仓库想启用内置 .NET 分析器、CI 需因分析器警告失败、需要 AnalysisLevel 或 AnalysisMode 指导、需要渐进式 Roslyn 警告升级策略。不适用于仅挑选第三方分析器或纯格式化工作。

主要能力:在 Directory.Build.props 中启用 EnableNETAnalyzers、AnalysisLevel、AnalysisMode;按项目成熟度选择警告升级策略;在仓库根 .editorconfig 中设置逐规则严重级别;以 dotnet build 作为 CI 分析器门禁。

使用方式:先检测项目成熟度(新项目或遗留项目),新项目直接设 TreatWarningsAsErrors=true、AnalysisLevel=latest-recommended,并在 .editorconfig 将 Security 类别设为 error。遗留项目先运行 dotnet build 按 ID 统计警告,分批提升:第一阶段处理 CS8019、CS0219、CS0168 等机械性清理;第二阶段按用户选择处理 CA2000、CA1062、CA1822、CA1860、CA1861、CA2007、CS8600–CS8610 等质量与可空性警告;第三阶段始终尽早提升安全类,如 CA3001、CA3002、CA3003、CA3075、CA5350/CA5351、CA5394;第四阶段全量覆盖后启用 TreatWarningsAsErrors,仅用 WarningsNotAsErrors 保留显式例外。

硬性规则:不得禁用、注释或弱化已有的 TreatWarningsAsErrors、WarningsAsErrors 或 .editorconfig 严重级别;不得擅自添加 NoWarn 或 #pragma warning disable;警告过多时先报告数量与类别并询问用户先处理哪批,由用户决定节奏。

限制:资料未提供具体价格、平台支持范围或第三方分析器选型建议;若仓库将分析器策略交由其他构建层管理,应返回 not_applicable。