Ops-dashboard/app
Scrum4Me Agent faa1463cd7 feat(dashboard): vervang SECTIONS-grid door 5 live status-widgets
Parallel server-side fetches via Promise.allSettled voor Docker, Caddy,
systemd, Git en Audit. Iedere widget toont geaggregeerde status en
refresht elke 30s client-side onafhankelijk van de andere widgets.

- lib/agent-fetch.ts: gedeelde client-side streaming helper
- app/api/audit/latest/route.ts: GET endpoint voor AuditWidget refresh
- app/_components/DockerWidget.tsx: running/total containers
- app/_components/CaddyWidget.tsx: soonest cert expiry in dagen
- app/_components/SystemdWidget.tsx: healthy/total units (of niet geconfigureerd)
- app/_components/GitWidget.tsx: dirty repo count (of niet geconfigureerd)
- app/_components/AuditWidget.tsx: laatste FlowRun status + relatief tijdstip
- app/page.tsx: vervangt SECTIONS-grid, doet parallel fetches, rendert widgets

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 22:06:00 +02:00
..
_components feat(dashboard): vervang SECTIONS-grid door 5 live status-widgets 2026-05-13 22:06:00 +02:00
api feat(dashboard): vervang SECTIONS-grid door 5 live status-widgets 2026-05-13 22:06:00 +02:00
audit feat(audit): add /audit list and /audit/[flow_run_id] detail pages 2026-05-13 18:00:37 +02:00
caddy feat(security): rate-limit /api/flows/start, CSRF double-submit cookie, CSP headers 2026-05-13 20:01:43 +02:00
docker feat(security): rate-limit /api/flows/start, CSRF double-submit cookie, CSP headers 2026-05-13 20:01:43 +02:00
flows feat(routes): index pages voor /flows en /settings 2026-05-13 21:42:24 +02:00
git feat(security): rate-limit /api/flows/start, CSRF double-submit cookie, CSP headers 2026-05-13 20:01:43 +02:00
login feat(security): rate-limit /api/flows/start, CSRF double-submit cookie, CSP headers 2026-05-13 20:01:43 +02:00
settings feat(routes): index pages voor /flows en /settings 2026-05-13 21:42:24 +02:00
systemd feat(security): rate-limit /api/flows/start, CSRF double-submit cookie, CSP headers 2026-05-13 20:01:43 +02:00
favicon.ico feat: Next.js + Tailwind + shadcn/ui project skeleton 2026-05-13 16:59:21 +02:00
globals.css feat: Next.js + Tailwind + shadcn/ui project skeleton 2026-05-13 16:59:21 +02:00
layout.tsx feat(layout): integreer AppNav en update metadata 2026-05-13 21:57:19 +02:00
page.tsx feat(dashboard): vervang SECTIONS-grid door 5 live status-widgets 2026-05-13 22:06:00 +02:00