Example ticket for retro: Implement configuration to dismiss GitHub approvals on certain actions
Example Ticket to Evaluate during the retro cc @FFawzy
Description:
I would like to suggest that we evaluate and potentially implement a configuration within our GitHub automation that would dismiss approvals under the following conditions:
- When a commit is made by runner.
- Optionally: When there has been a force push.
Background Context:
Recently, I approved a PR and didn't notice that overnight runner had completely overridden the contents on the branch. The build was still green in the morning and I merged it, and accidentally released an incorrect GraphQL schema.
Acceptance Criteria:
- Investigate the feasibility of dismissing approvals when a commit is made by a runner.
- Investigate the feasibility of dismissing approvals when there has been a force push.
- If feasible, implement the configuration settings that allow for these automated dismissals.
- Veirfy that Tech Writers are still be able to commit and merge after an approval.
- Provide documentation for the configuration, if necessary.
- Test the feature thoroughly to ensure it works as expected.
Related GitHub docs just in case: https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches#require-pull-request-reviews-before-merging (requires some concentrated reading time). The UI for it is all in the branch protection area.