From d5c62c99ad78f2437f7dfad36050ef7d11020819 Mon Sep 17 00:00:00 2001 From: sjat Date: Fri, 5 Jun 2026 18:01:14 +0200 Subject: [PATCH] STATUS/ADR-015: mark the three deferred design threads resolved ubongo, the NetBird mesh, and Level 4 verification are design-resolved (ADR-015/016/017 + specs + plans); STATUS now says so while keeping build status honest. Also resolves ADR-015 deferred #2 (browser harness), which was left open when ADR-017 landed. Co-Authored-By: Claude Opus 4.8 (1M context) --- STATUS.md | 8 ++++---- docs/decisions/015-control-host.md | 10 ++++++---- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/STATUS.md b/STATUS.md index 37ac2f7..80f00fd 100644 --- a/STATUS.md +++ b/STATUS.md @@ -52,10 +52,10 @@ So `make deploy PLAYBOOK=site` currently **fails** on a clean clone — the `bas | `/security-review` skill | ADR-002 / TODO 8.5 | Periodic posture re-check + accepted-risk re-challenge; planned, not built | | CIS hardening (Debian L1+L2 + Docker) | ADR-002 / TODO 15 | Implemented by the (unbuilt) `base`/`docker_host` roles; brings AppArmor + AIDE as baseline. L2 partitions affect VM provisioning (ADR-006) | | Network IDS + security alerting | ADR-002 / TODO 15 | Suricata on OPNsense + AIDE/`auditd`/`fail2ban` alerting into the monitoring stack; not built | -| `ubongo` — physical control / AI-worker host | ADR-015 | Replaces the cluster control VM with a dedicated always-on x86 box outside the cluster. Decision recorded; box not yet acquired/installed, not in inventory. | -| NetBird mesh — coordinator on `askari` | ADR-016 | Self-hosted NetBird control plane (management/signal/relay) on askari; replaces ADR-007 WireGuard. Decision recorded; not deployed (askari + service-role machinery not built). | -| NetBird agent enrollment in `base` | ADR-016 | Every Linux host joins the mesh via the base role (setup keys in vault); SSH allowed only on `wt0`. Designed; base role not built. | -| Service-UI verification (Level 4) | ADR-017 / ADR-008 | `/verify-service` skill + `VERIFY.md` template + standards are authorable and present; *running* deferred on ubongo + `playwright` plugin + Authentik + a staging deploy. | +| `ubongo` — physical control / AI-worker host | ADR-015 | **Design RESOLVED** (ADR-015 + spec + plan). Replaces the cluster control VM with a dedicated always-on x86 box outside the cluster. **Build pending:** box not yet acquired/installed, not in inventory. | +| NetBird mesh — coordinator on `askari` | ADR-016 | **Design RESOLVED** (ADR-016 + spec + plan); resolves ADR-015 deferred #1. Self-hosted NetBird control plane (management/signal/relay) on askari; replaces ADR-007 WireGuard. **Build pending:** not deployed (askari + service-role machinery not built). | +| NetBird agent enrollment in `base` | ADR-016 | **Design RESOLVED** (ADR-016). Every Linux host joins the mesh via the base role (setup keys in vault); SSH allowed only on `wt0`. **Build pending:** base role not built. | +| Service-UI verification (Level 4) | ADR-017 / ADR-008 | **Design RESOLVED** (ADR-017 + spec + plan); resolves ADR-015 deferred #2. `/verify-service` skill + `VERIFY.md` template + standards are authorable and present. **Build pending:** running needs ubongo + `playwright` plugin + Authentik + a staging deploy. | ## Keeping this honest diff --git a/docs/decisions/015-control-host.md b/docs/decisions/015-control-host.md index 4e3527f..3ebeb49 100644 --- a/docs/decisions/015-control-host.md +++ b/docs/decisions/015-control-host.md @@ -113,10 +113,12 @@ master password. 1. **Mesh VPN choice — RESOLVED (ADR-016):** NetBird, self-hosted on `askari` (off-site, so it survives a homelab outage and stays out of the cluster it administers). Replaces ADR-007's OPNsense WireGuard. -2. **Browser-E2E verification harness** — Playwright/headless-Chromium, test-user - generation, screenshot-back-to-Claude, and the new ADR-008 level. -3. **`rbw` offline-cache verification** — confirm offline decryption before relying - on it (ADR-014). +2. **Browser-E2E verification harness — RESOLVED (ADR-017):** Claude-driven + exploratory service-UI verification (`/verify-service`, ADR-008 Level 4), against + staging with test users in Authentik. Design + skill + standards complete; running + deferred on the stack. +3. **`rbw` offline-cache verification** — still open: confirm offline decryption before + relying on it (ADR-014). ## What was ruled out