Bug Fixes
The watchdog orchestrator was getting stuck in a loop re-triggering photo analysis checks every 2 minutes for content phases that had no photos. The issue happened when a work area was linked to multiple content phases — the projection query counted any photo in the work area (regardless of phase), but projection only runs for photos that actually belong to that phase. Stale phase links were flagged as perpetually behind and re-triggered forever.
The fix narrows the query scope to count only photos that belong to the specific phase being checked. This eliminates the false positives and reduces unnecessary orchestrator churn.