docs(plans): kuma-sync controller design and plan #1341

Merged
k.renner merged 1 commits from docs/uptime-kuma-plan into master 2026-10-18 21:05:14 +00:00
Member

Design and implementation plan for kuma-sync, the in-house Go controller that replaces AutoKuma (removed in #1340 after the failed pilot).

  • Spec: docs/superpowers/specs/2026-10-18-kuma-sync-design.md
  • Plan: docs/superpowers/plans/2026-10-18-kuma-sync.md

Owner decisions: Go, a typed CRD, ownership via a Kuma tag, latest stable versions everywhere.

Main calls of mine, open to review:

  • KumaMonitor (uptime.renner.uno/v1alpha1): one kind with a type enum and per-type blocks, enforced by CEL.
  • Ownership tag value <namespace>/<name>, not the UID, so a rebuilt cluster adopts the existing monitors.
  • Kuma client: breml/go-uptime-kuma-client v0.6.2 (tested against Kuma 2.5.6), behind an internal interface.
  • A finalizer plus periodic orphan GC; no local state.
  • Integration tests against a real Kuma 2.5.6 container that reproduce the AutoKuma pilot automatically.

This also carries two small edits to the parent plan that came after #1330 merged: the owner answers and the SMTP secret layout.

🤖 Generated with Claude Code

Design and implementation plan for **kuma-sync**, the in-house Go controller that replaces AutoKuma (removed in #1340 after the failed pilot). - Spec: `docs/superpowers/specs/2026-10-18-kuma-sync-design.md` - Plan: `docs/superpowers/plans/2026-10-18-kuma-sync.md` Owner decisions: Go, a typed CRD, ownership via a Kuma tag, latest stable versions everywhere. Main calls of mine, open to review: - `KumaMonitor` (`uptime.renner.uno/v1alpha1`): one kind with a `type` enum and per-type blocks, enforced by CEL. - Ownership tag value `<namespace>/<name>`, not the UID, so a rebuilt cluster adopts the existing monitors. - Kuma client: `breml/go-uptime-kuma-client` v0.6.2 (tested against Kuma 2.5.6), behind an internal interface. - A finalizer plus periodic orphan GC; no local state. - Integration tests against a real Kuma 2.5.6 container that reproduce the AutoKuma pilot automatically. This also carries two small edits to the parent plan that came after #1330 merged: the owner answers and the SMTP secret layout. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
claude-bot added 1 commit 2026-10-18 21:03:49 +00:00
docs(plans): kuma-sync controller design and plan
review-bot skipped: closed during the review
ci/woodpecker/pr/ci-scripts-test Pipeline was successful
7f4c9c60c3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
k.renner merged commit 5ebf7a04c4 into master 2026-10-18 21:05:14 +00:00
Sign in to join this conversation.