Skip to content

Commit 86c95e9

Browse files
authored
Add and link to Infra-Triage.md. (#164673)
Based on our discussions internally, making this available externally so we can link to it more easily.
1 parent 8b29bc6 commit 86c95e9

File tree

2 files changed

+170
-5
lines changed

2 files changed

+170
-5
lines changed

docs/triage/Infra-Triage.md

Lines changed: 169 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
# Flutter Infra Team Triage
2+
3+
_Canonical Link: [flutter.dev/to/team-infra](https://flutter.dev/to/team-infra)._
4+
5+
This doc details how to triage and work on issues marked [`team-infra`][].
6+
7+
[`team-infra`]: https://github.com/flutter/flutter/issues?q=is%3Aissue%20state%3Aopen%20label%3Ateam-infra
8+
9+
---
10+
11+
The _infrastructure_ sub-team works a bit differently than our externally
12+
facing product, as it is producing (and maintaining) infrastructure _for_
13+
Flutter, which includes tools and services that are open source but are **not
14+
supported for external use**.
15+
16+
As a result, our process _differs_ from the general [issue hygiene](../contributing/issue_hygiene/) and [issue triage](README.md):
17+
18+
- We [own](#ownership) _general_ infrastructure, and decline other requests
19+
- We use [_priority_ labels](#priorities) to mean specific things
20+
- We accept [contributions](#contributing) in a more limited fashion
21+
- We [close issues](#we-prefer-closing-issues) we do not plan to address and
22+
will not accept contributions on
23+
24+
This process allows us to have a more organized handle on the number of open
25+
issues potentially affecting the team's velocity, including critical components
26+
like release health.
27+
28+
Table of contents:
29+
30+
- [Triage](#triage)
31+
- [Ownership](#ownership)
32+
- [Priorities](#priorities)
33+
- [P0](#p0)
34+
- [P1](#p1)
35+
- [P2](#p2)
36+
- [P3](#p3)
37+
- [We prefer closing issues](#we-prefer-closing-issues)
38+
- [Contributing](#contributing)
39+
- [Communication](#communication)
40+
- [How to contact us](#how-to-contact-us)
41+
42+
## Triage
43+
44+
Links:
45+
46+
- [P0 list](https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3Ateam-infra+label%3AP0+sort%3Aupdated-asc)
47+
- [Cocoon PRs](https://github.com/flutter/cocoon/pulls)
48+
- [GoB CLs](https://flutter-review.googlesource.com/q/status:open+-is:wip)
49+
- [Incoming issue list](https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3Ateam-infra%2Cfyi-infra+-label%3Atriaged-infra+no%3Aassignee+-label%3A%22will+need+additional+triage%22+sort%3Aupdated-asc)
50+
- [Latest updated issue list](https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3Ateam-infra%2Cfyi-infra+sort%3Aupdated-desc)
51+
52+
## Ownership
53+
54+
The infra sub-team owns _general_ infrastructure that is often shared or used
55+
across the Flutter project, but _not all_ testing and or tooling infrastructure;
56+
that is, unless the tool is mentioned below, we may decline or direct you at
57+
another sub-team:
58+
59+
- General CI/CD issues affecting [flutter/flutter](https://github.com/flutter/flutter)
60+
or [flutter/packages](https://github.com/flutter/packages)
61+
- The [dashboard](https://flutter-dashboard.appspot.com/)
62+
- Anything in [flutter/cocoon](https://github.com/flutter/cocoon),
63+
[flutter/recipes](https://flutter.googlesource.com/recipes/), and
64+
[flutter/infra](https://flutter.googlesource.com/infra/)
65+
- _Some_ of the general infrastructure in [`dev/**`](../../dev)
66+
67+
## Priorities
68+
69+
Our prioritization is _similar_ to [team-wide priorities](../contributing/issue_hygiene/README.md#priorities),
70+
but with a few more specifics. Unless you work _on_ the infra team, we ask you
71+
do not add or change priority labels.
72+
73+
### [P0](https://github.com/flutter/flutter/issues?q=state%3Aopen%20label%3Ateam-infra%20label%3AP0)
74+
75+
An **emergency** that needs to be addressed ASAP as there is no reasonable
76+
workaround.
77+
78+
P0s are worked on actively, with an update shared with the core team at least
79+
once a week, and supercede _all_ other priorities (i.e. are a "stop work" order
80+
on other issues).
81+
82+
Examples might include:
83+
84+
- PRs cannot be submitted
85+
- Updating a PR, or pushing blank commits, do not trigger presubmits
86+
- A serious security or privacy vulnerability in a deployed release
87+
88+
### [P1](https://github.com/flutter/flutter/issues?q=state%3Aopen%20label%3Ateam-infra%20label%3AP1)
89+
90+
An important change that would significantly improve productivity for the team,
91+
or significantly improve reliability of the infrastructure (causing less P0 and
92+
P1 issues).
93+
94+
If an issue has not been pre-aligned with the team, or does not have a sponsor
95+
from another team that will be immediately responsible for a feature or bug fix,
96+
then P1 is _not_ suitable.
97+
98+
Examples might include:
99+
100+
- PRs can only be submitted with workarounds
101+
- Presubmits or postsubmits across the board have degraded in speed or
102+
reliability
103+
104+
### [P2](https://github.com/flutter/flutter/issues?q=state%3Aopen%20label%3Ateam-infra%20label%3AP2)
105+
106+
A change we agree with, but do not have bandwidth for.
107+
108+
An individual _could_ meaningfully make progress on this issue, and we would review it. If there are no volunteers, it may never be completed.
109+
110+
_See also: [contributing](#contributing)._
111+
112+
### [P3](https://github.com/flutter/flutter/issues?q=state%3Aopen%20label%3Ateam-infra%20label%3AP3)
113+
114+
A change we agree with, but would require significant maintenance.
115+
116+
While an individual _could_ meaningfully make progress on this issue, we would
117+
_not_ review and accept it, as the cost of maintaining it is beyond what we can
118+
currently sustain.
119+
120+
Our own team's discretion is used for what P3 issues are left open, and which
121+
are [closed as not planned](#we-prefer-closing-issues).
122+
123+
_See also: [contributions](#contributions)._
124+
125+
## We prefer closing issues
126+
127+
[Unlike the external Flutter product](../contributing/issue_hygiene/README.md#closing-issues),
128+
we do not accept contributions on all issues, and run the `team-infra` label more
129+
like an operations team; that is, if an issue is unlikely to be addressed or
130+
does not meet the [priorities criteria](#priorities) above, we often will close
131+
the issue as _not planned_.
132+
133+
An issue closed as _not planned_ does not mean the issue does not have validity,
134+
or that a subsequent more fleshed out issue or request would get more attention,
135+
it just represents the limited bandwidth and capability of the team responsible.
136+
137+
We encourage you/your team to manage your own "wishlist" of items, which could
138+
be in the format of a github issue (but _not_ tagged `team-infra`), a gist,
139+
a github project, a Google doc, or another format, and to
140+
[share it with us](#how-to-contact-us).
141+
142+
_See also: [contributing](#contributing)._
143+
144+
## Contributing
145+
146+
This sub-team has a more limited contributions policy than other parts of the
147+
project, as we build and support tools that are **not supported** as part of the
148+
Flutter product, including internal CI/CD and tooling.
149+
150+
In general, [P2](#p2) issues are a great way to contribute, as they have already
151+
been actively vetted as "this is important to us" and "we would accept a PR or
152+
PRs that address this bug or feature request".
153+
154+
For other issues, if you are part of the core Flutter team, please
155+
[contact us](#how-to-contact-us).
156+
157+
## Communication
158+
159+
The team primarily uses GitHub and internal Google chat for communication, which
160+
is unavailable to non-Google employees. For issues that are important to the
161+
broader community, we use [Discord](https://discord.com/channels/608014603317936148/608116355836805126)
162+
and [flutter-announce@](https://groups.google.com/g/flutter-announce) as needed.
163+
164+
### How to contact us
165+
166+
If you work at Google, see [go/flutter-infra-team](http://goto.google.com/flutter-infra-team).
167+
168+
Otherwise, see [#hackers-infra](https://discord.com/channels/608014603317936148/608021351567065092)
169+
on Discord. Note responses may be infrequent.

docs/triage/README.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -263,11 +263,7 @@ In addition, consider these issues that fall under another team's triage, but ar
263263

264264
### Infrastructure team (`team-infra`)
265265

266-
- [P0 list](https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3Ateam-infra+label%3AP0+sort%3Aupdated-asc)
267-
- [Cocoon PRs](https://github.com/flutter/cocoon/pulls)
268-
- [GoB CLs](https://flutter-review.googlesource.com/q/status:open+-is:wip)
269-
- [Incoming issue list](https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3Ateam-infra%2Cfyi-infra+-label%3Atriaged-infra+no%3Aassignee+-label%3A%22will+need+additional+triage%22+sort%3Aupdated-asc)
270-
- [Latest updated issue list](https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3Ateam-infra%2Cfyi-infra+sort%3Aupdated-desc)
266+
See the [Flutter Infra Team Triage](./Infra-Triage.md) page.
271267

272268
### iOS and macOS platform team (`team-ios` and `team-macos`)
273269

0 commit comments

Comments
 (0)