Два времени в карточке матча
Запланированное начало — время, указанное до матча в расписании или ином исходном документе. Фактический старт — момент, когда матч действительно начался по протоколу, трансляции или сообщению организатора.
Оба значения следует хранить с датой, часовым поясом или числовым смещением, если оно известно. Одно время без даты и смещения не всегда определяет однозначный момент.
Для каждой строки полезно сохранить ID матча, значение времени, единицу или формат представления, статус и источник. Если фактический старт не найден, поле остаётся неизвестным, а не превращается в 00:00 или в запланированное время.
| Поле | Содержание |
|---|---|
| planned_start | Назначенный момент начала |
| actual_start | Подтверждённый момент начала |
| start_delay | Разность actual_start и planned_start |
| source | Документ или запись, подтвердившая поле |
| captured_at | Момент, когда документ был зафиксирован |
Разбор записи о задержке
Вымышленный пример: в расписании указано начало «2030-05-14 19:00 +03:00». В протоколе позднее появилась строка «Начало: 19:17». Оба времени относятся к той же дате и тому же смещению +03:00.
Задержка вычисляется так: 19:17 − 19:00 = 17 минут. В карточке можно записать planned_start: «2030-05-14T19:00:00+03:00», actual_start: «2030-05-14T19:17:00+03:00», start_delay_minutes: «17».
Эти 17 минут относятся только к старту. Если матч завершился в 21:05, промежуток между фактическим стартом и окончанием составляет 108 минут, но его нельзя называть задержкой старта.
- Сохраните назначенное время вместе с источником расписания.
- Зафиксируйте фактический старт по отдельному документу или наблюдаемой записи.
- Приведите оба момента к сопоставимому формату и смещению.
- Вычтите назначенное время из фактического только после такой проверки.
- Опишите изменение полями «было» и «стало», если источник обновил время.
Граница между началом матча и длительностью
Время первого фактического действия зависит от того, что именно признаёт источником начало: например, запись протокола, стартовый свисток или первая игровая фиксация. Карточка не должна молча заменять один тип начала другим.
Если документ сообщает лишь «матч начался с опозданием», но не называет момент или величину, задержка остаётся неизвестной. Нельзя вывести её из предполагаемой обычной продолжительности игры.
Досье матча позволяет хранить исходный текст, источник и заметку локально. Сравнение двух версий покажет построчные различия, но не определит само, какое из времён верно или почему документ изменился.