Sfoglia il codice sorgente

chore(policy): increase power & responsibility for maintainers

This adds a rule where a maintainer can merge a PR on their own even in
non-trivial cases, which we (I) already do as-is today, but by breaking
the rules instead of following them. This just codifies that behavior.
If we get to a point where it's no longer necessary, that'd be cool.

Signed-off-by: Jakob Borg <[email protected]>
Jakob Borg 1 mese fa
parent
commit
1b0eaa093a
1 ha cambiato i file con 16 aggiunte e 3 eliminazioni
  1. 16 3
      .policy.yml

+ 16 - 3
.policy.yml

@@ -8,17 +8,20 @@
 policy:
 policy:
   approval:
   approval:
     - subject is conventional commit
     - subject is conventional commit
-    - project metadata requires maintainer approval
+    - or:
+      - project metadata requires maintainer approval
+      - a maintainer claims responsibility
     - or:
     - or:
       - is approved by a syncthing contributor
       - is approved by a syncthing contributor
       - is a translation or dependency update by a contributor
       - is a translation or dependency update by a contributor
       - is a trivial change by a contributor
       - is a trivial change by a contributor
+      - a maintainer claims responsibility
 
 
-  # Additionally, contributors can disapprove of a PR
+  # Additionally, maintainers can disapprove of a PR
   disapproval:
   disapproval:
     requires:
     requires:
       teams:
       teams:
-        - syncthing/contributors
+        - syncthing/maintainers
 
 
 # The rules for the policy are described below.
 # The rules for the policy are described below.
 
 
@@ -96,3 +99,13 @@ approval_rules:
       has_author_in:
       has_author_in:
         teams:
         teams:
           - syncthing/contributors
           - syncthing/contributors
+
+  # A member of the maintainers group can take responsibility by adding the
+  # appropriate label.
+  - name: a maintainer claims responsibility
+    if:
+      has_labels:
+        - maintainer-responsibility
+      has_author_in:
+        teams:
+          - syncthing/maintainers