Added
Central warden mode: aggregates audit entries from multiple dockward agents via HTTP push
--mode agent|wardenflag; agent mode is the default (backward compatible)Agent push config block (
push.warden_url,push.token,push.machine_id): whenwarden_urlis set, every audit entry is forwarded to the warden asynchronouslyinternal/pushpackage: HTTP client that POSTs audit entries to warden/ingestaudit.Pusherinterface andLogger.WithPushto decouple push client from audit packageWarden HTTP server with four endpoints:
POST /ingest,GET /events(SSE),GET /(dashboard),GET /healthSSE hub: fan-out broadcaster; replays last 50 events on new connection
In-memory ring buffer (200 events) with per-agent connectivity state
Heartbeat poller: polls each agent
GET /healthevery 30s; emitsagent_online/agent_offlinesynthetic entries on state transitionsMulti-machine dashboard: per-agent status cards, real-time SSE event feed, machine and level filters
warden.sample.json: sample warden config