anchor.diff:        ///  - refactor.foobar - not included
         ///  - refactor.foo.bar - included
         bool isMatch(CodeActionKind wanted) =>
  -          kind == wanted || kind.toString().startsWith('${wanted.toString()}.');
  +          kind == wanted || kind.toString().startsWith('$wanted.');
   
         // If the client wants only a specific set, use only that filter.
         final only = params.context.only;
  
positive.code:             (performance) => _getCodeActions(
                performance,
                shouldIncludeKind,
                supportsLiteralCodeActions,
                supportsApplyEdit,
                supportedDiagnosticTags,
  
negative.code:       // advertised that they provided the kinds).
        if (supportsLiteralCodeActions && !supportedKinds.any(isMatch)) {
          return false;
        }
  
        return true;
      }
  
      /// Whether any fixes of kind [kind] should be included in the results.
      ///
      /// Unlike [shouldIncludeKind], this function is called with a more general
      /// action kind and answers the question "Should we include any actions of
      /// kind CodeActionKind.Source?".
      bool shouldIncludeAnyOfKind(CodeActionKind? kind) {
        /// Checks whether the kind matches the [wanted] kind.
        ///
        /// If `kind` is `refactor.foo` then for these `wanted` values:
        ///  - wanted=refactor.foo - true
        ///  - wanted=refactor.foo.bar - true
        ///  - wanted=refactor - false
        ///  - wanted=refactor.bar - false
        bool isMatch(CodeActionKind wanted) =>
            kind == wanted || wanted.toString().startsWith('$kind.');
  
        final only = params.context.only;
        if (only != null) {
          return only.any(isMatch);
        }
  
        return true;
  