This repository owns the organization-agnostic engine that discovers repositories and reconciles declarative GitHub repository governance, rulesets and supported repository metadata.
- Organization/product policy belongs in caller-owned
governance.config.json, not hard-coded in the engine. - Keep dry-run as the safe default; mutation must remain explicit.
- Repository metadata reconciliation may manage GitHub settings such as description, homepage and topics.
- File content such as licenses, README files and
AGENTS.mdremains version-controlled in each repository. - Release automation belongs in
LibreCodeCoop/github-workflows, not here.
Run or rely on CI for:
- TypeScript build/type checks;
- Vitest;
- actionlint;
- zizmor;
- CodeQL;
- REUSE compliance.
- Use short-lived GitHub App tokens with the narrowest repository scope.
- Do not centralize caller credentials in this repository.
- Do not weaken rulesets silently to make reconciliation pass.
- Keep third-party actions pinned to immutable SHAs.
New repository-owned files use AGPL-3.0-or-later and must satisfy REUSE/SPDX checks.