ops-warden/src/warden
tegwick f8ac55367c feat(WARDEN-WP-0020): T3 — guarded executor (worker now acts, not just plans)
HubClient gains writes (mark_read, send_reply, add_progress). execute_plan/execute_plans
run the safe, allowlisted actions autonomously: route_answer (reply with the computed
answer + auto mark-read), reply (LLM-drafted body), progress_note, mark_read. Escalated
plans and non-auto-executable kinds are left for a human; every action is metadata-only
(no secret value read/sent/logged).

Deliberate guardrail: propose_catalog_diff and any code/routing change is NOT auto-executed
even under full-auto — a bad catalog commit could misroute credentials, so it goes to human
review (recoverability over convenience). AUTO_EXECUTABLE is the messaging/hub tier only.

`warden worker run --execute` runs the executor (dry-run still default). 7 executor tests
(reply+mark, with/without body, escalated skip, catalog-diff-left-for-human, progress,
failure-without-crash); 243 pass, lint clean. First live --execute shakedown is the
operator's (staged rollout); T4 schedules it.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-29 23:19:13 +02:00
..
routing feat(WARDEN-WP-0019): route secret-exec lanes to secrets-engine (route-primary, proxy fallback) 2026-06-29 17:41:49 +02:00
scripts Initial Commit 2026-03-28 00:45:43 +00:00
__init__.py Initial Commit 2026-03-28 00:45:43 +00:00
access.py feat(WARDEN-WP-0014): T2 — warden access advisory front door 2026-06-27 16:13:51 +02:00
ca.py feat: opt-in flex-auth policy gate and OpenBao verify (WP-0007) 2026-06-17 08:37:14 +02:00
cli.py feat(WARDEN-WP-0020): T3 — guarded executor (worker now acts, not just plans) 2026-06-29 23:19:13 +02:00
config.py feat: opt-in flex-auth policy gate and OpenBao verify (WP-0007) 2026-06-17 08:37:14 +02:00
doubles.py feat(WARDEN-WP-0015): T3 conformance checker + T4 dev-tier contract doubles 2026-06-27 19:30:30 +02:00
inventory.py Initial Commit 2026-03-28 00:45:43 +00:00
models.py feat: opt-in flex-auth policy gate and OpenBao verify (WP-0007) 2026-06-17 08:37:14 +02:00
policy.py feat(WARDEN-WP-0014): T3 — OpenBao proxy lane (--fetch / --exec) 2026-06-27 16:26:03 +02:00
posture.py fix(cli): bundle registry into wheel so installed warden works outside the repo 2026-06-27 19:40:14 +02:00
proxy.py feat(WARDEN-WP-0014): T3 — OpenBao proxy lane (--fetch / --exec) 2026-06-27 16:26:03 +02:00
scorecard.py feat(warden): WARDEN-WP-0003 — test coverage, permissions, status --state-dir 2026-05-15 17:05:38 +02:00
vault.py feat(warden): WARDEN-WP-0003 — test coverage, permissions, status --state-dir 2026-05-15 17:05:38 +02:00
worker.py feat(WARDEN-WP-0020): T3 — guarded executor (worker now acts, not just plans) 2026-06-29 23:19:13 +02:00