backlog(B-0794 P1): node self-registers in git → ArgoCD bring-up of K8s + apps/charts; GitOps-native cluster substrate (Aaron 2026-05-26 architectural addition)#5106
Conversation
…e>/cluster-nodes/<node>/ → ArgoCD picks up → full K8s + apps/charts bring-up; GitOps-native cluster substrate from install moment (Aaron 2026-05-26)
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
There was a problem hiding this comment.
Pull request overview
Adds a new P1 backlog row (B-0794) describing a GitOps-native Kubernetes cluster bring-up flow where nodes self-register into the repo and ArgoCD reconciles the cluster/apps from that registration.
Changes:
- Added new backlog row file for B-0794 with sub-target decomposition and acceptance criteria.
- Updated
docs/BACKLOG.mdto include the new B-0794 entry under P1.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
| docs/backlog/P1/B-0794-node-self-registers-in-git-under-maintainers-cluster-nodes-triggers-argocd-full-bringup-of-k8s-apps-charts-gitops-native-cluster-substrate-aaron-2026-05-26.md | New P1 backlog row documenting the desired node self-registration → ArgoCD reconciliation end-state and sub-targets. |
| docs/BACKLOG.md | Adds the B-0794 index entry under the P1 section. |
| id: B-0794 | ||
| priority: P1 | ||
| status: open | ||
| title: Node self-registers in git under maintainers/<name>/cluster-nodes/<node>/ on first boot → ArgoCD picks up registration → full GitOps-native bring-up of K8s + apps + charts; cluster substrate is git-source-of-truth from install moment forward |
| depends_on: | ||
| - B-0789 | ||
| - B-0792 | ||
| - B-0793 |
Comment on lines
+105
to
+107
| 1. Reads `/etc/zeta/cluster-node-id` (from B-0792 iter-5.2) for hostname | ||
| 2. Reads `/etc/zeta/cluster-node-roles` (from B-0793 iter-5.3) for role-set | ||
| 3. Probes hardware (CPU model, RAM, GPUs via `lspci`/`nvidia-smi`, storage via `lsblk`, IP via `ip addr`, MAC via `ip link`) |
Comment on lines
+144
to
+147
| - **B-0789** (depends_on; load-bearing for node git-auth — without it, node can't push registration commit; iter-5+ sub-row of B-0789 is the canonical home for the git-auth substrate this row consumes) | ||
| - **B-0792** (depends_on; iter-5.2 hostname injection provides the node identity this row registers under) | ||
| - **B-0793** (depends_on; iter-5.3 role-as-capability provides the role-set this row registers) | ||
| - **B-0776** (composes; ArgoCD substrate IS one of the plugins in the simplest-first sequence; this row's reconciliation requires ArgoCD already deployed) |
| - [ ] **[B-0789](backlog/P1/B-0789-iter4-ssh-key-and-hashedpassword-substrate-for-cluster-bringup-2026-05-26.md)** Iter-4 cluster credential substrate — hashedPassword (zeta-change-me default) + operator-ssh-keys.nix module + manual edit workflow (v1) with zflash auto-inject as iter-4.2 follow-up | ||
| - [ ] **[B-0790](backlog/P1/B-0790-zero-dev-machines-cluster-native-architecture-voice-as-primary-operator-surface-aaron-2026-05-26.md)** Zero-dev-machines cluster-native architecture — all PRs from cluster; voice (Alexa + future microphones) as primary operator interface; dev machines and Alexa surfaces are conversational entry points into the cluster, not work substrate | ||
| - [ ] **[B-0792](backlog/P1/B-0792-iter5-wifi-credentials-injection-via-usb-esp-for-zero-typing-cluster-bringup-without-ethernet-load-bearing-for-homelab-persona-aaron-2026-05-26.md)** iter-5 wifi-credentials injection via USB ESP — homelab persona MOSTLY HAS NO ETHERNET; cluster must "remember the wifi on setup"; analogous to iter-4.x pubkey injection but for NetworkManager profile (Aaron 2026-05-26) | ||
| - [ ] **[B-0794](backlog/P1/B-0794-node-self-registers-in-git-under-maintainers-cluster-nodes-triggers-argocd-full-bringup-of-k8s-apps-charts-gitops-native-cluster-substrate-aaron-2026-05-26.md)** Node self-registers in git under maintainers/<name>/cluster-nodes/<node>/ on first boot → ArgoCD picks up registration → full GitOps-native bring-up of K8s + apps + charts; cluster substrate is git-source-of-truth from install moment forward |
This was referenced May 26, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Aaron 2026-05-26: 'also the machine alt to register itself in git somewhere under the maintainers dev cluster node so it registers with it settings in git to complete node setup and start kubernetes / argocd / full node / cluster install and all apps / charts'. Depends on B-0789 iter-5+ node git-auth substrate. Composes with B-0792 + B-0793 + B-0776 + B-0782 + B-0790. Implementation deferred to follow-on; substrate target named NOW so iter-5.x work aligns. See row body for 6 sub-targets + end-state operator UX.