chore: bring repository conformance up to the template - #11
Merged
Conversation
Branch protection existed only as server-side configuration. It was correct — every repository in the organisation was checked against the template and all of them match, with no bypass actors — but nothing recorded that, so a change made in the web interface would have been silent, unversioned and unreviewable. The ruleset is now committed as code, which is what scripts/apply-ruleset.sh in repo-template already expects. Comparison stays a deliberate act rather than a standing gate: a committed snapshot plus a differ is the shape this restructure exists to remove, and re-applying the declared ruleset fixes drift rather than merely reporting it. Also fills the gaps against the template: the gitleaks configuration extending the upstream ruleset, and the security policy where absent.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Branch protection existed only as server-side configuration. It was correct — every repository in the organisation was checked against the template and all of them match, with no bypass actors — but nothing recorded that. A change made through the web interface would have been silent, unversioned and unreviewable.
What changed
The ruleset is now committed as code, which is what
scripts/apply-ruleset.shinrepo-templatealready expects.Comparison stays a deliberate act rather than a standing CI gate. A committed snapshot plus a differ is the shape this restructure exists to remove, and re-applying the declared ruleset fixes drift rather than merely reporting it — the same model as a plan-and-apply tool.
Also fills the remaining gaps against the template: the gitleaks configuration extending the upstream ruleset, and the security policy where it was absent.
Verified before committing
All eight repositories were compared against the template intent — enforcement, bypass actors, required status check, merge methods, linear history, deletion and force-push rules. Every one matches, zero drift. So these files record the current state rather than changing it.