Skip to content

Disable TaskAnalyzer code fixes for 18.13 - #15402

Merged
JanProvaznik merged 6 commits into
dotnet:mainfrom
AR-May:ar-may-disable-task-analyzer-fixers
Oct 27, 2026
Merged

JanProvaznik merged 6 commits into
dotnet:mainfrom
AR-May:ar-may-disable-task-analyzer-fixers

Conversation

@AR-May

@AR-May AR-May commented Oct 26, 2026 •

Copy link
Copy Markdown
Member

Related issue(s): #14971

Context

The current fixes can produce uncompilable code, change path/parsing behavior, or break callers when retyping public properties. Disable them for the first release rather than ship unsafe transformations.

Changes Made

Remove both providers’ MEF exports and code-fix documentation. Keep implementations/tests and add a discovery regression.

Testing

Unit tests

AR-May and others added 3 commits October 26, 2026 13:35
Remove MEF exports from both code fix providers while preserving implementations and analyzer behavior. Add a discovery contract regression and document temporary code fix unavailability.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Restore the original detailed code fix guidance and retain only brief notes about temporary 18.13 code fix unavailability.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Keep customer documentation focused on available diagnostics and suppressions; remove code fix availability notes, implementation details, examples, links and development references.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@AR-May
AR-May marked this pull request as ready for review October 26, 2026 14:52
Copilot AI balanced review requested due to automatic review settings October 26, 2026 14:52
@AR-May
AR-May temporarily deployed to copilot-pat-pool October 26, 2026 14:52 — with GitHub Actions Inactive
@AR-May
AR-May temporarily deployed to copilot-pat-pool October 26, 2026 14:53 — with GitHub Actions Inactive

@JanProvaznik JanProvaznik left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

discussed that fixers are broken, hard to get right, and low value even if fixed, feeding errors to agents is more flexible

@AR-May
AR-May temporarily deployed to copilot-pat-pool October 26, 2026 14:55 — with GitHub Actions Inactive

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The narrowly scoped export removals disable unsafe fixes without changing diagnostic behavior, and the discovery regression covers the intended contract.

No open issues 🎉

What changed in this PR

Disables automatic TaskAnalyzer code fixes for the 18.13 release to avoid unsafe transformations, while preserving diagnostics and the existing fixer implementations and tests.

Changes:

  • Removes discovery exports from both code-fix providers.
  • Adds a regression test verifying that no code fixes are exported and all expected analyzers remain discoverable.
  • Removes code-fix availability claims and documentation.
File Description
src/​TaskAnalyzer/​README.md Removes automatic-fix documentation while retaining diagnostic guidance.
src/​TaskAnalyzer/​PreferTypedParameterCodeFixProvider.cs Removes typed-parameter fixer exports.
src/​TaskAnalyzer/​MultiThreadableTaskCodeFixProvider.cs Removes multithreaded-task fixer exports.
src/​TaskAnalyzer/​AnalyzerReleases.Shipped.md Removes code-fix availability claims.
src/​TaskAnalyzer.Tests/​PackageContractTests.cs Adds regression coverage for fixer and analyzer discovery.

Review effort: Balanced

Co-authored-by: Jan Provazník <janpro@janpro.dev>
@JanProvaznik

Copy link
Copy Markdown
Member

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 2 pipeline(s).

@JanProvaznik
JanProvaznik enabled auto-merge (squash) October 27, 2026 17:16
@JanProvaznik
JanProvaznik merged commit fed3639 into dotnet:main Oct 27, 2026
13 checks passed
@JanProvaznik JanProvaznik mentioned this pull request Oct 29, 2026
41 of 69 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants