Update the error_fix_status document

Change-Id: Ie78fceb96c4c2cc5e0919f40c60b1a81307dc811
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/234540
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
diff --git a/pkg/analysis_server/lib/src/services/correction/error_fix_status.yaml b/pkg/analysis_server/lib/src/services/correction/error_fix_status.yaml
index 85ac443..9b4af58 100644
--- a/pkg/analysis_server/lib/src/services/correction/error_fix_status.yaml
+++ b/pkg/analysis_server/lib/src/services/correction/error_fix_status.yaml
@@ -125,46 +125,81 @@
   status: needsEvaluation
   since: in 2.15
 CompileTimeErrorCode.CONCRETE_CLASS_HAS_ENUM_SUPERINTERFACE:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
+  notes: |-
+    We could potentially offer a fix that would remove all of the types in the
+    class header that are or implement `Enum`, but I think it would be more
+    likely that the user needed to restructure the super interfaces so that
+    `Enum` wasn't included but the rest of the interfaces could be.
 CompileTimeErrorCode.CONCRETE_CLASS_WITH_ABSTRACT_MEMBER:
   status: hasFix
 CompileTimeErrorCode.CONFLICTING_CONSTRUCTOR_AND_STATIC_FIELD:
-  status: needsEvaluation
+  status: noFix
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_CONSTRUCTOR_AND_STATIC_GETTER:
-  status: needsEvaluation
+  status: noFix
   since: 2.15
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_CONSTRUCTOR_AND_STATIC_METHOD:
-  status: needsEvaluation
+  status: noFix
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_CONSTRUCTOR_AND_STATIC_SETTER:
-  status: needsEvaluation
+  status: noFix
   since: 2.15
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_FIELD_AND_METHOD:
-  status: needsEvaluation
+  status: noFix
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_GENERIC_INTERFACES:
   status: needsEvaluation
 CompileTimeErrorCode.CONFLICTING_METHOD_AND_FIELD:
-  status: needsEvaluation
+  status: noFix
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_STATIC_AND_INSTANCE:
-  status: needsEvaluation
+  status: noFix
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_CLASS:
-  status: needsEvaluation
+  status: noFix
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_ENUM:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_EXTENSION:
-  status: needsEvaluation
+  status: noFix
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_MEMBER_CLASS:
-  status: needsEvaluation
+  status: noFix
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_MEMBER_ENUM:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_MEMBER_EXTENSION:
-  status: needsEvaluation
+  status: noFix
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_MEMBER_MIXIN:
-  status: needsEvaluation
+  status: noFix
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_MIXIN:
-  status: needsEvaluation
+  status: noFix
+  notes: |-
+    The fix is to rename one of the two, but we can't know what name to use.
 CompileTimeErrorCode.CONST_CONSTRUCTOR_FIELD_TYPE_MISMATCH:
   status: needsEvaluation
 CompileTimeErrorCode.CONST_CONSTRUCTOR_PARAM_TYPE_MISMATCH:
@@ -267,17 +302,22 @@
 CompileTimeErrorCode.ENUM_CONSTANT_SAME_NAME_AS_ENCLOSING:
   status: needsEvaluation
 CompileTimeErrorCode.ENUM_CONSTANT_WITH_NON_CONST_CONSTRUCTOR: 
-  status: needsEvaluation
+  status: noFix
   since: 2.17
 CompileTimeErrorCode.ENUM_INSTANTIATED_TO_BOUNDS_IS_NOT_WELL_BOUNDED:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
 CompileTimeErrorCode.ENUM_MIXIN_WITH_INSTANCE_VARIABLE:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
+  notes: |-
+    We could potentially offer a fix that would remove the mixin, but I think it
+    would be more likely that the user needed to restructure the mixin so that
+    part of it could be included here.
 CompileTimeErrorCode.ENUM_WITH_ABSTRACT_MEMBER:
-  status: needsEvaluation
+  status: needsFix
   since: 2.17
+  issue: https://github.com/dart-lang/sdk/issues/48478
 CompileTimeErrorCode.EQUAL_ELEMENTS_IN_CONST_SET:
   status: needsEvaluation
 CompileTimeErrorCode.EQUAL_KEYS_IN_CONST_MAP:
@@ -378,17 +418,28 @@
 CompileTimeErrorCode.ILLEGAL_ASYNC_RETURN_TYPE:
   status: hasFix
 CompileTimeErrorCode.ILLEGAL_ENUM_VALUES_DECLARATION:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
+  notes: |-
+    While we could have a fix to remove the declaration, it seems more likely
+    that the user would want to rename it.
 CompileTimeErrorCode.ILLEGAL_ENUM_VALUES_INHERITANCE:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
 CompileTimeErrorCode.ILLEGAL_LANGUAGE_VERSION_OVERRIDE:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
+  notes: |-
+    We could potentially offer to remove the override, or to update it to the
+    lowest legal value, but it isn't clear that either of these is the right
+    fix without knowing why the language override was added.
 CompileTimeErrorCode.ILLEGAL_NON_ABSTRACT_ENUM_INDEX:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
+  notes: |-
+    We could potentially offer to remove the member, but the user probably needs
+    to think about what they were trying to do and it seems more likely that the
+    right fix is to rename the member.
 CompileTimeErrorCode.ILLEGAL_SYNC_GENERATOR_RETURN_TYPE:
   status: hasFix
 CompileTimeErrorCode.IMPLEMENTS_DEFERRED_CLASS:
