Skip to content

[plan] add branch protection configuration file #349

@github-actions

Description

@github-actions

Objective

Create a .github/settings.yml file to codify branch protection rules for the main branch, making required status checks version controlled.

Context

Currently, branch protection rules are configured manually in the GitHub UI. This creates risks:

  • Settings can drift over time
  • Configuration is lost during repository transfers
  • No audit trail for changes to protection rules

Approach

  1. Create .github/settings.yml file
  2. Define protection rules for main branch:
    • Require status checks: Build and Lint (Node 18, 20, 22), Test Coverage, TypeScript Type Check, Test Examples, CodeQL, Trivy Container Scan
    • Require 1 approving review
    • Enforce up-to-date branches before merge
  3. Document the configuration in README or CONTRIBUTING.md

Files to Create/Modify

  • Create: .github/settings.yml
  • Update: README.md or CONTRIBUTING.md (document the settings file)

Acceptance Criteria

  • .github/settings.yml exists with comprehensive branch protection rules
  • All currently required status checks are included
  • PR review requirements are specified
  • Configuration is documented for maintainers

References

AI generated by Plan Command for discussion #345

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions