Phases: 7. GitOps Foundation: ArgoCD installation and configuration 8. Observability Stack: Prometheus/Grafana/Loki + alerts 9. CI Pipeline Hardening: Vitest, Playwright, type checking All 17 requirements mapped to phases.
3.4 KiB
3.4 KiB
Requirements: TaskPlanner v2.0
Defined: 2026-02-03 Core Value: Production-grade operations — reliable deployments and visibility into system health
v2.0 Requirements
Requirements for milestone v2.0 Production Operations. Each maps to roadmap phases.
GitOps
- GITOPS-01: ArgoCD server installed and running in cluster
- GITOPS-02: ArgoCD syncs TaskPlanner deployment from Git automatically
- GITOPS-03: ArgoCD self-heals manual changes to match Git state
- GITOPS-04: ArgoCD UI accessible via Traefik ingress with TLS
Observability
- OBS-01: Prometheus collects metrics from cluster and applications
- OBS-02: Grafana displays dashboards with cluster metrics
- OBS-03: Loki aggregates logs from all pods
- OBS-04: Alloy DaemonSet collects pod logs and forwards to Loki
- OBS-05: Grafana can query logs via Loki datasource
- OBS-06: Critical alerts configured (pod crashes, disk full, app down)
- OBS-07: Grafana UI accessible via Traefik ingress with TLS
- OBS-08: TaskPlanner exposes /metrics endpoint for Prometheus
CI Testing
- CI-01: Vitest installed and configured for unit tests
- CI-02: Unit tests run in Gitea Actions pipeline before build
- CI-03: Type checking (svelte-check) runs in pipeline
- CI-04: E2E tests (Playwright) run in pipeline
- CI-05: Pipeline fails fast on test/type errors before build
Future Requirements
Deferred to later milestones.
Observability Enhancements
- OBS-F01: k3s control plane metrics (scheduler, controller-manager)
- OBS-F02: Traefik ingress metrics integration
- OBS-F03: SLO/SLI dashboards with error budgets
- OBS-F04: Distributed tracing
CI Enhancements
- CI-F01: Vulnerability scanning (Trivy, npm audit)
- CI-F02: DORA metrics tracking
- CI-F03: Smoke tests on deploy
GitOps Enhancements
- GITOPS-F01: Gitea webhook integration (faster sync)
Out of Scope
Explicitly excluded — overkill for single-user personal project.
| Feature | Reason |
|---|---|
| Multi-environment promotion | Single user, single environment; deploy directly to prod |
| Blue-green/canary deployments | Complex rollout unnecessary for personal app |
| ArgoCD high availability | HA for multi-team, not personal projects |
| ELK stack | Resource-heavy; Loki is lightweight alternative |
| Vault secrets management | Kubernetes secrets sufficient for personal app |
| OPA policy enforcement | Single user has no policy conflicts |
Traceability
Which phases cover which requirements. Updated during roadmap creation.
| Requirement | Phase | Status |
|---|---|---|
| GITOPS-01 | Phase 7 | Pending |
| GITOPS-02 | Phase 7 | Pending |
| GITOPS-03 | Phase 7 | Pending |
| GITOPS-04 | Phase 7 | Pending |
| OBS-01 | Phase 8 | Pending |
| OBS-02 | Phase 8 | Pending |
| OBS-03 | Phase 8 | Pending |
| OBS-04 | Phase 8 | Pending |
| OBS-05 | Phase 8 | Pending |
| OBS-06 | Phase 8 | Pending |
| OBS-07 | Phase 8 | Pending |
| OBS-08 | Phase 8 | Pending |
| CI-01 | Phase 9 | Pending |
| CI-02 | Phase 9 | Pending |
| CI-03 | Phase 9 | Pending |
| CI-04 | Phase 9 | Pending |
| CI-05 | Phase 9 | Pending |
Coverage:
- v2.0 requirements: 17 total
- Mapped to phases: 17
- Unmapped: 0
Requirements defined: 2026-02-03 Last updated: 2026-02-03 — Traceability updated after roadmap creation