Commit Graph

9 Commits

Author SHA1 Message Date
Backtalk6858 1d37e453ec docs: gameplan to fully-deployed Agent-Sudo + secrets-proxy, plus S1/A1/A7 agent prompts
Agent-Sudo went live on both hosts tonight (005c214 in the boilerplates repo). This
records what "done" actually means and what is left, since dedicated time on this ends
today and the rest has to run via background agents.

Corrects the goal: tier 4 is human-only BY DESIGN (D-CB7) — the daemon unit env holds
SUDO_MD_VERIFY_ENFORCE, so a system that can restart its own daemon can disarm its own
gate. "Handling tier 4" means refusing it, which is done and verified. Real remaining
scope is tiers 1-3.

Records the measured Incus asymmetry (server-01 has it, primary does not), which makes
tier 2 on primary an open design question rather than a task; the tier-1 scoped-undo
defect (app.py:244 hardcodes tier 3 while REQUIRES_UNDO_TIERS is (1,3)); and the
per-host-values-in-a-shared-tracked-file bug class that bit twice in one directory.

secrets-proxy is deliberately scoped as investigate-then-plan: it exited gracefully and
nobody knows why, so S1 answers that before anyone writes S2.

Refs #128, #146, #149, #150, #173, #191, projects id=187.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-15 20:13:46 -05:00
Backtalk6858 c0293fa96f docs(agent-sudo): lock D-CB5-D-CB9, add the P3-WIRING agent prompt, record P3 state
- agent_sudo_design_decisions.md: D-CB5 (3 tier-3 fails / 15min sliding / per-host),
  D-CB6 (append-only breaker log, state always replayed — tamper-EVIDENT beats
  tamper-PROOF when the daemon is root), D-CB7 (Set B host_override in code),
  D-CB8 (which tier-4 sources latch), D-CB9 (trip escalation). Each with rationale,
  rejected alternatives, and accepted costs.
- agent_prompts.md: add the P3-WIRING prompt. Flags a real NAME COLLISION — the
  existing "P3" section is the OLD P3 (Vault AppRole + Timeshift + evaluator, done
  as #142); P3 was redefined after D-CB1-D-CB9 were locked. Running the old one
  would redo finished work. Today's inline agent prompts were never persisted, which
  is why this one is.
- context.md: P3 code complete but UNDEPLOYED — the server-01 tier-0 breaker.log hole
  is open in production until DEPLOY_RUNBOOK.md runs. Two verified deploy blockers
  (Dockerfile never COPYs circuit_breaker.py/security/; compose has no
  /var/lib/agent-sudo mount => breaker resettable by docker restart, the exact D-CB6
  bypass). Both were invisible to an 85/85-green suite.
- context.md: MEMORY_DIR answered — do NOT repoint embed_memory_dir.py; its
  claude_memories table has no reader. Recall corpus now includes design docs;
  context.md stays excluded until #192 prunes it.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-15 19:04:38 -05:00
Backtalk6858 c101167eb5 docs: constrained-autonomy design approved + fix stale tier-2 guard
- constrained_autonomy_design_decisions.md: D1-D8 locked (hybrid hook
  classifier + Agent-Sudo daemon executor, structural classification with
  unknown->sandbox, fail-closed, Hermes recovery ladder) + EXECUTION ORDER
  with CA-P1a inserted as zero-dependency item 0
- agent_prompts.md shared block: replace "TIER-2 IS BROKEN" with the
  corrected root cause (old primary bridge's NTFY endpoint was unreachable;
  tier-2 works when the bridge reaches ntfy + user is attended)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-14 17:02:08 -05:00
Backtalk6858 32131ade7e feat: Agent-Sudo P4 — server-01 LIVE (unsigned interim deploy)
- P4 prompt: unsigned-interim override (SUDO_MD_VERIFY_ENFORCE=false,
  non-blocking AppRole/NTFY provisioning)
- server-01 Agent-Sudo swapped live on 8082 (full gate green, 4/4 replay
  match); primary on 8084 shadow, manual swap pending (#146)
- tier-2 root cause found: old primary bridge NTFY endpoint unreachable,
  not NTFY itself (behavior_changes id=3 corrected)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-10 03:19:50 -05:00
Backtalk6858 6248875e13 docs: add P1-HARDENING prompt (DNS bake, firewall persist+RFC1918 DROP, provisioning fix)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 21:27:21 -05:00
Backtalk6858 d44c9b55e6 docs: expand P0 prompt → P0+pre-flight+groundwork agent (absorbs P1)
- P0 build prompt now does Part A (command_audit schema) + Part B
  (read-only audit of all P1-P5 assumptions) + Part C (remediate safe
  findings = all of P1: Incus install, host inventories, build-sandbox.sh,
  both sandbox mirrors)
- Golden Rule: only remediate read-only or server-01-sandbox findings;
  tier-2/manual-auth or prod-touching → batched, never blocked
- Ends with a BUILD READINESS wrap-up so the focused build starts at P2
- P1 section retained as canonical contract reference, marked folded-in

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 20:19:00 -05:00
Backtalk6858 c50e72e17b docs: agent-sudo grill-me complete — D1-D10, P0-P5 build prompts, comparison
- Close Agent-Sudo (infra id=176) design grill-me; gap #5 cross-cutting locked
- Add P0-P5 phased background-agent build prompts (Opus 4.8 upgrades applied)
- Add agent_sudo_vs_sudo_bridge.md comparison doc
- Update context.md: sprint day 11 session 4, Coolify/N8N/port-8084 corrections

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 14:28:39 -05:00
Backtalk6858 0860263935 fix: correct PROXY_CALLERS raw key format + session 6 facts
- agent_prompts.md: store raw keys in PROXY_CALLERS (app.py hashes internally);
  pre-hashing caused double-hash → all jenkins auth failed
- context.md: session 6 facts — Phase 1 complete, PROXY_CALLERS bug fixed,
  behavior_changes table created, Jenkinsfile shell operator bug logged (id=1),
  next session: fix Jenkinsfile then launch Phase 2

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-27 00:54:21 -05:00
Backtalk6858 cb7a9def3d feat: write all 11 background agent prompts + update context
- agent_prompts.md: all 11 prompts across 3 phases ready to launch
- context.md: session 5 facts — prompts ready, key server-01 finding

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 20:13:40 -05:00