fix(gps): бейдж «Нет GPS» = нет валидной GPS-точки дольше N часов (настройка), убран pin от stale-пересылок

This commit is contained in:
2026-08-31 17:36:40 +03:00
parent 0ad9bb8715
commit 08d1fa1af3

View File

@@ -543,9 +543,8 @@ export async function processPosition(
const verdict = walker.check({ lat: input.lat, lng: input.lng, recordedAt, speed: input.speed });
if (verdict !== "accept") {
if (verdict === "stale") {
// Stale re-send = трекер сам сообщает, когда в последний раз видел спутники
// (замороженный fixTime). Фиксируем как «время последнего GPS-фикса».
await gpsStorage.updateAssetGpsFix(assetId, recordedAt);
// Stale-копии просто пропускаем. lastGpsFixAt здесь НЕ трогаем:
// бейдж «Нет GPS» = «нет точки с валидным GPS дольше N часов» (настройка)
console.log(
`[GPS] skipped stale: asset=${assetId} recordedAt=${recordedAt.toISOString()} <= lastRecordedAt=${prev?.recordedAt.toISOString()}`
);
@@ -566,7 +565,8 @@ export async function processPosition(
return;
}
// Точка прошла фильтры — GPS-фикс жив, двигаем время последнего фикса вперёд
// Точка прошла фильтры и не помечена протоколом как LBS — это валидный GPS:
// двигаем «время последнего GPS-фикса» вперёд (им питается бейдж «Нет GPS»)
await gpsStorage.updateAssetGpsFix(assetId, recordedAt, true);
// Режим «потерян GPS»: если последний stale re-send был свежее 10 минут,