rules:
  - id: missing-message-field
    message: >-
      This rule does not have a message. Semgrep requires that
      rules have a message. Include a message to explain what the rule does.
      Consider writing a message that explains why this is an issue and
      how to fix it.
    languages: [yaml]
    patterns:
      - pattern-inside: "rules: [..., $RULE, ...]"
      - pattern: "id: $RULEID"
      - pattern-not-inside: |
          - ...
            message: ...
      - pattern-not-inside: |
          - ...
            mode: extract
    severity: WARNING
    metadata:
      category: correctness
      technology:
        - semgrep
      references:
      - https://semgrep.dev/docs/writing-rules/rule-syntax/