Skip to content

[GH-02] Establish team-based CODEOWNERS and protected review rules #3

Description

@jaavid

Background

CoreLink is managed as one product across multiple implementation boundaries. This work is owned by .github under EPIC-01.

Problem

CoreLink does not yet have verified, consistently maintained evidence that every active repository has an authoritative ownership map and protected-review enforcement. A central policy in the organization .github repository is useful, but GitHub CODEOWNERS files are repository-scoped and are not inherited automatically by other repositories.

Goal

Establish team-based ownership and protected review rules across all active repositories, with .github holding the authoritative policy/template and each repository carrying or receiving the enforcement artifacts it actually requires.

Parent

  • Primary Product Epic: EPIC-01
  • Backlog ID: GH-02

Scope

  • Define the authoritative organization ownership policy and reusable CODEOWNERS template/generation approach in .github.
  • Materialize repository-scoped CODEOWNERS in each active repository that requires code-owner review; do not assume organization-level inheritance.
  • Configure or verify protected review enforcement through repository rulesets/branch protection as appropriate.
  • Define a minimal documented exception path for repositories that intentionally use different ownership/review rules.
  • Reconcile affected organization policy, product claims, security, release, documentation and repository maturity.
  • Retain acceptance evidence for the Governance Baseline gate.

Active Repository Coverage Set

As reconciled on 2026-09-01, the active repository set in scope contains 17 repositories:

  • platform
  • .github
  • product-planning
  • api-contracts
  • sdk-typescript
  • sdk-python
  • sdk-java
  • cli
  • mcp-server
  • mock-server
  • developer-docs
  • website
  • Console
  • Control
  • Deployment
  • Identity
  • design-system

Console is the canonical tenant/customer/partner/reseller frontend. Control is the separate private privileged platform-operator surface. Deployment is the canonical product-stack deployment boundary. Identity is the reusable Keycloak theme/identity presentation repository and must remain separated from deployment secrets and realm provisioning. design-system is the canonical runtime UI/design-system implementation boundary; product/design semantics remain authoritative in product-planning/design/system/. demo-repository is archived and excluded unless reactivated.

Out of Scope

  • Runtime feature implementation in this Issue.
  • Duplicating the product roadmap in repository README files.
  • Presenting scaffolds or planned capability as a supported release.
  • Treating a CODEOWNERS file in the organization .github repository as inherited enforcement for other repositories.
  • Archived repositories unless they are explicitly restored to active status.

Acceptance Criteria

  • Team and repository ownership is approved and documented in the authoritative organization policy.
  • Every active repository in the coverage set has a repository-scoped CODEOWNERS file where code-owner review is required, or a documented approved exception.
  • Protected review/ruleset configuration is verified for every active repository in scope.
  • At least one real pull-request workflow demonstrates that the expected owner review is requested/enforced.
  • Ownership, review and exception paths are explicit and linked from affected repositories without duplicating planning state.
  • Security, license, privacy and release impacts are addressed where applicable.
  • Acceptance evidence is linked and EPIC-01 is reconciled.

Current Audit Evidence

  • platform/.github/CODEOWNERS is verified.
  • Control/.github/CODEOWNERS was added on 2026-08-30 as part of the Control governance reconciliation.
  • Console/.github/CODEOWNERS was previously missing and remains part of the repository-wide enforcement backlog unless separately corrected.
  • Deployment and Identity are active repository boundaries and remain in scope.
  • design-system became an active repository on 2026-08-31 and was missing from the prior 16-repository coverage set; a 2026-09-01 repository code search did not find a CODEOWNERS file, so it requires CODEOWNERS or an approved exception.
  • Protected-review/ruleset enforcement still requires repository-by-repository verification where plan/integration access permits.

Technical Notes

Use organization-wide policy/templates where useful, but keep enforcement semantics repository-local where GitHub requires it. Control should receive stricter review/security treatment than ordinary tenant-facing UI because it aggregates cross-tenant and provider/infrastructure diagnostics. Deployment should receive release/production-change ownership treatment. Identity should receive security/release review appropriate to authentication UX and published artifacts. design-system should have explicit UI-foundation/release ownership because changes propagate into multiple product surfaces and can create cross-repository accessibility/RTL/brand regressions.

Dependencies

  • Decision prerequisite: team and repository ownership approval must establish authoritative owners before CODEOWNERS/protection can be treated as accepted governance.
  • Execution prerequisite: assign an ownership/protection disposition for each of the 17 active repositories: CODEOWNERS + enforcement, CODEOWNERS + plan-limited enforcement with explicit compensating control/risk acceptance, or documented approved exception.
  • Blocks: protected review enforcement, repository ownership acceptance, and EPIC-01 governance completion.
  • Cross-repository: implementation will require repository-specific changes/configuration; link concrete PRs or evidence instead of duplicating product planning.
  • Current dependency state: See the CoreLink Product organization Project.

Planning Metadata

  • Type: Technical Task
  • Priority snapshot: P0
  • Product milestone snapshot: Governance Baseline
  • Domains snapshot: governance, security
  • Area snapshot: operations
  • Complexity: M
  • Created in status: Triage
  • Current status and DRI: See the CoreLink Product organization Project.
  • Intended repository labels: type:technical-task

Definition of Done

  • Acceptance criteria demonstrated across all 17 active repositories in scope.
  • Required reviews and retained evidence pass.
  • Organization and repository links are updated.
  • Security and policy implications are reviewed.
  • Documentation and release notes are updated where applicable.
  • Pull request(s), ruleset/branch-protection evidence, compensating-control evidence, or approved exceptions are linked.

Metadata

Metadata

Assignees

No one assigned

    Labels

    type:technical-taskImplementation or engineering enablement work

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions