Repository navigation
Roadmap: declarative GitHub-org-as-code β extend coverage & sustain the source of truthΒ #56
Description
π€ Generated by the Agentic Engineer
Product outcome
Keep organization configuration and repository automation in one reviewed source of truth. Crossplane remains the settings writer; complete read-only audits detect drift and missing ownership without introducing another settings writer.
Delivered foundation
The original delivery issues are closed and remain linked for evidence:
- Manage issue labels declaratively in deploy/Β #51 β declarative issue labels
- Model org-level settings, rulesets & branch protection in deploy/Β #52 β organization rulesets and branch policy
- Complete declarative team coverage (admin team + gap repos)Β #53 β declared team coverage
- Populate repository metadata (description, topics, homepage) on managed Repository CRsΒ #54 β repository descriptions, topics and homepages
- Complete canonical agent shims and deploy contributor guidanceΒ #55 β repository instructions and contribution guidance
Labels and roadmap structure now exist; the earlier June inventory and missing-label explanation no longer describe the product.
Current delivery sequence
- Adopt supported GitHub rulesets and track remaining provider gapsΒ #69 β adopt supported ruleset capabilities through Observe-first resources; retain explicit provider, approval and native-control gaps for unsupported policies.
- Migrate governance intent from devantler-tech/maintenance into .github (declarative) and retire the maintenance repoΒ #84 β establish recurring complete repository/admin-team evidence and issue-on-gap reporting before retiring legacy maintenance. Manual App coverage is proven; Run the complete governance audits routinely and report gapsΒ #406 supplies the routine delivery, and Return UNKNOWN when governance audits abort before completionΒ #407 fixes premature auditor success.
- Model org-wide GitHub settings (webCommitSignoffRequired, default permission, 2FA) once the provider supports itΒ #85 β obtain upstream provider support and adopt organization settings through the approved provider path. The read-only observer in Detect drift in the four declared organization settingsΒ #403 does not fulfill adoption, and its relationship to the earlier no-workaround direction awaits maintainer clarification. Roll out and retire the organization-settings audit opt-inΒ #404 remains its lifecycle gate.
Completion standard
A rendered declaration is desired state, not proof of effective GitHub state. Read back the full stable live universe, exact targets and bypasses, require native positive and negative controls where enforcement changes, and preserve UNKNOWN for incomplete joins. Routine monitoring, rollout-input retirement, provider adoption and maintenance archive remain separate deliveries. No security policy, grant, archive or irreversible deletion is authorized by a successful audit alone.
Metadata
Metadata
Assignees
Labels
Type
Fields
Projects
- StatusShow more project fieldsπ§ Icebox
Activity
feat(deploy): declare labels for actions + reusable-workflows (#66)
devantler commentedon Jul 18, 2026
Roadmap refresh β 2026-07-18
All five original children are delivered and closed, so the extend coverage half of this epic
is complete:
The sustain the source of truth half had no enforcing code, and had already slipped. Measured
against the 21 non-archived org repos today:
labels/andgrant-admins-on-*are 21/21, butrepositories/is 18/21,repository-permissions/17/21, andgrant-maintainers-on-*14/21 β 14(dimension, repo)pairs undeclared. Two dimensions being complete is what makes the rest driftrather than a designed boundary.
New children:
Remaining coverage work already tracked outside this list: #69 (rulesets awaiting provider support),
#84 (retire the
maintenancerepo), #85 (org-wide settings awaiting provider support), #112(repository-settings writes 422-blocked β gates the
repositories/half of #115).fix(labels): adopt world-at-ruin labels with the full policy set (#117)
test: guard declarative coverage of deploy/ (#114)
chore: agent-claim #56 nonce=fb64699f0ef590260f23c85427a3fff8