dotnet / roslyn-analyzers-contrib

Replaced by dotnet/roslyn-analyzers.

Home Page:https://github.com/dotnet/roslyn-analyzers

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

How do we onboard substantive new analysis/enable ongoing remediation of existing debt?

michaelcfanning opened this issue · comments

We have discussed providing mgmt. gestures that easily allow developer to subtract from current analysis result set (by disabling rules, by auto-fixing, etc.). What about approaching the problem by thoughtful onboarding of new analyzers/supporting remediation of existing debt?

Current thinking involves better features for baselining existing issues or simply disabling high-volume rules and requiring developers to opt-in to new analysis. Other ideas:

  1. allow users to create a 'queue' of checks, where new rules are enabled as engineers make progress driving current enabled set to zero.
  2. given a good analyzer 'min-bar', the IDE could automatically elevate all rules for which a code base is clean to 'error'
  3. is there an on-boarding experience that can lead engineers through the result set which can be easily/immediately addresses (perhaps by offering to automatically fix all issues addressable with extremely high confidence)
  4. what about simple date-driven remediation plans? I.E. developers reduce existing warning set to stay close to a burn-down, the slope of which is established by specifying a specific end-date or a per-day budget (reduce warnings by X each day)
  5. how about assisting users with identifying valuable diagnostics by giving them access to collected 'useful/not-useful telemetry'?