A product manager coordinates five teams contributing to a regulated payments repository where unreviewed changes caused a production outage. Audit requires traceable approvals, blocked direct pushes to main, and consistent checks. Which branch strategy and policy best meets these requirements?
Select an answer to reveal the explanation.
Short Explanation
You can protect the main branch with pull requests, required reviews, and status checks to create a clear approval trail and consistent safeguards. Required reviews help prevent another unreviewed change from causing an outage.
Full Explanation
Protected main with pull requests, required reviews, and status checks fits the regulated payments context: it blocks direct pushes, creates traceable approvals, prevents a repeat of the unreviewed outage, and applies the same build, test, and compliance gates across five teams. Adding admin bypass for hotfixes may support availability, but any exempt path to main breaks the audit guarantee that every change is reviewed and checked. Replacing status checks with manual QA approval reflects a strong quality culture, but human sign-off varies by workload and judgment and cannot enforce identical scans on every merge. Using CODEOWNERS assignment with status checks improves reviewer routing and automation, but assignment alone does not require blocking approval; green checks could still allow a merge without recorded acceptance, leaving traceability incomplete. Exam caveat: distinguish assigning or notifying reviewers from requiring blocking approvals and checks; audit, regulated, and unreviewed-outage language signals mandatory enforcement, not best effort. Practical check: inspect rulesets to confirm direct pushes are denied for all roles, required approvals and checks are blocking, and bypass lists are empty; then sample recent merges to main and verify each has approvals and passing checks attached.