generated from mathias/template-go-web
Add docs/INCEPTION-OATH.md — the sprint's acceptance contract (general + cad-atlas-specific clauses, tagging as the closing act). S3 (var-go/oath enforcing cad-atlas PRs) is descoped to a tracked fast-follow (#1): var-go v1's candidate is a hardcoded self-test and its module is not cross-repo consumable, so a green status would prove wiring, not verification. Honesty rule: a clause blocked by an external dependency is descoped and tracked, never claimed. Methodology persisted: brain wiki/homelab/decisions/inception-sprint-and-oath.md Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
94 lines
5.3 KiB
Markdown
94 lines
5.3 KiB
Markdown
# cad-atlas
|
|
|
|
## Identity
|
|
|
|
- **Name**: cad-atlas
|
|
- **Owner**: Mathias
|
|
- **Client**: personal
|
|
- **Repo**: git.d-ma.be/mathias/cad-atlas
|
|
- **Status**: active
|
|
- **Stack**: Go + Templ + HTMX + CDN Tailwind (template-go-web). Cross-project conventions: `~/dev/.context/AGENT.md`.
|
|
|
|
## What this is
|
|
|
|
A visual **atlas of the Continuous Agentic Development (CAD) workflow** — the full path
|
|
from a captured signal to a deployed k3s pod, one screen, reel-style ("From Signal to Pod").
|
|
It exists to (a) make the homelab's agentic delivery pipeline legible to a human, and
|
|
(b) render the CAD **audit chain** — which doubles as the regulated-industry audit artifact.
|
|
|
|
> **Core thesis:** the CAD audit chain *is* the visualization data.
|
|
> `TELOS → goal → spec → issue → execution → attestation → deploy` is both the trace and
|
|
> the audit package. Phase C renders it once and serves two masters (observability + compliance).
|
|
|
|
## Phases
|
|
|
|
- **Phase A — static hero viz** (current). Self-contained `internal/web/static/cad-atlas.html`,
|
|
data-driven from a hand-authored `STAGES` array (ground-truth snapshot from brain, 2026-07-19).
|
|
Served at `/` by `internal/web/handler.go` via `go:embed`. Reel-parity: SVG spine with
|
|
arrowheads, animated pulse, dashed **feedback bus** (stage 08 → TELOS), replay + slow-mo.
|
|
- **Phase B — generated-from-source**. Parse brain docs + `.gitea/workflows` + infra manifests
|
|
→ render the graph so it can't drift from config.
|
|
- **Phase C — live trace viewer**. Replace the static `STAGES` array with live reads of the
|
|
`assessor-loop` attestation ledger + brain `session_log` + Gitea run API + Flux events.
|
|
This is the prize: a real signal→pod trace viewer that is also the audit package.
|
|
|
|
## The workflow it visualizes (9 stages)
|
|
|
|
`00 Signals` (Applied AI Radar → mathias/signals) → `01 TELOS` (intention substrate) →
|
|
`02 Strategic session` (claude.ai frontier + LLM Council + Autoresearch Council) →
|
|
`03 Spec → Gitea issue` (agent-ready contract; Ed25519 admission #36; **var-go Oath**) →
|
|
`04 Human dispatch gate` (the only checkpoint; session-dispatch bridge → cad-dispatch.yml) →
|
|
`05 Execute · agentsquad` (serve/taskqueue, exec+review loop, risk LOW/MED/HIGH, dma-cli routing,
|
|
assessor-loop ledger) → `06 PR → CI` (go test/vet/lint/govulncheck + **var-go/oath gate**) →
|
|
`07 CD → pod` (Flux GitOps → k3s on koala) → `08 Loop back` (outcome scored vs TELOS goal).
|
|
|
|
### Three orthogonal governance gates
|
|
|
|
| Gate | Guards | Where |
|
|
|---|---|---|
|
|
| Ed25519 admission controller (#36) | spec **integrity** (issue untampered) | stage 03 |
|
|
| dispatch-allow (`.dispatch-allow` + `mathias/dispatch` allowlist) | repo **eligibility** (may agents run here) | stage 04/05 |
|
|
| **var-go Oath** (`cmd/vargo-gate`, commit status `var-go/oath`) | output **correctness** (PR satisfies the Oath; floor over reviewer, anti-rubber-stamp #55) | stage 06 |
|
|
|
|
## Dogfooding
|
|
|
|
This repo is built *through* the workflow it depicts. It is `dispatch-allow`-enabled, and its
|
|
own build increments are governed by a **var-go Oath** embedded in their spec issues (see the
|
|
Stage-03 tracking issue). Bootstrapping honesty (per swedsl honest-stub discipline): the Oath is
|
|
**defined** but `cmd/vargo-gate` is **not yet wired** into this repo's CI — until it is, the Oath
|
|
is advisory here. Wiring it is a first tracked task; disclosed in code, this doc, and CI config.
|
|
|
|
## Brain references (source of truth — `brain_get <path>`)
|
|
|
|
- `wiki/homelab/decisions/cad-atlas-audit-chain-is-viz-data.md` — **this project's genesis note**: the audit-chain-is-viz-data thesis, the three gates, template-go-web footguns
|
|
- `wiki/homelab/decisions/inception-sprint-and-oath.md` — the Inception Sprint + Oath methodology (this repo's birth is the worked example); see [`docs/INCEPTION-OATH.md`](docs/INCEPTION-OATH.md) for the kept Oath
|
|
- `knowledge/workflow-idea-to-running-service.md` — Double Diamond idea→service workflow
|
|
- `wiki/homelab/decisions/continuous-agentic-development-cad-concept-2026-06-16.md` — CAD definition
|
|
- `wiki/agentsquad/decisions/cad-dispatch-bridge.md` — claude.ai → agentsquad trigger path
|
|
- `wiki/agentsquad/facts/llm-council-design-and-first-runs-2026-06-21.md` — LLM Council
|
|
- `wiki/agentsquad/decisions/autoresearch-council-sibling-pipe.md` — Autoresearch Council
|
|
- `wiki/agentsquad/decisions/serve-http-task-api.md` — agentsquad serve/taskqueue
|
|
- `knowledge/var-go-anchor-to-span-spike-verdict.md` — var-go runner + CAD gate seam
|
|
- `knowledge/swedsl-vargo-sprint1-enforcement-teeth-verdict.md` — vargo-gate enforcement teeth
|
|
- `wiki/assessor-loop/decisions/assessor-loop-genesis.md` — attestation ledger (Phase C source)
|
|
- `wiki/homelab/facts/homelab-network-topology-reference.md` — koala/iguana/flamingo/piguard
|
|
|
|
## External references
|
|
|
|
- Inspiration reel — "From Inbox to Shipped" pipeline viz: https://www.instagram.com/reel/DY92L7bu27j/
|
|
- karpathy/llm-council — origin of the Council pattern
|
|
- Double Diamond design process (Discover/Define/Develop/Deliver)
|
|
|
|
## Run
|
|
|
|
```bash
|
|
task check # lint + vet + test (CI gate)
|
|
task run # build + serve at http://localhost:8080 → the atlas
|
|
```
|
|
|
|
## Deploy note
|
|
|
|
CD (`.gitea/workflows/cd.yml`) deploys to k3s namespace `cad-atlas` via Flux. Per the known
|
|
template-go-agent CD gap: the `deploy` job stays RED until `mathias/infra` has
|
|
`k3s/apps/cad-atlas/deployment.yaml`. `check` + `build` are the real bootstrap gate.
|