Skip to content

Commit bb5e642

Browse files
docs: restrict pull request labels to ownership only (filigran team / community) (#596) (#597)
1 parent 18887ff commit bb5e642

3 files changed

Lines changed: 23 additions & 22 deletions

File tree

.github/LABELS.md

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -67,15 +67,15 @@ are valid types; they do not each require a dedicated label (use a repository
6767
area/scope label where useful). `security` is a **label** (applied on top of the
6868
type, e.g. a `fix:` that closes a vulnerability), not a title type.
6969

70-
> **Pull requests do NOT carry a primary type label.** A pull request's `type:`
71-
> title prefix (and its linked issue) already convey the type, so `feature`,
72-
> `bug` and `documentation` must **never** be added to a pull request — remove
73-
> them if they appear.
70+
> **Pull request labels are restricted to ownership only.** A pull request
71+
> carries exactly **one ownership label — `filigran team` or `community` — and
72+
> nothing else.** Every other label (primary type labels, area/scope labels,
73+
> workflow/triage labels) is **issue-only** and must **never** be added to a pull
74+
> request; remove any that appear. The PR's `type:` title prefix and its linked
75+
> issue already convey the type and the affected area.
7476
>
75-
> Pull requests **do** still carry other labels. In particular, add an
76-
> **ownership** label — typically `filigran team` or `community` — so the source
77-
> of a contribution is clear at a glance. Area/scope labels and workflow labels
78-
> (e.g. `dependencies`, `do not merge`) also apply to pull requests where useful.
77+
> *Exception:* dependency-automation labels (e.g. `dependencies`) are applied by
78+
> Renovate/Dependabot to their own pull requests, which are exempt.
7979
8080
## 3. Workflow & ownership labels
8181

@@ -96,7 +96,9 @@ See [`.github/labels.yml`](labels.yml) for the exact colors and descriptions.
9696
On top of the shared labels above, repositories define their own area/scope
9797
labels (e.g. `frontend`, `backend`, `connector: <name>`, `collector: <name>`,
9898
`agents`, `authentication`). They add routing context and an issue may carry
99-
more than one. They are not listed in `labels.yml`.
99+
more than one. They are **issue-only** — like type and workflow labels, they are
100+
**not** added to pull requests (a PR carries only its `filigran team` /
101+
`community` ownership label). They are not listed in `labels.yml`.
100102

101103
All label names are **lowercase**. Repository-specific labels use a neutral grey
102104
color (`ededed`); only the shared labels above carry color, so the common
@@ -115,9 +117,9 @@ taxonomy stands out consistently across every Filigran repository.
115117
- [ ] **Issues only:** exactly one primary type label (`feature` / `bug` /
116118
`documentation`) matches the title prefix, and the GitHub **Type** field
117119
(Feature / Bug / Task) is set to match
118-
- [ ] **Pull requests:** no primary type label (the title prefix conveys the
119-
type); add an ownership label (`filigran team` / `community`) and any useful
120-
area labels
121-
- [ ] Area labels added where useful
120+
- [ ] **Pull requests:** exactly one ownership label `filigran team` or
121+
`community` — and **no other label** (type, area/scope and workflow labels
122+
are issue-only)
123+
- [ ] Issues: area labels added where useful
122124
- [ ] No deprecated labels
123125
- [ ] Commits are signed and the PR is linked to an issue

.github/labels.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,10 +78,10 @@
7878
# ── Ownership / community labels ──
7979
- name: filigran team
8080
color: "4a0c43"
81-
description: "Item from the Filigran team."
81+
description: "Ownership: from the Filigran team. The PR ownership label for Filigran-authored pull requests."
8282
- name: community
8383
color: "268e45"
84-
description: "Contribution from the community."
84+
description: "Ownership: from the community. The PR ownership label for community-authored pull requests."
8585
- name: community support
8686
color: "ffa500"
8787
description: "Feature developed and maintained by the community."

CONTRIBUTING.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -50,13 +50,12 @@ in [`.github/LABELS.md`](.github/LABELS.md). In short:
5050
* **Labels** — Every **issue** carries one primary type label matching its title
5151
prefix (`feature` for `feat:`, `bug` for `fix:`, `documentation` for `docs:`)
5252
plus optional area labels, and its GitHub **Type** (Feature / Bug / Task) set
53-
to match. **Pull requests do not carry a primary type label** (the `type:`
54-
title prefix already conveys the type), but they should carry an **ownership**
55-
label — `filigran team` or `community` — to differentiate the author, plus any
56-
useful area/scope labels. Do not use the deprecated `enhancement` /
57-
`feature request` labels — use `feature`. See
58-
[`.github/LABELS.md`](.github/LABELS.md) for the shared palette
59-
([`.github/labels.yml`](.github/labels.yml)).
53+
to match. **Pull requests are labelled with ownership only** — exactly one of
54+
`filigran team` or `community`, and **nothing else**: type, area/scope and
55+
workflow labels are issue-only (Renovate/Dependabot dependency labels are
56+
exempt). Do not use the deprecated `enhancement` / `feature request` labels —
57+
use `feature`. See [`.github/LABELS.md`](.github/LABELS.md) for the shared
58+
palette ([`.github/labels.yml`](.github/labels.yml)).
6059
<!-- filigran-conventions:end -->
6160

6261
## How can you get in touch for other questions?

0 commit comments

Comments
 (0)