@@ -484,7 +535,7 @@
 CompileTimeErrorCode.INVALID_OVERRIDE:
   status: hasFix
 CompileTimeErrorCode.INVALID_REFERENCE_TO_GENERATIVE_ENUM_CONSTRUCTOR:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
 CompileTimeErrorCode.INVALID_REFERENCE_TO_THIS:
   status: needsEvaluation
@@ -617,8 +668,9 @@
 CompileTimeErrorCode.NON_BOOL_OPERAND:
   status: needsEvaluation
 CompileTimeErrorCode.NON_CONST_GENERATIVE_ENUM_CONSTRUCTOR:
-  status: needsEvaluation
+  status: needsFix
   since: 2.17
+  issue: https://github.com/dart-lang/sdk/issues/48479
 CompileTimeErrorCode.NON_CONST_MAP_AS_EXPRESSION_STATEMENT:
   status: needsEvaluation
 CompileTimeErrorCode.NON_CONSTANT_ANNOTATION_CONSTRUCTOR:
@@ -786,14 +838,19 @@
   status: needsFix
   since: 2.17
 CompileTimeErrorCode.SUPER_FORMAL_PARAMETER_WITHOUT_ASSOCIATED_NAMED:
-  status: needsEvaluation
+  status: needsFix
   since: 2.17
+  issue: https://github.com/dart-lang/sdk/issues/48480
 CompileTimeErrorCode.SUPER_FORMAL_PARAMETER_WITHOUT_ASSOCIATED_POSITIONAL:
   status: needsFix
   issue: https://github.com/dart-lang/sdk/issues/48359
 CompileTimeErrorCode.SUPER_IN_ENUM_CONSTRUCTOR:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
+  notes: |-
+    We could potentially offer a fix to remove the super invocation, but the
+    user really needs to think about what constructor they were trying to invoke
+    and why in order to really fix the issue.
 CompileTimeErrorCode.SUPER_IN_EXTENSION:
   status: needsEvaluation
 CompileTimeErrorCode.SUPER_IN_INVALID_CONTEXT:
@@ -858,11 +915,13 @@
 CompileTimeErrorCode.UNDEFINED_ENUM_CONSTANT:
   status: needsEvaluation
 CompileTimeErrorCode.UNDEFINED_ENUM_CONSTRUCTOR_NAMED:
-  status: needsEvaluation
+  status: needsFix
   since: 2.17
+  issue: https://github.com/dart-lang/sdk/issues/48481
 CompileTimeErrorCode.UNDEFINED_ENUM_CONSTRUCTOR_UNNAMED:
-  status: needsEvaluation
+  status: needsFix
   since: 2.17
+  issue: https://github.com/dart-lang/sdk/issues/48481
 CompileTimeErrorCode.UNDEFINED_EXTENSION_GETTER:
   status: hasFix
 CompileTimeErrorCode.UNDEFINED_EXTENSION_METHOD:
@@ -922,8 +981,12 @@
 CompileTimeErrorCode.USE_OF_VOID_RESULT:
   status: needsEvaluation
 CompileTimeErrorCode.VALUES_DECLARATION_IN_ENUM:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
+  notes: |-
+    We could potentially offer to remove the member, but the user probably needs
+    to think about what they were trying to do and it seems more likely that the
+    right fix is to rename the member.
 CompileTimeErrorCode.VARIABLE_TYPE_MISMATCH:
   status: needsEvaluation
 CompileTimeErrorCode.WRONG_EXPLICIT_TYPE_PARAMETER_VARIANCE_IN_SUPERINTERFACE:
@@ -942,8 +1005,12 @@
 CompileTimeErrorCode.WRONG_NUMBER_OF_TYPE_ARGUMENTS_CONSTRUCTOR:
   status: hasFix
 CompileTimeErrorCode.WRONG_NUMBER_OF_TYPE_ARGUMENTS_ENUM:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
+  notes: |-
+    We can't know which type arguments to add or remove. (We do have a fix to
+    remove all type arguments that would work here, it just isn't a very good
+    fix to suggest.)
 CompileTimeErrorCode.WRONG_NUMBER_OF_TYPE_ARGUMENTS_EXTENSION:
   status: hasFix
 CompileTimeErrorCode.WRONG_NUMBER_OF_TYPE_ARGUMENTS_FUNCTION:
@@ -1855,10 +1922,17 @@
 ParserErrorCode.DUPLICATED_MODIFIER:
   status: needsEvaluation
 ParserErrorCode.EMPTY_ENUM_BODY:
-  status: needsEvaluation
+  status: noFix
+  notes: |-
+    We can't guess at the names or number of the enum constants that should be
+    added.
 ParserErrorCode.ENUM_CONSTANT_WITH_TYPE_ARGUMENTS_WITHOUT_ARGUMENTS:
-  status: needsEvaluation
+  status: noFix
   since: 2.17
+  notes: |-
+    We could potentially add `()`, but we generally don't have fixes for parse
+    errors because we assume the user is still typing and will soon fix the
+    problem.
 ParserErrorCode.ENUM_IN_CLASS:
   status: needsEvaluation
 ParserErrorCode.EQUALITY_CANNOT_BE_EQUALITY_OPERAND: