rules:
  - id: useless-assignment
    patterns:
      - pattern: |
          $X = $Y;
          $X = $Z;
      - pattern-not: |
          $X = $Y;
          $X = <... $X ...>;
    message: "`$X` is assigned twice; the first assignment is useless"
    languages:
      - javascript
      - typescript
    severity: INFO
    metadata:
      category: correctness
      technology:
        - javascript
