ministryofjustice / ministryofjustice/developer-experience-github-audit
[EPIC] - Template Standardisation
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 2
- Forks
- 2
- Avg merge
- 10d 5h
- Merged PRs (30d)
- 2
Description
🧑💼 User Need
As a DevX team member
I want all MoJ repository templates updated to reflect the recommended baseline standards
so that any repository created from these templates inherits correct ownership, licensing, dependency management, workflow configuration, and visibility settings by default.
💡 Value / Purpose
- Repository templates are the most scalable mechanism for preventing compliance gaps at source. Fixing once benefits every repository created from them going forward.
- The template assessments below identified consistent gaps across standard files like CODEOWNERS, LICENSE, as well as standard configurations like visibility settings and workflows. These issues have been shown to directly contribute to compliance issues observed across the top 400 repositories (and beyond)
- #90
- #80
- Addressing the issues at template-level reduces retrospective remediation burden, and embeds the baseline standards into the repository creation process itself.
🛠️ Description / Context
- The template assessment identified 28 repository templates across the estate, of which:
- 21 are public
- 11 are missing CODEOWNERS
- 3 are missing MIT License
- 19 do not have
dependency-reviewworkflow configured - 13 are missing Dependabot configuration
- Branch protection settings are inconsistently configured
- This covers the full remediation of these gaps across all templates. Work is split across child tickets covering standard files, workflows, and repo-level settings.
🧪 Testing steps
- All child tickets completed and PRs merged
- Spot-check repositories created from updated templates to confirm baseline files and settings are inherited correctly
- Template assessment documentation updated to reflect final state
- Verified no templates remain publicly visible without documented exception
✅ Definition of Done
- All sub-issues completed
- All templates updated to include:
- CODEOWNERS stubs
- MIT LIcense file
-
dependency-reviewworkflow -
dependabotconfiguration
- All template settings/configurations updated such that:
- Visibility is
internal(unless documented exception) - Branch protection settings are consistent in line with github-community standards
- Visibility is
- Template assessment documentation updated to reflect changes
- Document work completed in Developer Experience Team SharePoint / Slack
❓ Additional Information
- The original template assessment checked for the presence of the devsecops SCA action and advised adding it into template repo workflows as standard, after recent discussion, it appears this is being deprecated in favour of pre-commit, so this remediation step will not be applied.
Notes
This is a "here and now" solution for templates, future-proofing can be achieved by proxy with #93
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the child tickets and template assessment, then inspect the 28 repository templates for the named CODEOWNERS, MIT License, dependency-review workflow, Dependabot configuration, visibility, and branch-protection settings. Done means all child PRs are merged, spot-checked repositories inherit the baseline, assessment documentation reflects the final state, and no templates remain publicly visible without a documented exception.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github, github-actions
- Domain
- ci-cd, devops, tooling
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100