Skip to content

[Task]: Set repository governance and protect main #69

Closed

Description

@simonteague6

Motivation

MiniMap has a contribution workflow, but documentation alone cannot prevent direct pushes to main or require reviews and passing CI. GitHub should enforce those parts. The policy needs to work for a student team without adding unnecessary friction.

Proposed change

Set up a branch protection rule or ruleset for main that requires pull requests, one approving review, the established CI check, and resolved conversations. Block force pushes and branch deletion, and prevent direct pushes in normal contributor workflows. Enable squash merging as the documented default, decide whether it should be the only merge method, and automatically delete merged branches. Keep Issues and Discussions enabled, retain the Ideas category, and review labels and milestones without creating a large taxonomy.

Affected modules or data

  • GitHub repository settings, rulesets/branch protection, merge settings, labels, and milestones
  • CONTRIBUTING.md policy alignment only; no application code or CI implementation changes

Acceptance criteria

  • Direct pushes to main are blocked for normal contributors.
  • PRs require one approval, the real CI check, and resolved conversations.
  • Force pushes and deletion of main are blocked.
  • Squash merge is enabled and clearly preferred or exclusively enabled.
  • Head branches are automatically deleted after merge.
  • Issues, Discussions, and the Ideas category remain enabled.
  • Final settings are read back from GitHub after saving.

Testing requirements

Verify the final rules and merge configuration through GitHub's settings/API. Confirm that the required check name matches the current CI workflow and that the settings agree with CONTRIBUTING.md.

Dependencies and risks

This depends on the completed contribution-workflow issue #67. Before saving, decide admin bypass, stale-approval dismissal, whether branches must be up to date, and whether rebase merge remains enabled. Do not block routine work with rules the team cannot consistently satisfy.

Activity

  1. changed the title [-][Task]: Configure repository governance and protect main[/-] [+][Task]: Set repository governance and protect main[/+] on Sep 8, 2026
  2. self-assigned this
    on Sep 8, 2026
  3. simonteague6 commented on Sep 10, 2026

    @simonteague6
    ContributorAuthor

    I set all the settings accordingly in the settings for this repo.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentation

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions