- Update MaintainershipMap.IsApproved to require approvals from all listed maintainers (excluding the submitter) when ReviewRequired is enabled. - Split ReviewInterface logic to differentiate between approvals and rejections by adding IsRejectedBy and restricting IsReviewedBy to the APPROVED state. - Fix premature removal of maintainer review requests in FindMissingAndExtraReviewers; ensure requests remain active if ReviewRequired is true and approvals are still missing. - Ensure any maintainer rejection correctly triggers the cleanup of other redundant review requests. Analysis Summary The failures in test_006 and test_007 were caused by two primary logic bugs: 1. Conflated Review States: IsReviewedBy treated both "Approved" and "Request Changes" as the same state. This meant a rejection didn't properly trigger the "cleanup" logic, and an approval was indistinguishable from a rejection in several checks. 2. Greedy Reviewer Removal: The bot assumed that any maintainer approval meant all other maintainer requests could be removed. This contradicted the ReviewRequired flag, which (as seen in test_007) is intended to mandate multiple/all maintainer approvals before the PR is considered ready.
AutoGits
The bots that drive Git Workflow for package management
- devel-importer -- helper to import an OBS devel project into a Gitea organization
- gitea-events-rabbitmq-publisher -- takes all events from a Gitea organization (webhook) and publishes it on a RabbitMQ instance
- gitea-status-proxy -- allows bots without code owner permission to set Gitea's commit status
- group-review -- group review proxy
- hujson -- translates JWCC (json with commas and comments) to Standard JSON
- obs-forward-bot -- forwards PR as OBS sr (TODO)
- obs-staging-bot -- build bot for a PR
- obs-status-service -- report build status of an OBS project as an SVG
- workflow-pr -- keeps PR to _ObsPrj consistent with a PR to a package update
- workflow-direct -- update _ObsPrj based on direct pushes and repo creations/removals from organization
- staging-utils -- review tooling for PR (TODO)
- list PR
- merge PR
- split PR
- diff PR
- accept/reject PR
Bugs
Report bugs to issue tracker at https://src.opensuse.org/git-workflow/autogits
Build Status
Devel project build status (main branch):
staging branch build status:
Description
Languages
Go
86.5%
Python
10.1%
Shell
2.1%
Perl
0.7%
Makefile
0.4%
Other
0.2%