# HEARTBEAT.md # WAL + active state tracker. Update BEFORE and AFTER significant actions. --- ## ⚠️ AGENT PROTOCOL — READ BEFORE ACTING Append WAL entry BEFORE taking significant actions (spawn worker, merge PR, deploy, DB changes). --- ## 🔴 ACTIVE ACP WORKERS | Label | Task | Branch | |-------|------|--------| | chat-fix-v2 | Wire chat to /api/chat/stream + conversation-archives | feat/wire-chat-interface | | kanban-add-task | Inline task creation in Kanban columns | feat/kanban-add-task | | logs-wide-events | Fix activity logging interceptor + Logs page | fix/logs-wide-events | | project-domain-attach | Add domainId to project DTOs + UI | fix/project-domain-attach | | workspace-members-get | GET /api/workspaces/:id/members endpoint | fix/workspace-members-get | | file-manager-tags | Tag input in New Entry form | fix/file-manager-tags | | ai-personalities | 6 default personality templates | feat/ai-personalities | | calendar-integration | Month/week/day views + CalDAV/Google sync | feat/calendar-improvements | | fix-widget-flap | EventSource withCredentials + missing endpoints | fix/widget-flap | All will auto-announce PRs on completion. Review diff → `tea pr merge N --style squash` → queue for deploy. --- ## ✅ MERGED (need Portainer redeploy) | PR | Fix | |----|-----| | #620 | ConfigModule in ContainerLifecycleModule | | #621 | AuthModule in FleetSettings + ChatProxy | | #622 | CSRF bypass for Bearer auth | | #624 | Widget throttling + orchestrator endpoints | | #625 | MS22 audit fixes | | #626 | Add Provider DTO fix | | #628 | Terminal/speech CORS (WEB_URL → TRUSTED_ORIGINS) | | #629 | SYSTEM_ADMIN_IDS in compose | | #630 | **CRITICAL**: `import type` → `import` for DTOs in 6 controllers (was breaking all @Body validation) | **⚠️ PORTAINER REDEPLOY NEEDED** — CI must build new image from main, then pull in Portainer. PR #630 fixes Add Provider + widget validation + workspace members + activity query + dashboard + llm-usage. --- ## 🔑 KEY FACTS - **Jason's user ID**: cafb57b7-6cb5-4ff0-a853-69eac4aa103c (set as SYSTEM_ADMIN_IDS ✅) - **Add Provider root cause**: `import type { CreateProviderDto }` → erased at runtime → ValidationPipe saw `Function` → all fields forbidden. Fixed in #630. - **jarvis@mosaic.internal** token expires 2026-03-08 — renew before then - **Mosaic API**: https://mosaic-api.woltje.com/api (healthy) - **TRUSTED_ORIGINS**: https://mosaic.woltje.com,https://mosaic-api.woltje.com ## Background Checks (rotate 2-3x daily) - Git status on mosaic-stack - jarvis-brain: pull latest - Check for completed ACP agent PRs