Elly Fong-Jones | bbc9206 | 2019-05-29 15:38:03 | [diff] [blame] | 1 | # Chromium Sheriffing |
| 2 | |
Elly Fong-Jones | bbc9206 | 2019-05-29 15:38:03 | [diff] [blame] | 3 | Sheriffs have one overarching role: to ensure that the Chromium build |
| 4 | infrastructure is doing its job of helping developers deliver good software. |
| 5 | Every other sheriff responsibility flows from that one. In priority order, |
| 6 | sheriffs need to ensure that: |
| 7 | |
| 8 | 1. **The tree is open**, because when the tree is closed nobody can make |
| 9 | progress; |
| 10 | 2. **New test failures are not introduced**, because they weaken our assurance |
| 11 | that we're shipping good code; |
| 12 | 3. **Existing test failures are repaired**, for the same reason |
| 13 | |
| 14 | As the sheriff, you not only have those responsibilities, but you have any |
| 15 | necessary authority to fulfill them. In particular, you have the authority to: |
| 16 | |
| 17 | * Revert changes that you know or suspect are causing breakages |
| 18 | * Disable or otherwise mark misbehaving tests |
Jason Clinton | 0daf7b0 | 2021-02-09 20:36:22 | [diff] [blame] | 19 | * Use Owners-Override label to override OWNERS checks freely as part of your |
| 20 | sheriffing duties |
Elly Fong-Jones | bbc9206 | 2019-05-29 15:38:03 | [diff] [blame] | 21 | * Pull in any other engineer or team you need to help you do these duties |
Jason Clinton | 0daf7b0 | 2021-02-09 20:36:22 | [diff] [blame] | 22 | * For clean reverts and cherry-picks, add the |
| 23 | [Rubber Stamper bot](code_reviews.md#automated-code_review). All other |
| 24 | changes require a +1 from another committer. |
| 25 | |
| 26 | TBRs were removed in Q1 2021. |
Elly Fong-Jones | bbc9206 | 2019-05-29 15:38:03 | [diff] [blame] | 27 | |
Eric Foo | da089b5 | 2021-08-03 16:25:52 | [diff] [blame] | 28 | For more information on Chromium Trunk Sheriffs, including How Tos, Swapping |
| 29 | Shifts and rotation updates, please see [Chromium Trunk Sheriffing](http://goto.google.com/chrome-trunk-sheriffing) |
| 30 | |
Joey Scarr | 9ded41f | 2020-07-01 04:23:29 | [diff] [blame] | 31 | ## How to be a Sheriff |
Elly Fong-Jones | bbc9206 | 2019-05-29 15:38:03 | [diff] [blame] | 32 | |
Joey Scarr | 9ded41f | 2020-07-01 04:23:29 | [diff] [blame] | 33 | To be a sheriff, you must be both a Chromium committer and a Google employee. |
| 34 | For more detailed sheriffing instructions, please see the internal documentation |
| 35 | at |
| 36 | [go/chrome-sheriffing-how-to](https://goto.google.com/chrome-sheriffing-how-to). |
Joey Scarr | 223c9dc | 2020-07-09 16:39:24 | [diff] [blame] | 37 | |
| 38 | ## Contacting the Sheriffs |
| 39 | |
| 40 | The currently oncall sheriffs can be viewed in the top-left corner of the |
| 41 | [Chromium Main Console](https://ci.chromium.org/p/chromium/g/main/console). You |
| 42 | can also get in touch with sheriffs using the |
| 43 | [#sheriffing Slack channel](https://chromium.slack.com/messages/CGJ5WKRUH/). |
Devlin Cronin | caddfe0f | 2021-09-15 17:01:38 | [diff] [blame] | 44 | |
| 45 | ## Please don't pass bugs back to the sheriff that assigned them to you |
| 46 | As part of their role, sheriffs will triage open test failures and flakes. If |
| 47 | possible, they will identify a culprit CL and revert it; however, sometimes this |
| 48 | is not feasible. In that case, sheriffs will assign these bugs to appropriate |
| 49 | owners. They typically do this by looking for: |
| 50 | |
| 51 | 1. The test author, or last person to make significant changes, or |
| 52 | 2. A proximal OWNER of the test |
| 53 | |
| 54 | _Pro-tip: Sheriffs, identify yourself in your comments, e.g., "[Sheriff] |
| 55 | assigning to the test author for further triage."_ |
| 56 | |
| 57 | If you are assigned a bug by a sheriff, please don't pass the bug back to that |
| 58 | person. Sheriffs have likely never seen the code before (or since), and are |
| 59 | unlikely to be much help. Additionally, if >8 hours have passed, that person is |
| 60 | no longer sheriff, and thus no longer responsible for triaging these bugs. |
| 61 | |
| 62 | Instead, if you aren't the best owner for the bug, please help to triage it |
| 63 | more appropriately, since you're probably the test author, familiar with the |
| 64 | test, or an OWNER. If have no idea who a good owner for the test is (or were |
| 65 | assigned the bug in error\*), you can reapply the `Sheriff-Chromium` label and |
| 66 | flip the status to `Untriaged`; this will put it back in the sheriff queue for |
| 67 | the next sheriff to take a look at. Please only do this as a last resort, since |
| 68 | the next sheriff is unlikely to have any more information about the issue. |
| 69 | |
| 70 | \*If you believe you were assigned the bug in error, it might be worth finding |
| 71 | out why the sheriff passed it to you, and remedying it if possible - e.g. by |
| 72 | updating OWNERS files. |