# Устаревание нижнего слоя после экспорта - **Секция:** ядро - **Зачем:** Нижний слой растёт на ~100 тысяч координат в сутки, а после экспорта Apple он избыточен - **Теги:** goal:lower-layer-cleanup Нижний слой растёт примерно на 100 тысяч координат в сутки против ~3 700 у минутного и ~100 у часового — разница в три порядка (находка 41). Всё давление по объёму создаёт он один, и ровно там родной экспорт Apple оказывается настоящим надмножеством. Два ограничителя, без которых правило опасно: - пометка вешается по **загруженному и проверенному** экспорту, а не по сделанному: проверка — непрерывность по дням и сходимость сумм с часовым слоем; - пометка ≠ удаление. Удаление включается только после того, как восстановление из экспорта отработает на живых данных хотя бы раз. ## Чем помечать: разряд на диапазон, а не провенанс на точку Решено при постановке 2026-08-04. Пометка — **одна строка на диапазон**: `метрика + слой + период + «покрыто проверенным экспортом»`. Не поле у точки. Основание — соотношение цены и потребности: - **вопрос, на который надо ответить, диапазонный**: «за этот период нижний слой обеспечен настоящими сэмплами Apple, посекундную развёртку HAE можно выбросить». Он не требует знать, из какой доставки приехало конкретное число; - **цена совпадает с самой проблемой**: нижний слой растёт на ~100 тысяч координат в сутки, и поле у точки платит тем же объёмом, который задача и пришла экономить. Пометка на диапазон — десятки строк. **Провенанс на точку рассмотрен и отвергнут по цене, а не по ненадобности.** Различать эти два основания важно: отказ по ненадобности закрывает вопрос навсегда, отказ по цене — только до появления потребителя. Появится тот, кому нужно «покажи, из какой конкретно доставки это число», — решение пересматривается. Сегодня такого потребителя нет: ни агент-медик, ни трекер, ни игра его не просят ([passport.md](../../passport.md)). Отдельно стоит помнить, что **отделить старое от нового можно и без пометок**: состояние по определению есть `import(экспорт) + replay(доставок по received_at)`, порядок известен, происхождение значения выводится пересборкой. Пометка нужна ровно затем, чтобы отвечать на этот вопрос **при чтении**, не пересчитывая. Смежное: у сущностей (`workouts`, `stateOfMind`) провенанс уже есть — колонки `delivery_id` и `delivery_received_at` (миграция `00007`). У часового объекта метрики есть `first_delivery_id` (миграция `00003`), но это **первая** доставка, а не источник каждой точки, и для этой задачи он не годится. Приоритет низкий: пока история измеряется днями, экономить нечего. Задача станет актуальной, когда нижний слой перевалит за несколько гигабайт. Зависит от импорта экспорта Apple — до него помечать нечем; выставляет пометку [apple-export-import](apple-export-import.md).