Phase 1 — Foundations¶
Project: nodewright
Branch: main
Description: Nodewright — Kubernetes-native operator productizing the vx-rail-node-init bash DaemonSet for SpectroCloud Palette Edge clusters. v0.1 scope: VMVolumeMigration killer feature + read-only health surface, ships on the 9-cell substrate matrix. This prd.json drives the Foundations build (PRD-03) — repo scaffolding, CI lanes, ralph-ci.sh wrapper, package skeletons. Killer Feature build follows in a separate prd.json after Foundations BLESSED.
Story progress¶
- ✅ Completed: 10
- ⏳ Pending: 39
- 🛑 Blocked: 0
All stories¶
| ID | Title | Status | Notes |
|---|---|---|---|
| F-01 | kubebuilder init | ✅ done | |
| F-02 | Split cmd/{operator,agent,webhook,nwctl} | ✅ done | |
| F-03 | Pin Go module dependencies | ✅ done | |
| F-04 | Makefile core targets | ✅ done | |
| F-05 | Makefile test/bench targets | ✅ done | |
| F-06 | Makefile lint-pass targets | ✅ done | |
| F-07 | make rbac-doc + drift detection | ⏳ pending | |
| F-08 | Dockerfile.standard with cosign-verified base | ⏳ pending | |
| F-09 | Dockerfile.fips with Chainguard FIPS base | ⏳ pending | |
| F-10 | .dockerignore | ⏳ pending | |
| F-11 | .github/workflows/lint.yml | ⏳ pending | |
| F-12 | .github/workflows/build.yml | ⏳ pending | |
| F-13 | .github/workflows/unit.yml + k8s-matrix.yml | ⏳ pending | |
| F-14 | .github/workflows/integration.yml | ⏳ pending | |
| F-15 | .github/workflows/e2e-fake.yml | ⏳ pending | |
| F-16 | .github/workflows/security-source.yml | ⏳ pending | |
| F-17 | .github/workflows/security-supply.yml + release-verification.md | ⏳ pending | |
| F-18 | .github/workflows/fips-build.yml | ⏳ pending | |
| F-19 | .github/workflows/compliance.yml (stub) | ⏳ pending | |
| F-20 | .github/workflows/compliance-fallback.yml (stub) | ⏳ pending | |
| F-21 | .github/workflows/e2e-hardware.yml | ⏳ pending | |
| F-22 | .github/workflows/bench.yml | ⏳ pending | |
| F-23 | .github/workflows/runner-heartbeat-check.yml (stub) | ⏳ pending | |
| F-24 | .github/workflows/test-fixtures-build.yml (stub) | ⏳ pending | |
| F-25 | Port scripts/ralph-ci.sh from nutanix-vma | ✅ done | Bootstrap-satisfied; verified pre-launch. |
| F-26 | Initial prd.json + progress.txt | ✅ done | Bootstrap-satisfied; verified pre-launch. |
| F-27 | Verify ralph-ci.sh --reset 0 works | ✅ done | Bootstrap-verified; ./scripts/ralph-ci.sh 0 produced metrics-report.md cleanly. |
| F-28 | api/v1alpha1/ NodewrightCluster CRD shell | ⏳ pending | |
| F-29 | internal/storage/ Backend interface + per-backend stubs | ⏳ pending | |
| F-30 | internal/os/ OSProvider interface + per-OS stubs | ⏳ pending | |
| F-31 | internal/audit/ skeleton | ⏳ pending | |
| F-32 | internal/test/{fakes,chaos,harness} stubs | ⏳ pending | |
| F-33 | internal/{webhook,controllers,agent} skeletons | ⏳ pending | |
| F-34 | cmd/{operator,agent,webhook,nwctl}/main.go scaffolds | ⏳ pending | |
| F-35 | charts/nodewright + packs/nodewright skeletons | ⏳ pending | |
| F-36 | ui/ Vite+React+TS scaffold with brand CSS vars | ⏳ pending | |
| F-37 | docs/ runbooks + customer-acceptance + compliance-baseline stubs | ⏳ pending | |
| F-38 | hack/lint/ go/analysis stub framework | ⏳ pending | |
| F-39 | scripts/provision-hw-cluster.sh red-stub | ⏳ pending | |
| F-40 | AGENTS.md | ✅ done | Bootstrap-satisfied; verified pre-launch. |
| F-41 | CONTRIBUTING.md initial | ⏳ pending | |
| F-42 | CODEOWNERS | ⏳ pending | |
| F-43 | Conventional commits + commitlint config | ⏳ pending | |
| F-44 | scripts/branch-protection.sh apply/verify + workflow | ⏳ pending | |
| F-45 | LICENSE + README + .gitignore updates | ⏳ pending | |
| F-46 | Threat-model artifact stubs (PRD-01 owned) | ⏳ pending | |
| F-47 | Fresh-clone build verification | ⏳ pending | |
| F-48 | First-push CI green on main | ⏳ pending | |
| F-49 | Final ralph noop verification | ⏳ pending |