When a task transitions to a final status, archives the current task and creates a new occurrence with recalculated dates. Adds TaskStatusRepository::findFirstNonFinal() to assign the initial status to the new task. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>