294b17757d
Отказ от остаточной UTC-семантики: naive LocalDateTime трактуется как локальное время единой зоны всех сервисов. Backend (границы внешних систем): - VisibilityPayloadParser, SyncSpacecraftFromNsiUseCase: ZoneOffset.UTC → ZoneId.systemDefault() для проекции внешних Instant/ISO-с-Z в naive. - тесты границ перевёрнуты на systemDefault (под Europe/Moscow ждут +3). - чистка UTC-формулировок в DTO-комментариях, мёртвых ссылок на docs/standards/DATETIME_UTC.md. Frontend (pcp-tgu-ops-ui): - utils/utcTime.ts → utils/localTime.ts: parseLocal/formatLocal*/toLocalIso/ toLocalInputValue с локальной семантикой (без дописывания Z и timeZone:UTC). - замена getUTC*/Date.UTC/toISOString-сериализации на локальные аналоги. - убраны пользовательские подписи «UTC» в редакторе/таймлайне. - удалён utcTime.guard.test.ts (форсил обратный UTC-инвариант); тест-фикстуры сделаны зоно-независимыми. tsc + vitest зелёные под TZ=UTC и TZ=Europe/Moscow. Включает также прочие незакоммиченные правки рабочего дерева.
31 lines
2.6 KiB
Markdown
31 lines
2.6 KiB
Markdown
# Следующая задача: маршруты, сбросы и перенос включений между планами
|
|
|
|
> Статус: запланировано (дизайн ещё не начат). Это фиксация намерения, не финальный план.
|
|
|
|
Следующий блок работ — три связанные темы вокруг содержимого плана (включений) и
|
|
их съёмочно-сбросовой обвязки:
|
|
|
|
## 1. Построение маршрутов
|
|
Довести построение маршрутов наблюдения по плану. Сейчас маршруты порождаются в
|
|
потоке `createSatelliteMission` (BPMN), где `planId == missionId`; результат
|
|
ложится в БД mission-planing. Уточнить: когда и по какому триггеру строятся
|
|
маршруты для нового/перевыданного плана, и как они привязаны к включениям.
|
|
|
|
## 2. Формирование сбросов
|
|
Формирование сбросов (`DropMode`) поверх съёмочных включений (`SurveyMode`):
|
|
расчёт окон сброса, привязка к ЗРВ/КПП, согласование времени сброса со временем
|
|
съёмки. Внутренние времена — naive `LocalDateTime` (см. сквозную модель без зон).
|
|
|
|
## 3. Перенос включений из плана в план
|
|
При перевыдаче/версионировании плана переносить уже сформированные включения
|
|
(съёмки + сбросы) из предыдущего плана в новый — чтобы не терять набранное
|
|
содержимое цепочки. Определить, что переносится как есть, что пересчитывается,
|
|
и как это стыкуется с двумя осями версионирования (цепочка ТГУ + контент миссии).
|
|
|
|
## Контекст / связанные места
|
|
- Маршруты и их сохранение: `createSatelliteMission`, `planId == missionId`.
|
|
- Сбросы/съёмки: `pcp-mission-planing-service` — `SurveyMode`/`DropMode`,
|
|
`MissionPlaningService`.
|
|
- Версионирование/перевыдача плана — две оси (цепочка ТГУ + контент миссии).
|
|
- Время — сквозной naive `LocalDateTime` без зоны (после отката UTC-слоя).
|