Аналитика
Модуль 13-analytics замыкает контент-цикл analytics → strategy → planner → production → publish → analytics: читает реальные own-метрики из viral-db, связывает опубликованные посты со слотами плана
и выносит агентский вердикт по каждой ставке (strategy.bets) — сработала / провалилась / мало
данных. MVP — только Instagram.
/review-performance
Заголовок раздела «/review-performance»Меряет результат прошлого цикла и пишет отчёт-вердикт, который питает гейт «обновить стратегию?».
Когда использовать. Запускай, когда нужно понять, что реально зашло из опубликованного —
обычно перед ревизией стратегии, чтобы решение об обновлении опиралось на данные, а не на ощущение.
Автоматически вызывается как подшаг /today перед гейтом обновления стратегии.
Как вызвать
/review-performance <slug><slug>— id аккаунта. Пуст — агент спросит.- Dev — только
max-tors.
Что на входе / на выходе
- Вход: viral-db
viral_content(own-строки с реальными shortcode и ER),strategy/current.yaml(bets,success_metrics),plans/current-week.yaml(bets_test.via_slots). - Выход:
accounts/<slug>/analytics/<дата>-review.md— человекочитаемый разбор (что зашло/провалилось по типам и темам, вердикт по каждой ставке, рекомендации) + машиночитаемый блокbets_verdict(verdict: worked/failed/insufficient_data, n_posts, evidence). Также проставляетlinked_shortcodeв viral-db — связь слота плана с реальным постом.
Пример
/review-performance max-torsАгент (если доступна живая IG-сессия) сначала дособирает весь own-контент, включая провалы, затем
для каждого слота плана ищет кандидатов на связывание по хуку/типу/дате: ровно 1 кандидат — агент
сверяет сам перед линковкой, больше одного — выбирает по хуку/теме/дате, ноль — честно помечает
«пост не найден». Дальше для каждой ставки выносит вердикт на реальных цифрах (ER против
success_metrics.target, число связанных постов, сколько дней прошло) и пишет
analytics/<дата>-review.md.
Гейты/апрувы
- Вердикт по ставке — суждение агента на evidence, не механический порог; при нехватке данных
честно
insufficient_data, без выдуманных цифр. - Нет живой IG-сессии → сбор всего own-контента пропускается, отчёт строится по имеющимся данным с честной пометкой «own-сбор пропущен».
- Слот без кандидата на связывание не линкуется вслепую — помечается «не измерено».
Связанные: вердикт подаётся в гейт «обновить стратегию?» в /strategy и в own-память /plan-week; вызывается подшагом из /today.