-
Notifications
You must be signed in to change notification settings - Fork 140
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Projects getting spammed with repeated bugs that are in dependencies and we can't directly fix #915
Comments
Sorry for the noise. The new issues are the „real“ ones, whereas the previous ones shouldn’t have been filed due to several bugs. There won’t be any more issues unless someone creates a new flag. I’ll see whether we can add some logic for handling upstream breakages. |
At this point, 390+ issues have been filed across 50+ projects. Please stop @bazel-flag-bot from sending notifications for now. Which is to say, either put it into dry-run mode or turn it off entirely. Also, given that these problems started nine days ago, please write a postmortem. It appears that various things could have been done better. Do Bazel folks not have a freeze at this time of year? |
Mini Post-MortemSummaryA new feature was rolled out that filed > 300 issues across > 50 GitHub repositories, most of which had incorrect titles & contents, and all of which were not actionable due to a bug in Bazel. ContextThe Bazel team maintains a pipeline on its CI that tests several projects with incompatible flags that are going to be flipped in a future Bazel release. This pipeline runs every night. Timeline
What went wrong (user impact)
Root causesI see two major root causes that led to the current situation:
Lessons learned
|
Regarding the freeze: We do have a production freeze inside Google, which meant that I finally had time to work on this Bazel-only feature (which isn't affected by the freeze). |
@fweikert thanks for the write up. Is the system able to look at closed issues on the repos before filing something? (can it look for open issues?) i.e. - should it be able to realized something was already filed (and maybe closed) and thus reopen/comment on that other issue rather than opening up another one? |
Yes, the script checks the title of all existing issues created by bazel-flag-bot, and does not file a new issue if there is already one for a certain (flag, project, Bazel version) combination. For example, if the script created an issue titled "Flag --incompatible_foo will break Envoy in Bazel 3.0", it will never create a new issue for Envoy and --incompatible_foo, unless we decide to postpone the flag flip to 4.0 or later (this case can be improved). For some flags we haven't decided on when to flip them. In this case the script will create an issue titled "Flag --incompatible_bar will break rules_perl in a future Bazel release". Once we have a target release, the script will edit the title of the existing issue to mention the concrete Bazel version, but it won't create a new issue. |
This shows that a flag was not ready. Maybe the flag owner should opt in, before the bot starts creating bugs.
Something easier to roll out: send a weekly email to a mailing-list (e.g. bazel-dev until we have something better) with the summary of the breakages. If there's an issue with the script or a flag, it can be discussed on the mailing-list, instead of having issues in 50 repos. |
This was discussed in the past, but we never updated the policy. As this came up recently in a discussion with Lukács, I'm doing sending this PR. The goal is to acknowledge that the Bazel team is not responsible for updating GitHub repositories (outside a few ones that we own). * Notifying the owners is a step that should be automated (bazelbuild/continuous-integration#915). * 14 days is aligned with the policy for recommended rules (https://www.bazel.build/recommended-rules.html)
This was discussed in the past, but we never updated the policy. As this came up recently in a discussion with Lukács, I'm doing sending this PR. The goal is to acknowledge that the Bazel team is not responsible for updating GitHub repositories (outside a few ones that we own). * Notifying the owners is a step that should be automated (bazelbuild/continuous-integration#915). * 14 days is aligned with the policy for recommended rules (https://www.bazel.build/recommended-rules.html)
bazelbuild/rules_swift#369
bazelbuild/rules_swift#368
bazelbuild/rules_swift#358
Please stop filing these since the projects can't do anything about them themselves.
The text was updated successfully, but these errors were encountered: