Бэкенд (pcp-tgu-service):
- REJECTED трактуется как «план неправильный»: авто-перевыдача больше НЕ
взводится, цепочка встаёт на паузу (новый флаг
SpacecraftPlanningStateEntity.pausedAfterReject, миграция V13). Технические
негативы («не заложен»/«не принят») по-прежнему дают срочную перевыдачу.
- Пауза централизована в PlanProjectionService.project(): для отклонённой
цепочки проекция пустая, воркер выдачи ничего не материализует. Флаг
снимается при ручной выдаче/промоуте черновика/приёмке (оператор вмешался).
- Режим «Черновики»: GET /plans/drafts (опц. ?spacecraftId) -> только DRAFT.
- Гард дублей черновиков: (КА + начало + конец) уникальны среди DRAFT,
повторное создание окна -> 409.
- ZrvWindowMatcher: сравнение по истинной abs-длительности Duration (<=1с),
устойчиво к усечению ISO на фронте до целых секунд.
Фронт (pcp-tgu-ops-ui): вкладка «Планы» — таймлайн цепочек, детали плана,
панель ЗРВ (TguZrvPanel), диалог создания цепочки, режим черновиков.
Удалён устаревший docs/tasks/TASK_tgu-plan-versioning-manual-reissue.md.
С остальными КА мы не работаем, поэтому отсекаем их сразу на входе в
loadData: фильтруем платформы по статусу и оставляем планы только для
эксплуатируемых КА (по norad-id), иначе неoperational-аппарат вернулся бы
fallback-строкой по плану в buildPlatformsForInterval.