Skip to content

Document branch protection rules and settings #209

@RAprogramm

Description

@RAprogramm

Objective

Document recommended branch protection rules for the masterror repository to maintain code quality and enforce review processes.

Background

Phase 2.2 from KaiCode 2026 preparation (#205). Branch protection rules cannot be automated via PR but should be documented for maintainers to configure manually.

Tasks

Documentation

  • Create docs/BRANCH_PROTECTION.md with recommended settings
  • Document protection rules for main branch
  • Document protection rules for release branches
  • Add rationale for each rule

Recommended Rules for Main Branch

Required Status Checks:

  • Require branches to be up to date before merging
  • Require ci / fmt to pass
  • Require ci / clippy (MSRV) to pass
  • Require ci / clippy (stable) to pass
  • Require ci / test (MSRV) to pass
  • Require ci / test (stable) to pass
  • Require ci / coverage to pass
  • Require ci / deny to pass
  • Require ci / audit to pass

Pull Request Requirements:

  • Require at least 1 approval
  • Dismiss stale reviews on new commits
  • Require review from code owners (if CODEOWNERS file exists)

Additional Restrictions:

  • Require linear history (no merge commits)
  • Do not allow bypassing settings (even for admins)
  • Require signed commits (optional, document pros/cons)

Manual Setup Steps

Document step-by-step:

  1. Navigate to Settings → Branches
  2. Add branch protection rule for main
  3. Configure each setting with screenshots
  4. Verify rules are active

Success Criteria

  • Documentation file created with all settings
  • Rationale provided for each rule
  • Manual setup instructions with screenshots
  • Link added to CONTRIBUTING.md

Priority

Medium (manual setup, not blocking)

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions