docs: update context.md — sprint day 4, Jenkins E2E blocked on docker binary

This commit is contained in:
Backtalk6858
2026-06-24 14:25:24 -05:00
parent 97a06261b6
commit 1edbdc5358
+49
View File
@@ -273,5 +273,54 @@ Build, test, and push both builder agents to production. Work as long as it take
- p8p17: non-blocked pending/ready items
- p20p29: all blocked items (builder agents skip these)
## 2026-06-24 Sprint Day 1 facts
- id=51 COMPLETE ✅ — sandbox precondition scaffolding deployed. `_scaffold_preconditions()` added to secrets-proxy app.py. Creates files/dirs, attempts service starts, scaffolds iptables -D. Silent on success, `[Scaffold warning: ...]` in NTFY when uncertain.
- Coolify API key: Vault `secret/data/coolify → api_key` (NOT a file)
- Obsidian vault PARTIAL (id=136 in_progress): `/opt/appdata/obsidian/vault/` live on server-01, PARA structure, 258 memory files seeded. Remaining: ripgrep install, /recall redesign, session format Logseq→Obsidian
- Two new playbooks: playbook_secrets_proxy.md + playbook_sudo_bridge.md
- sudo-bridge rule: GET /allowlist before any POST — 409=already exists, empty exec response=rejected
- Gitea source migration logged: personal_projects id=145
**Next session first task:** Phase 3 — Gitea source migration (id=145). 10 services need repos. After that: Jenkins (id=141).
### 2026-06-24 Sprint Day 2 facts
- id=136 COMPLETE ✅ — semantic_recall.py rebuilt with ripgrep + chunked nomic-embed-text (SQLite), 290 files/434 chunks indexed; session format → Obsidian (Archives/Sessions/session-YYYY-MM-DD.md via SSH to server-01)
- Homemade skills at /opt/appdata/docker/.claude/skills/ — never search ~/.claude/plugins/
- Autonomous oversight model logged (behavior_changes id=77): AI brain grill-me + quality gates + NTFY escalation + Hermes orchestration + final human review
- sudo-bridge tier 1 NTFY: personal_projects id=146 (pending)
### 2026-06-24 Sprint Day 3 facts
- id=145 COMPLETE ✅ — 10 Gitea repos created (main branch), Jenkinsfiles pushed, webhooks configured
- id=141 IN PROGRESS — Jenkins deployed 192.168.1.90:8090, admin verified, JCasC working; remaining: pipeline jobs + Traefik route + E2E test
- New custom service pattern: boilerplates entry + separate Gitea repo (both always)
- dhi.io/jenkins = Docker Hardened Image, requires paid Docker subscription — not available for homelab use
- Gitea branch rename API (405) — use clone+push main+delete master pattern instead
- All 10 service repos: gitea.reverseproxyserver.net/Backtalk6858/<service>, branch=main
- secrets-proxy PROXY_CALLERS: claude-code, agent-builder-agent, n8n-builder-agent, jenkins
- Jenkins Vault AppRole: role-id/secret-id at /opt/appdata/docker/docker-compose/jenkins/vault-approle/ on server-01
- JCasC casc.yaml lives in jenkins-home/ (volume-mounted, not in image)
- Coolify retirement plan: use for everything except Jenkins now; retire fully after Jenkins E2E passes
**Next session first task:** id=141 remaining — Jenkins pipeline jobs (10 via API) + Traefik route + E2E smoke test.
### 2026-06-24 Sprint Day 4 facts
- 10 Jenkins pipeline jobs created via API — all use gitea-credentials + gitea.local URL + GWT token=<repo-name>
- Traefik route LIVE: jenkins.reverseproxyserver.net → 192.168.1.90:8090 via /data/coolify/proxy/dynamic/jenkins.yaml (written via docker exec on coolify-proxy, which mounts the dir)
- Jenkins Gitea credential (gitea-credentials) added to JCasC casc.yaml (server-01 only, volume-mounted) + start.sh + docker-compose.yml — survives restarts
- gitea.local resolves inside Jenkins container (extra_hosts in docker-compose.yml)
- Coolify proxy dynamic config: /data/coolify/proxy/dynamic/ (mount: /traefik/dynamic/ inside coolify-proxy container)
- Both servers run coolify-proxy (Coolify-managed Traefik); retirement plan in project_coolify_traefik_retirement.md
- Legacy Traefik config at legacy-docker-compose/traefik/ in boilerplates — starting point for standalone Traefik when Coolify retires
- E2E BLOCKED: docker binary missing from Jenkins image despite Dockerfile having docker.io
- Root cause: apt-get install docker.io on Debian Trixie does NOT install docker binary (known issue — package name is docker-ce or use docker-cli)
- Fix: update Dockerfile to install docker-ce OR docker-cli, rebuild with --no-cache, push to registry, restart Jenkins
**Next session first task (id=141 final steps):**
1. Fix Jenkins Dockerfile: replace `docker.io` with `docker-ce` (add Docker apt repo) OR `docker-cli` — confirm which package provides the binary on Debian Trixie
2. Rebuild Jenkins image with --no-cache on server-01
3. Push to gitea.local/backtalk6858/jenkins:latest
4. Restart Jenkins via start.sh
5. Trigger E2E smoke test — watch push → webhook → build → docker build stage passes
## Update instructions
Update at the end of every agent-builder session. Keep agent status, key decisions, and prereq checklist current.