Phase 0 foundation shell (read-only spec at ../home-network-k3s). Top-level tree + rules; workstream agents fill their subtrees on feature branches. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
32 lines
1.9 KiB
Markdown
32 lines
1.9 KiB
Markdown
# home-network-k3s-impl
|
|
|
|
Implementation of the home k3s + Longhorn platform. This repo holds the **reconciled artifacts**
|
|
(Flux config, Kustomize overlays, KubeVirt/Helm manifests, ServiceDefinitions, Kyverno policies,
|
|
Chainsaw conformance tests, CI). It is driven by — and subordinate to — the **read-only
|
|
specification** at [`../home-network-k3s`](../home-network-k3s).
|
|
|
|
## Rules (from the spec — non-negotiable)
|
|
- **The spec is read-only.** Never modify anything under `../home-network-k3s`. Implement against it;
|
|
escalate spec problems, don't edit them (spec `AGENTS.md` §11, R-TEST-06).
|
|
- **Done = a green, reproducible, requirement-tagged conformance test** — never "merged," never a
|
|
manual demo (spec `docs/14`, `agents/definition-of-done.md`).
|
|
- **No work on `main`.** Every change is a feature branch merged into `main` (spec `CONTRIBUTING.md`).
|
|
- **No plaintext secrets** — SOPS-encrypted only (spec `docs/07`).
|
|
- **Phase discipline** — only build what the active roadmap phase authorizes (spec `roadmap/phases.md`).
|
|
|
|
## Layout
|
|
```
|
|
platform/ platform services (Flux HelmReleases/Kustomizations): cilium, longhorn,
|
|
cert-manager, externaldns, gateway, monitoring, velero, kubevirt,
|
|
image-automation, keycloak, oauth2-proxy, kyverno/
|
|
apps/ application workloads, one dir per catalog service
|
|
catalog/ ServiceDefinition entries (the onboarding surface)
|
|
schemas/ ServiceDefinition JSON Schema + renderer contract
|
|
clusters/ Flux entrypoints + dev/ and prod/ overlays
|
|
conformance/ Chainsaw behavior/conformance suite + harness + coverage report
|
|
.gitea/ Gitea Actions CI (lint · schema · Kyverno L0 · Chainsaw trigger · merge gate)
|
|
```
|
|
|
|
Current phase: **Phase 0 — Foundations** (repo, CI, ServiceDefinition schema, conformance harness,
|
|
Kyverno L0 gate). No cluster exists yet; Phase 1 (cluster bring-up) is not authorized.
|