- Add maxWorktrees field to Settings interface with default of 4
- Enforce worktree limit in Scheduler.schedule() alongside maxConcurrent
- Wire setting through dashboard startup from persisted settings
- Include maxWorktrees in /api/config response
- Add Max Worktrees input to Settings Modal UI
- Backward compatible: existing configs without maxWorktrees use default
- Add watch() method using Node's built-in fs.watch with recursive option
- Detect task.json changes and emit appropriate SSE events (created/moved/updated/deleted)
- Debounce per-file changes (150ms) to coalesce rapid writes
- Suppress duplicate events for in-process mutations via recentlyWritten set
- Integrate watcher into dashboard server startup with clean SIGINT shutdown
- Add @types/node to core package for proper TypeScript support