← ClaudeAtlas

debt-taxonomy-dotnetlisted

.NET / C# suppression mechanisms, safe-removal recipes, NuGet package-manager variance, and upgrade-tier examples for the keymaker crew. Apply when stack detection (debt-taxonomy) finds a .NET project. Load into keymaker and twin.
johantor/zion · ★ 1 · Code & Development · score 65
Install: claude install-skill johantor/zion
# Debt taxonomy — .NET / C# Apply this skill when `debt-taxonomy` stack detection finds a .NET project (`*.csproj`, `*.sln`, `Directory.Packages.props`, `global.json`). Classification rubric and blast-radius gate are in the core `debt-taxonomy` skill. ## Suppression mechanisms | Mechanism | Scope | Safe-removal notes | |---|---|---| | `#pragma warning disable CS####` / `restore` | Block | Removal re-enables for that block only. Delete both the `disable` and matching `restore`. | | `[SuppressMessage("category", "id")]` | Member/type | Check for a `Justification` param — a meaningful one may be legitimate (rubric class 1). | | `<NoWarn>CS####;CS####</NoWarn>` in `.csproj` | Project-wide | Single line, large blast radius — expand to **diagnostic count** before gating. Remove only the target ID from the list, not the whole element. | | `<NoWarn>` in `Directory.Build.props` | Solution-wide | Even larger; treat as tier 2 unless the diagnostic count is tiny. | | `.editorconfig` `dotnet_diagnostic.CS####.severity = none/silent` | Folder-scoped | Count diagnostics under the folder, not just this line. Restore to `warning`/`error` to re-enable. | | `GlobalSuppressions.cs` (`[assembly: SuppressMessage(...)]`) | Assembly-wide | File may hold many entries — enumerate each as a **separate finding**; remove only the targeted entry. | | `[Fact(Skip="…")]`, `[Theory(Skip="…")]` | Test | Rubric class 4 (needs-investigation). Never un-skip without confirmation. | ## Analyzer / nullability n