You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by po...@apache.org on 2026/04/29 09:48:32 UTC

(airflow-steward) 01/01: .asf.yaml: route all notification schemes (suppress dev@ default)

This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch asf-yaml-avoid-dev-list
in repository https://gitbox.apache.org/repos/asf/airflow-steward.git

commit a389c45c51f4c4224faf3c35e53395b7584b3084
Author: Jarek Potiuk <ja...@potiuk.com>
AuthorDate: Wed Apr 29 10:40:28 2026 +0200

    .asf.yaml: route all notification schemes (suppress dev@ default)
    
    Without this change, ASF Infra was silently routing four GitHub
    event streams to `dev@airflow.apache.org` because the schemes were
    not explicitly populated in our `notifications:` block.
    
    The ASF asf.yaml validator at
    https://github.com/apache/infrastructure-asfyaml/blob/main/asfyaml/feature/notifications.py
    defines `VALID_NOTIFICATION_SCHEMES` with eleven schemes that apply
    to a public GitHub repo. Any unset scheme falls back to
    `dev@<project>.apache.org`. We were setting only five
    (`commits`, `issues`, `pullrequests`, `jobs`, `discussions`),
    so the four "bot event" streams were leaking to dev@:
    
    - `issues_status` — issue open/close/label-change events.
    - `issues_comment` — comments on issues.
    - `pullrequests_status` — PR state changes + CI status-check
      failures (the noisiest one).
    - `pullrequests_comment` — comments on PRs.
    
    (`commits_by_path` is an optional path-specific override, not a
    default-target field, so it stays unset.)
    
    This commit:
    
    - Adds explicit routes for all four leaking schemes — same target
      as the rest (`commits@airflow.apache.org`), per the existing
      Airflow PMC umbrella.
    - Reformats the field list with column alignment so the missing-
      scheme regression is hard to reintroduce silently.
    - Expands the comment to spell out the dev@ default behaviour, the
      schema link, and the rationale for the `commits@airflow.apache.org`
      routing (it's the standard bot-event mirror list, public-by-
      design, already moderated for bot-only traffic).
    
    No effect on the five schemes that were already routed correctly;
    the change is purely additive.
    
    Generated-by: Claude Code (Claude Opus 4.7)
---
 .asf.yaml | 38 +++++++++++++++++++++++++++++++++-----
 1 file changed, 33 insertions(+), 5 deletions(-)

diff --git a/.asf.yaml b/.asf.yaml
index 9b8692b..7eb3528 100644
--- a/.asf.yaml
+++ b/.asf.yaml
@@ -56,8 +56,36 @@ notifications:
   # routing notifications to airflow.apache.org lists matches the
   # current ownership. Revisit if/when the repo moves to
   # `apache/steward` under a different PMC.
-  jobs: jobs@airflow.apache.org
-  commits: commits@airflow.apache.org
-  issues: commits@airflow.apache.org
-  pullrequests: commits@airflow.apache.org
-  discussions: commits@airflow.apache.org
+  #
+  # IMPORTANT: do **not** route any notification stream to
+  # `dev@airflow.apache.org`. The dev@ list is the project's
+  # design-and-development discussion list and noise from a security-
+  # framework repo (every PR, issue, push, comment, status-check
+  # event) does not belong there.
+  #
+  # ASF Infra defaults any *unset* notification field to
+  # `dev@<project>.apache.org`, so **every documented scheme below
+  # MUST stay explicitly populated** — dropping a line here silently
+  # re-enables that dev@ default for that event type. Per the ASF
+  # asf.yaml schema
+  # (https://github.com/apache/infrastructure-asfyaml/blob/main/asfyaml/feature/notifications.py
+  # `VALID_NOTIFICATION_SCHEMES`), the schemes that apply to a public
+  # GitHub repo are the eleven below (we set ten; `commits_by_path`
+  # is an optional path-specific override and is left unset). If
+  # Infra adds a new scheme, set it explicitly in the same change to
+  # keep the dev@ default suppressed.
+  #
+  # Why nearly everything goes to `commits@airflow.apache.org`:
+  # that's the standard "everything-bot-events" mirror list for the
+  # Airflow PMC; jobs go to `jobs@` (CI / workflow-failure mirror).
+  # Both lists are public-by-design and already moderated for
+  # bot-only traffic, so there is no signal-to-noise concern.
+  jobs:                  jobs@airflow.apache.org
+  commits:               commits@airflow.apache.org
+  issues:                commits@airflow.apache.org
+  issues_status:         commits@airflow.apache.org
+  issues_comment:        commits@airflow.apache.org
+  pullrequests:          commits@airflow.apache.org
+  pullrequests_status:   commits@airflow.apache.org
+  pullrequests_comment:  commits@airflow.apache.org
+  discussions:           commits@airflow.apache.org