Skip to content

Run the Tenant RGD local pilot: adoption rehearsal + parity diff on the Docker clusterΒ #2487

Description

@devantler

πŸ€– Generated by the Daily AI Assistant

Part of #1932 β€” step 3b, the live exercise of the pilot scaffolding #2389 shipped. Gates Phase B of the ownership-transition design (ADR on the epic, 2026-07-05).

Problem

The Tenant RGD (#2197) has never been instantiated β€” no cluster has ever expanded a Tenant CR. Before the prod swap we need proof of (a) parity: the RGD's 10 expanded objects match the hand-written skeleton, and (b) adoption: kro v0.9.2 silently takes over pre-existing Flux-created objects via forced SSA (verified in source; needs live confirmation).

Proposal (one local-cluster session)

  1. Bring up the Docker-provider cluster; enable the opt-in tenant-ascoachingogvaner.yaml in k8s/providers/docker/apps/kustomization.yaml.
  2. Parity: diff the kro-expanded objects against the skeleton manifests (normalize managed-fields/labels).
  3. Adoption rehearsal (the exact prod sequence): reset, apply the 10 skeleton objects first, then enable the Tenant CR β€” verify silent takeover (kro.run/applyset field manager, ApplySet labels), zero deletes/recreates.
  4. Record results on Generalize the Tenant abstraction β€” evaluate Capsule vs KRO vs Helm library chartΒ #1932; fix any RGD parity gaps as a draft PR.

Constraint

The platform AGENTS.md maintenance rules bar agent runs from starting clusters ("Never run a cluster"), so this needs either a maintainer-attended/sanctioned session or an explicit exception for this one-off pilot β€” flagging rather than self-granting. GHCR creds must be seeded in the local OpenBao (infrastructure/ghcr/auth) for the OCIRepository leg; the expansion itself validates without them.

Acceptance criteria

Activity

  1. coderabbitai commented on Jul 5, 2026

    @coderabbitai
    Contributor
    πŸ”— Related PRs

    #2319 - feat(security): cosign-verify the infrastructure Flux OCI artifact [closed]
    #2339 - docs(agents): record merge-queue mechanics + root-cause-before-requeue [closed]


    πŸ“ Issue Planner

    Check the box below or use the @coderabbitai plan command to generate an implementation plan and prompts that you can use with your favorite coding assistant.

    • Create Plan

    πŸ§ͺ Issue enrichment is currently in open beta.

    You can configure auto-planning by selecting labels in the issue_enrichment configuration.

    To disable automatic issue enrichment, add the following to your .coderabbit.yaml:

    issue_enrichment:
      auto_enrich:
        enabled: false

    πŸ’¬ Have feedback or questions? Drop into our discord!

  2. moved this to πŸ“₯ Backlog in 🌊 Project Boardon Jul 18, 2026
  3. moved this from πŸ“₯ Backlog to 🧊 Icebox in 🌊 Project Boardon Oct 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Fields

    Priority

    None yet

    Start date

    None yet

    Target date

    None yet

    Effort

    None yet

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions