feat(WARDEN-WP-0021): T3-T5 — visibility, approve loop, runbook (scheduled worker complete)

T4 (review→send loop): conservative tick persists structured drafts to
state_dir/worker-drafts.json; `warden worker drafts` lists them, `warden worker approve
<id> [--body …]` sends the reviewed draft as the reply + marks read + drops it. Escalated
plans persist no draft. Live-verified end-to-end.

T3 (visibility): `warden worker status` (pending drafts, triage count, last digest, timer
state); best-effort notify-send nudge in the tick when drafts are pending.

T5: wiki/playbooks/scheduled-worker.md (enable/disable, the approve loop, failure modes,
conservative-only posture) + SCOPE note.

WARDEN-WP-0021 finished: the conservative worker now runs on a systemd --user timer
(enabled, every 15 min), triages new inbox messages into drafts you approve with one
command, degrades gracefully, and stops with one command. 249 tests, lint clean.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-30 15:24:10 +02:00
parent 9dc1db0162
commit a10bbd2162
7 changed files with 253 additions and 6 deletions

View File

@@ -4,7 +4,7 @@ type: workplan
title: "Enable the scheduled worker tick — conservative inbox triage, unattended"
domain: infotech
repo: ops-warden
status: active
status: finished
owner: claude
topic_slug: custodian
planning_priority: high
@@ -88,7 +88,7 @@ state_hub_task_id: "1f35f816-1af5-46ff-b48c-1715f3ae5784"
```task
id: WARDEN-WP-0021-T03
status: todo
status: done
priority: medium
state_hub_task_id: "3c7f6423-8db0-4bc6-b67d-078d9d929c6d"
```
@@ -101,7 +101,7 @@ state_hub_task_id: "3c7f6423-8db0-4bc6-b67d-078d9d929c6d"
```task
id: WARDEN-WP-0021-T04
status: todo
status: done
priority: high
state_hub_task_id: "dabc9fc0-abb1-4e9d-b87e-5f0c5950693c"
```
@@ -116,7 +116,7 @@ state_hub_task_id: "dabc9fc0-abb1-4e9d-b87e-5f0c5950693c"
```task
id: WARDEN-WP-0021-T05
status: todo
status: done
priority: medium
state_hub_task_id: "9915da96-1b33-4d0f-b752-408ea8d43333"
```