main
  1# GitHub Notification Manager - vdemeester config
  2#
  3# Rules are evaluated in order - first match wins.
  4# Order matters! Specific rules before general ones.
  5
  6rules:
  7  # ─── KEEP rules (skip) — guardrails ───────────────────────────────────
  8
  9  # Direct @-mentions — someone explicitly pinged you
 10  - name: "Keep mentions"
 11    filters:
 12      reason: "mention"
 13    action: skip
 14    enabled: true
 15
 16  # Team mentions
 17  - name: "Keep team mentions"
 18    filters:
 19      reason: "team_mention"
 20    action: skip
 21    enabled: true
 22
 23  # Things you authored (your own PRs/issues)
 24  - name: "Keep authored"
 25    filters:
 26      reason: "author"
 27    action: skip
 28    enabled: true
 29
 30  # Comments on things you're involved in
 31  - name: "Keep comments"
 32    filters:
 33      reason: "comment"
 34    action: skip
 35    enabled: true
 36
 37  # Security alerts
 38  - name: "Keep security alerts"
 39    filters:
 40      subject_type: "RepositoryDependabotAlertsThread"
 41    action: skip
 42    enabled: true
 43
 44  # NixOS/nixpkgs
 45  - name: "Keep nixpkgs"
 46    filters:
 47      repository: "NixOS/nixpkgs"
 48    action: skip
 49    enabled: true
 50
 51  # Assignments — you were explicitly assigned
 52  - name: "Keep assignments"
 53    filters:
 54      reason: "assign"
 55    action: skip
 56    enabled: true
 57
 58  # ─── TARGETED ARCHIVE rules — before the general keep ─────────────────
 59
 60  # Merged Dependabot PRs (titles: "Bump ..." or "chore(deps): bump ...")
 61  - name: "Archive merged Dependabot PRs"
 62    description: "Merged dependency update PRs from dependabot"
 63    filters:
 64      subject_type: "PullRequest"
 65      reason: "state_change"
 66      subject_title: "*bump *"
 67    action: done
 68    enabled: true
 69
 70  # openshift-pipelines/operator review requests (437 notifications!)
 71  # These are almost all automated bot/renovate PRs
 72  - name: "Archive operator bot review requests"
 73    description: "Automated dependency PRs from operator repo"
 74    filters:
 75      repository: "openshift-pipelines/operator"
 76      reason: "review_requested"
 77    action: mark_done
 78    enabled: true
 79
 80  # ─── KEEP remaining review requests ───────────────────────────────────
 81
 82  # Real review requests (everything NOT caught above)
 83  - name: "Keep real review requests"
 84    filters:
 85      reason: "review_requested"
 86    action: skip
 87    enabled: true
 88
 89  # ─── ARCHIVE rules ────────────────────────────────────────────────────
 90
 91  # CI activity — pure noise (120 notifications)
 92  - name: "Archive CI activity"
 93    filters:
 94      reason: "ci_activity"
 95    action: mark_done
 96    enabled: true
 97
 98  # State changes (PR merged/closed) — stale fast
 99  - name: "Archive state changes"
100    filters:
101      reason: "state_change"
102    action: mark_done
103    enabled: false
104
105  # Old read notifications — general cleanup
106  - name: "Archive old read notifications"
107    description: "Notifications read 7+ days ago, clean up"
108    filters:
109      unread: false
110      age_days: 7
111    action: mark_done
112    enabled: true