# Parallel Tasks Orchestration # Date: 2026-03-18 # Purpose: 4-way parallel worktree execution for Community ADE Phase 1 ## Branch Strategy **Base:** `main` **Worktrees:** All 4 tasks share `main` branch - they're independent components **Merge:** Clean component boundaries, no conflicts expected ## Task Assignments ### Task 1: Redis Queue Core (Agent: Coder-Alpha) **Worktree:** `/home/ani/Projects/community-ade-wt/queue-core` **Focus:** Implement Redis Streams queue with consumer groups **Deliverables:** - `src/queue/RedisQueue.ts` - Core queue implementation - `src/queue/Task.ts` - Task interface and serialization - `src/queue/Worker.ts` - Worker heartbeat and task claiming - `tests/queue/RedisQueue.test.ts` - Unit tests **Success Criteria:** Can enqueue/dequeue tasks, workers claim and heartbeat **Time Budget:** 45 minutes ### Task 2: TypeScript API Contracts (Agent: Coder-Beta) **Worktree:** `/home/ani/Projects/community-ade-wt/api-contracts` **Focus:** Type definitions and API surface **Deliverables:** - `src/types/index.ts` - All shared interfaces - `src/api/routes.ts` - Express route definitions - `src/api/validation.ts` - Zod schemas for request/response - `src/api/middleware.ts` - Auth, error handling, logging **Success Criteria:** Types compile, schemas validate, routes typed **Time Budget:** 40 minutes ### Task 3: Worker Pool & Execution (Agent: Coder-Gamma) **Worktree:** `/home/ani/Projects/community-ade-wt/worker-pool` **Focus:** Multi-worker process management **Deliverables:** - `src/worker/Pool.ts` - Worker pool orchestrator - `src/worker/Process.ts` - Individual worker process wrapper - `src/worker/HealthMonitor.ts` - Health checks and restarts - `tests/worker/Pool.test.ts` - Worker lifecycle tests **Success Criteria:** Pool spawns workers, monitors health, restarts dead workers **Time Budget:** 50 minutes ### Task 4: Dashboard UI Scaffold (Agent: Coder-Delta) **Worktree:** `/home/ani/Projects/community-ade-wt/dashboard-ui` **Focus:** React dashboard for monitoring **Deliverables:** - `dashboard/index.html` - HTML entry point - `dashboard/src/App.tsx` - Main React component - `dashboard/src/components/QueueStatus.tsx` - Queue overview - `dashboard/src/components/WorkerList.tsx` - Worker status - `dashboard/package.json` - Dependencies **Success Criteria:** Vite dev server runs, shows mock queue data **Time Budget:** 35 minutes ## Shared Resources - Redis server: `redis://localhost:6379` (use separate DBs: 0,1,2,3 per task) - Port allocation: - Task 1: No port (library) - Task 2: 3001 (API dev server) - Task 3: No port (process manager) - Task 4: 3002 (Dashboard dev server) ## State Reporting Each agent must write to: `/home/ani/Projects/community-ade/docs/task-status-{alpha|beta|gamma|delta}.md` Format: ```markdown ## Task Status: [Task Name] **Agent:** [Name] **Status:** [in-progress|complete|blocked] **Worktree:** [path] **Completed:** [list of files] **Blockers:** [none or description] **Next:** [what's next if incomplete] **Time Remaining:** [X minutes] ``` ## Integration Points After all 4 complete: 1. Merge all worktrees into main 2. Verify imports resolve 3. Run integration test 4. Update README with setup instructions ## Architecture Document Reference All agents should read: - `/home/ani/Projects/community-ade/docs/ade-redis-queue-design.md` - `/home/ani/Projects/community-ade/docs/ade-phase1-orchestration-design.md` ## Model Assignment - Coder-Alpha, Beta, Gamma: `openai/GLM-4.7-Flash` (fast, parallel) - Coder-Delta: `openai/GLM-4.7-Flash` (UI focused, sufficient) ## Kickoff Command for Each Agent ```bash # Setup worktree cd /home/ani/Projects/community-ade git worktree add ../community-ade-wt/[task-name] -b task-[name] cd ../community-ade-wt/[task-name] # Read orchestration doc cat docs/parallel-tasks-orchestration.md # Read your task section # Begin implementation ``` ## Completion Signal When done, each agent: 1. Commits all work: `git add -A && git commit -m "[task-name]: implementation complete"` 2. Updates their status document 3. Signals completion --- **Ani will monitor all 4 status documents and merge when complete.**