rules:
  - id: metadata-incorrect-option
    message: >-
        It looks like $KEY is not in the default list of expected options, if this is a new key update this rule
    languages:
      - yaml
    severity: INFO
    metadata:
      references:
        - https://semgrep.dev/docs/contributing/contributing-to-semgrep-rules-repository
      category: correctness
      technology:
        - semgrep
    patterns:
      - pattern-inside: |
          rules: ...
      - pattern-inside: |
          options:
            $A
      - focus-metavariable: $A
      - pattern: |
          $KEY: $VALUE
      - metavariable-regex:
          metavariable: $KEY
          regex: (?!options|constant_propagation|symbolic_propagation|taint_unify_mvars|taint_assume_safe_functions|taint_assume_safe_indexes|taint_assume_safe_comparisons|taint_assume_safe_booleans|taint_assume_safe_numbers|ac_matching|commutative_boolop|flddef_assign|arrow_is_function|let_is_var|go_deeper_expr|go_deeper_stmt|implicit_deep_exprstmt|implicit_ellipsis|xml_singleton_loose_matching|xml_attrs_implicit_ellipsis|xml_children_ordered|generic_engine|generic_multiline|generic_braces|generic_extra_braces|generic_extra_word_characters|generic_caseless|generic_ellipsis_max_span|generic_comment_style|interfile|generic_engine|commutative_compop|taint_focus_on)
