dfa14862b4
Боевой в batch-режиме: пауза проекта не доходила до поставщика — заказ висел активным (галочка вкл, лимит>0), поставщик мог лить лиды и списывать за остановленный проект (подтв. живой базой: omega, 57 заказов, 0 команд после паузы 08.07). Поставщик фиксирует завтрашнюю заливку снимком в 21:00, поэтому гасить надо в 18:00-прогоне ДО снимка (мгновенно бессмысленно — сегодня уже зафиксировано). Добавлен проход deactivateOrphanedOrders в SyncSupplierProjectsJob: заказам источников, которых нет в активных группах слепка за завтра, шлётся updateProject(status=paused) с ненулевым лимитом, локально помечается inactive_since. online-режим не тронут (там пауза уже мгновенна). Активность берётся из слепка (слепок-инвариант), не из live is_active. Тесты (TDD RED->GREEN): batch pause + стык с delete-хвостом. 19/19 supplier+delete, 238/238 supplier+projects, pint чисто, PHPStan без новых замечаний. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>