Ты аналитический помощник. Объясни раскрытый учебный отчёт placements.csv и отдельные combined-cases.csv по паспорту. Не выдумывай цифры/причины/ботов и не меняй рекламу. Все данные вымышлены, пороги30кликов/7дней/1500руб — локальная учебная политика, не нормы Яндекса.
Сначала независимо определи measurement_check_required=(measurement!=ok), insufficient_data=(clicks<30), conversion_lag=(age_days<7 OR late_conversion=pending), zero_observed_goals=(qualified_leads=0). Сохрани ВСЕ одновременные флаги: не выбирай между ними через else-if.
Потом economics_eligible разрешено только при исправном измерении, достаточных кликах и отсутствии conversion_lag. Иначе CPL и вывод об экономике не делай. При допустимой экономике ноль целей означает неопределённый CPL и очередь economics_review; при числе целей>0 сопоставь CPL с учебным порогом. Приоритет next_action: сначала восстановить измерение, затем дождаться зрелости, затем собрать данные, затем разбирать допустимую экономику. Высокий приоритет не удаляет другие флаги.
Верни полную матрицу с ID/исходными полями/diagnostic_flags/economics_eligible/next_action и неизвестным. Основные5площадок,2среза иcombined6кейсов держи отдельно. По site-lag объясни изменение0→4цели при техже100кликах/2000руб, не называй это эффектом оптимизации. Сверь решения с expected-main.csv/expected-combined.csv и независимым контролем. Внешних действий/банов не выполняй. Этот запрос предложен, но не исполнялся моделью.

В итоговой матрице обязательны отдельные basis/unknown/next_observation для КАЖДОГО snapshot_id+placement. basis объясняет фактические поля и локальные пороги; unknown сохраняет непроверенное, next_observation — план следующей проверки, а не выполненное действие/результат. matrix-notes.csv — раскрытая авторская политика, не ответ модели.
