TopoMetrika · документация SDK
Лимиты, хранение и границы интерпретации
Действующие бюджеты SDK и хранилища, срок жизни наблюдений, ограничения доставки и смысл метрик.
Обновлено
Когда это нужно: вы планируете пилот, выбираете срок хранения или объясняете, какую часть продукта описывает отчёт. Результат: продакт оценивает достаточность наблюдений, а разработчик учитывает реальные бюджеты сбора и доставки.
Для продакта: начните с одного согласованного сценария и проверьте с разработчиком ожидаемую интенсивность. Текущий контур ограничен, поэтому неполный отчёт нельзя выдавать за весь трафик продукта. Количество сессий не равно количеству людей, а переход к следующему действию не доказывает покупку.
Для разработчика: таблицы ниже описывают текущие пределы очереди, пакетов, запросов и хранения. Это не план нагрузки и не гарантия доставки; ошибки и заполнение ресурсов нужно проверять на фактической интеграции.
Ниже приведены ограничения текущей реализации на 25 октября 2026 года. Это технические пределы поставки, а не обещание безлимитного сбора или enterprise SLA. Планируйте пилот по фактическому потоку событий и проверяйте заполнение ресурсов проекта.
Бюджеты Web SDK
| Ресурс | Предел |
|---|---|
| Очередь событий в памяти | 64 |
| Ожидающие корреляции снимки | 16 |
| Циклы попыток доставки события | До 3; запрос структуры может добавлять обмен skeleton/pulse |
| Таймаут запроса SDK | 5 секунд |
| Окно связи клика с действием | 250 мс |
| Pulse / skeleton | 4 KiB / 32 KiB JSON UTF-8 |
| Канонические узлы / глубина | 128 / 12 |
| Обход DOM для одного снимка | До 512 элементов и физической глубины 64 |
| Исходные состояния controls в активной сессии | До 4 096, в локальных weak-структурах |
| Статичная подпись / шаблон действия | До 72 / 160 символов |
Приём событий использует публичный ID без пятиминутного токена и браузерных ключей. ID не является секретом или доступом к аналитике. Слишком большой снимок пропускается. Очередь и аналитическая сессия не сохраняются на диск, в cookies, localStorage или sessionStorage. Установщик не хранит выбор посетителя: его получение, срок и отзыв обеспечивает владелец сайта. Закрытие страницы, потеря сети или исчерпание повторов могут привести к потере наблюдений. flush — попытка опустошить очередь, не гарантия доставки. Постоянного офлайн-хранилища и гарантированного unload-транспорта нет.
Настройки и постоянное хранилище
| Ресурс | Предел |
|---|---|
| Проекты в пространстве | 10 |
| Origins / статичные подписи / действия на проект | 16 / 256 / 128 |
| Сохранённые неистёкшие события проекта | 2 000 |
| Идентификаторы защиты от повторов за жизнь проекта | 10 000 |
| Неистёкшие структуры | 128 |
| Активные кластеры / сохранённые кластеры | 64 / 256 |
| Кандидаты проекта | 128 |
| Collector-запросы в минуту: проект / общий контур | 600 / 6 000 |
| Запросы конфигурации установки в минуту: проект / общий контур | 300 / 6 000; отдельный лимит, не расходует бюджет событий |
| Admin-мутации в минуту: пользователь / пространство | 60 / 180 |
| Максимальный период запроса отчёта | 90 дней |
Достижение ёмкости не запускает бесконтрольное расширение или молчаливое удаление защиты от повторов: новые данные соответствующего типа могут отклоняться с кодом capacity conflict. Ответ 429 относится к частоте запросов, а не заполнению хранилища. Сократите интенсивность пилота и согласуйте следующий этап; не стирайте replay-защиту, чтобы обойти предел.
Срок хранения
Настройка retention — от 2 до 90 дней, по умолчанию 30. Реально доступная история дополнительно ограничивается историей пространства. Уменьшение retention сокращает сроки ранее собранных payload; увеличение не возвращает удалённое и не продлевает уже обещанный срок.
Серверное обслуживание удаляет истёкшие payload, связанные векторы и структуры и пересобирает ограниченную проекцию. Работа cleanup требует штатной настройки серверного worker. Отключение сбора не отменяет очистку по сроку.
Компактные идентификаторы уже доставленных событий сохраняются отдельно от payload для защиты от повторов и не освобождаются по retention. Поэтому 10 000 receipt — предел за жизнь проекта, не ежедневная квота. Автоматического удаления проекта или сброса этой защиты через публичный SDK нет. Резервные копии имеют собственный эксплуатационный срок хранения: SDK не гарантирует мгновенное уничтожение всех копий данных.
Что означают отчёты
- Даты и границы периода читаются в UTC. Текущий день может быть неполным; отсутствие старой истории не равно нулевой активности.
- Сессии — наблюдаемые сессии SDK, не идентифицированные люди. Нельзя складывать дневные unique в unique за весь период.
- При sampleRate меньше 1 наблюдаемый объём не пересчитывается автоматически в полный трафик.
- Переход или продолжение — следующее допустимое наблюдаемое действие одной сессии с интервалом до 30 минут, а не доказанная покупка или сквозная воронка.
- Dwell и Rage не измеряются текущим Web SDK автоматически; отсутствие значений не означает нулевое трение.
- TopoScore и TopoPrint обобщают наблюдения, но не доказывают качество UX, причинное влияние релиза, рост выручки или финансовый результат.
Как устроена группировка
Серверная модель topometrika-hash128-v1 — версионированная детерминированная хеш-проекция признаков структуры, действия, разрешённого текста и состояния. Она не является обученным универсальным семантическим эмбеддингом и не обращается к внешнему AI API для каждого события. Новые группы требуют достаточного числа согласованных наблюдений; разные шаблоны действий разделены. Смысл и связь с фичей подтверждает команда.
Нативные мобильные SDK, universal GenUI-анализ, доказательство подлинности операций, статистический A/B-тест и гарантированный поток промышленного масштаба не входят в этот контракт Web SDK. События и состояния · Диагностика · Вся документация
Нагрузка при установке
Лимиты конфигурации по умолчанию — 300 запусков/мин на проект и 6 000/мин суммарно. Это бюджет запросов, не гарантия пропускной способности инфраструктуры. При превышении возвращается 429; другие проекты сохраняют собственный бюджет до исчерпания общего лимита. Оператор может настроить серверные TOPOMETRIKA_CONFIG_PROJECT_RPM и TOPOMETRIKA_CONFIG_GLOBAL_RPM после проверки нагрузки. Публичный ID и HTML-тег лимиты не изменяют.