--- id: TASK-16 title: Orchestrate recurring Convex agent jobs and audit lifecycle status: To Do assignee: [] created_date: '2026-06-03 19:14' labels: - mvp - convex - jobs dependencies: - TASK-6 - TASK-12 - TASK-15 references: - PRD.md priority: high ordinal: 16000 --- ## Description Implement the scheduled and manual background workflow using Convex. The MVP permits only one active agent run at a time, supports campaign cron runs and manual Jetzt ausführen runs, and manages public audit lifecycle notifications and deactivation. ## Acceptance Criteria - [ ] #1 Convex cron or scheduled functions trigger active campaigns according to cadence - [ ] #2 Jetzt ausführen starts a campaign run immediately only when no other agent run is active - [ ] #3 Cron skips or queues safely when an agent run is already active, with visible run logs - [ ] #4 Published audits older than 30 days create dashboard notifications asking whether to keep active - [ ] #5 Published audits older than 60 days auto-deactivate unless manually extended or later reactivated ## Implementation Plan 1. Add global agent-run lock or equivalent single-active-run guard. 2. Implement scheduled campaign runner using Convex cron/scheduling. 3. Wire manual Jetzt ausführen to the same runner and limits. 4. Add run logs and dashboard-visible status updates. 5. Add audit lifecycle checks for 30-day notification, 60-day deactivation, and reactivation.