Initial skeleton: home-network-k3s implementation repo

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]>
This commit is contained in:
jakman85andClaude Opus 4.8 committed 2026-08-15 23:41:43 -05:00
commit 253b6600f4
10 files changed
+83

No files matched your search

+3
View File
@@ -0,0 +1,3 @@
# .gitea/workflows
_Placeholder — populated in Phase 0. See ../home-network-k3s (read-only spec)._
+28
View File
@@ -0,0 +1,28 @@
# OS / editor
.DS_Store
*.swp
*~
.idea/
.vscode/
# Secrets — SOPS-encrypted only; never commit plaintext (spec docs/07)
*.dec.yaml
*.decrypted.*
*.key
age.key
*.kubeconfig
kubeconfig
# IaC state / local runtime
.terraform/
*.tfstate
*.tfstate.*
.terraform.lock.hcl
*.tfvars
!*.example.tfvars
# Test / build artifacts
/results/
/reports/
*.junit.xml
coverage/
+31
View File
@@ -0,0 +1,31 @@
# 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.
+3
View File
@@ -0,0 +1,3 @@
# apps
_Placeholder — populated in Phase 0. See ../home-network-k3s (read-only spec)._
+3
View File
@@ -0,0 +1,3 @@
# catalog
_Placeholder — populated in Phase 0. See ../home-network-k3s (read-only spec)._
+3
View File
@@ -0,0 +1,3 @@
# clusters
_Placeholder — populated in Phase 0. See ../home-network-k3s (read-only spec)._
+3
View File
@@ -0,0 +1,3 @@
# conformance
_Placeholder — populated in Phase 0. See ../home-network-k3s (read-only spec)._
+3
View File
@@ -0,0 +1,3 @@
# platform
_Placeholder — populated in Phase 0. See ../home-network-k3s (read-only spec)._
+3
View File
@@ -0,0 +1,3 @@
# platform/kyverno
_Placeholder — populated in Phase 0. See ../home-network-k3s (read-only spec)._
+3
View File
@@ -0,0 +1,3 @@
# schemas
_Placeholder — populated in Phase 0. See ../home-network-k3s (read-only spec)._