chore(analyzers): delete 8 obsolete/duplicate analyzers#103
Conversation
All eight rules have either been superseded by the dedicated ANcpLua.OpenTelemetry.SemanticConventions.Analyzers package (OTSC* IDs) or are dead-by-design. Removing them eliminates duplicate diagnostic firing in qyl and any other consumer that references both packages. | Removed | Why dead | |---------|-------------------------------------------------------------------------| | AL0010 | isEnabledByDefault: false — never fires unless user explicitly opts in. | | AL0012 | OTel deprecated-attribute detection, fully covered by OTSC0010 + OTSC0012 (symbol-resolved, no hand-curated catalog). | | AL0062 | Direct duplicate of OTSC0010 (deprecated SemConv constant). | | AL0087 | Direct duplicate of OTSC0011 (literal-vs-typed-constant suggester). | | AL0132 | Direct duplicate of OTSC0014 (deprecated SemConv value). | | AL0133 | Direct duplicate of OTSC0012 (literal matches deprecated name). | | AL0134 | Direct duplicate of OTSC0011. | | AL0136 | Direct duplicate of OTSC0021 (incubating member in library). | Removed 20 files total: 8 analyzer sources, 3 code-fix providers (AL0010/AL0012/AL0134), 9 test files, plus AnalyzerReleases.Unshipped.md entries. Resources.resx orphan entries for the deleted IDs left in place — they generate unused Designer.cs properties but produce no warnings or errors. A separate resx hygiene pass can remove them. Verification: - dotnet build src/ANcpLua.Analyzers: 0 warnings, 0 errors - dotnet build src/ANcpLua.Analyzers.CodeFixes: 0 warnings, 0 errors - dotnet build tests/ANcpLua.Analyzers.Tests: 0 warnings, 0 errors - dotnet test: 1010 passed, 0 failed (was 1080+ with the 70 deleted tests) ANcpLua.Analyzers stays the general-purpose .NET analyzer suite; SemConv-spec rules now live exclusively in the dedicated package. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
@coderabbitai autofix |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (21)
💤 Files with no reviewable changes (21)
📜 Recent review details⏰ Context from checks skipped due to timeout of 180000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
📝 WalkthroughWalkthroughThis change removes eight diagnostic analyzer rules and their implementations: AL0010 (PartialType), AL0012 (DeprecatedAttribute), AL0062 (DeprecatedSemconv), AL0087 (PreferConstantAttribute), AL0132 (DeprecatedSemconvValue), AL0133 (ContextSensitiveDeprecatedSemconv), AL0134 (UseSemanticConventionConstant), and AL0136 (IncubatingSemanticConventionInLibrary). Each removal includes the analyzer class, associated code fix provider where applicable, corresponding test files, and entries in AnalyzerReleases.Unshipped.md. Fifteen files deleted across analyzers, code fixes, and tests. 🚥 Pre-merge checks | ✅ 9✅ Passed checks (9 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Comment |
|
Note Autofix is a beta feature. Expect some limitations and changes as we gather feedback and continue to improve it. Autofix skipped. No unresolved CodeRabbit review comments with fix instructions found. |
|
Claude encountered an error —— View job I'll analyze this and get back to you. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ab077b3963
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| AL0011 | Threading | Warning | Al0011LockKeywordAnalyzer | ||
| AL0012 | OpenTelemetry | Warning | Al0012DeprecatedAttributeAnalyzer | ||
| AL0013 | OpenTelemetry | Info | Al0013MissingSchemaUrlAnalyzer |
There was a problem hiding this comment.
Avoid removing diagnostics from the analyzer package
This change drops AL0010/AL0012 and later IDs from the package’s active release list, which means projects that only consume ANcpLua.Analyzers (including SDK-injected usage) will silently lose those checks after upgrade. The repo guideline in AGENTS.md explicitly calls diagnostic removal a breaking change for consumers, so this should be handled via a compatibility/deprecation path (or coordinated major-version migration) instead of direct removal.
Useful? React with 👍 / 👎.
Removes catalog rows for AL0010, AL0012, AL0062, AL0087 and drops AL0010/AL0012 from the code-fix ID list. Keeps the rest of the README — diagnostic count and category totals to be reconciled in a follow-up once the canonical count source is in place. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Summary
Delete eight rules from ANcpLua.Analyzers that have been superseded by the dedicated
ANcpLua.OpenTelemetry.SemanticConventions.Analyzerspackage or are dead-by-design. Removes duplicate diagnostic firing for any consumer that references both packages.What's removed
isEnabledByDefault: false— never fires unless user opts in.20 files removed total (8 analyzer sources + 3 code-fix providers + 9 tests + AnalyzerReleases entries).
Verification
dotnet build src/ANcpLua.Analyzers: 0 warnings, 0 errorsdotnet build src/ANcpLua.Analyzers.CodeFixes: 0 warnings, 0 errorsdotnet test: 1010 passed, 0 failed (was 1080+ with the deleted tests)Notes
Resources.resx orphan entries for the deleted IDs were left in place — they generate unused Designer.cs properties but produce no warnings or errors. Separate hygiene pass can clean them.
Test plan
🤖 Generated with Claude Code
Summary by CodeRabbit