Расширение не выполняет никаких сетевых запросов. Всё, что оно считывает, никогда не покидает ваш браузер. Сбор данных в смысле их передачи отсутствует: мы не можем видеть ваши бои, поскольку они никогда не отправляются нам или кому-либо ещё.
Что расширение хранит и где
Все данные хранятся локально в профиле вашего браузера. Используются два механизма.
1. IndexedDB — база данных pokestrat-tracker
Три хранилища объектов:
battles— одна запись для каждого завершённого боя. Каждая запись содержит только то, что протокол боя Showdown уже показал вашему браузеру:- идентификатор комнаты боя (используется для создания ссылки на повтор) и формат боя;
- временные метки начала и окончания;
- имена двух игроков в том виде, в котором они отображаются в бою, и указание вашей стороны;
- ваша команда и команда соперника (виды, раскрытые при предварительном просмотре команд);
- число ходов, победитель и результат (победа / поражение / ничья / сдача);
- ваш рейтинговый показатель до и после боя, а также рейтинг соперника, если формат его предоставляет.
meta— небольшие внутренние служебные значения самой базы данных.debug_logs— по умолчанию отключено. Только если вы включите «Отладочное журналирование» на странице истории, расширение сохраняет необработанные кадры WebSocket ваших боёв, чтобы вы могли экспортировать их и приложить к сообщению об ошибке. Размер буфера ограничен (20 боёв, 6 MB всего, 1 MB на бой). Отключение переключателя прекращает запись. Эти журналы, как и всё остальное, хранятся локально и передаются только в том случае, если вы экспортируете файл и самостоятельно куда-либо его отправите.
2. chrome.storage.local — настройки и флаги
Шесть ключей; все небольшие и не содержат персональных данных:
ui_locale— выбранный вами язык интерфейса;ui_theme— выбор светлой / тёмной темы;ui_overlay_collapsed— свёрнута ли панель разведки на странице;debugLogging— переключатель отладочного журналирования (по умолчанию: выключен);storage_quota_exceeded— флаг, устанавливаемый, если браузер отклоняет запись из-за отсутствия места на диске в профиле, чтобы страница истории могла предупредить вас;pokestrat_diag— диагностические счётчики перехватчика WebSocket (подключён ли перехватчик, количество кадров), отображаемые на странице истории, когда расширение, по-видимому, не ведёт запись.
Чего расширение не делает
- Оно не отправляет данные куда-либо. Запросов к каким-либо серверам, включая наш, нет. Единственные вызовы
fetch()в коде читают файлы, включённые в пакет расширения, по адресамchrome-extension://— снимок статистики использования, таблицу Pokédex, переводы, таблицы стилей и шрифты. - Оно не использует аналитику, пиксели отслеживания, cookie, рекламные идентификаторы или какие-либо сторонние SDK.
- Оно не продаёт, не сдаёт в аренду, не передаёт совместно и не передаёт данные третьим лицам. Передавать нечего.
- Оно не отправляет ничего в соединение Pokémon Showdown. WebSocket обёрнут в режим только для чтения: расширение наблюдает за сообщениями, которые уже поступили в ваш браузер, и никогда не записывает данные в сокет, не автоматизирует ходы и не играет за вас.
- Оно не считывает ваш пароль или cookie сессии Showdown и не взаимодействует ни с каким сайтом, кроме
play.pokemonshowdown.com. - Оно не требует учётной записи, входа или какой-либо персональной информации.
Разрешения и назначение каждого из них
storage— для хранения перечисленных выше настроек в профиле вашего браузера.host_permissions: https://play.pokemonshowdown.com/*— расширение работает только на игровом сайте Showdown. Ему необходимо запускаться там, чтобы наблюдать за протоколом боя, который уже получает ваш клиент, и отображать панель разведки предварительного просмотра команды на странице боя. Другие хосты не запрашиваются, поэтому на всех остальных посещаемых вами сайтах расширение бездействует.content_scriptswith"world": "MAIN"— перехватчик работает, оборачиваяwindow.WebSocketв собственном контексте JavaScript страницы. Это возможно только в основном мире; скрипт из изолированного мира имеет отдельныйwindowи никогда не увидит сокет клиента Showdown. Скрипт основного мира выполняет ровно одно действие: передаёт расширению копии входящих кадров. Он не отправляет кадры, не изменяет их и не считывает переменные страницы, поля форм или cookie. Кадры передаются черезpostMessageс адресацией наwindow.location.origin, а не на*, поэтому текст боя не рассылается другим скриптам на странице.
Хранение и удаление данных
Ваши данные хранятся, пока вы их не удалите. Вы всегда контролируете их:
- Удалить один бой — кнопка удаления в соответствующей строке страницы истории.
- Удалить все бои — кнопка «Очистить историю» на странице истории (сначала запрашивается подтверждение).
- Удалить отладочные журналы — отдельная кнопка на странице истории. Очистка истории боёв намеренно не удаляет отладочные журналы, и наоборот.
- Удалить всё — удалите расширение из
chrome://extensions. Вместе с ним Chrome удалит базу данных IndexedDB расширения и записиstorage.local. Ничего не останется где-либо ещё, потому что нигде больше ничего не хранилось.
Вы также можете в любое время экспортировать историю боёв в файл JSON и импортировать её обратно — экспорт записывается вашим браузером на ваш собственный диск и никуда не загружается.
Конфиденциальность детей
Расширение не собирает персональную информацию ни у кого, включая детей.
Изменения этой политики
Если расширение когда-либо начнёт передавать данные, эта политика будет обновлена до выпуска такой версии, а изменение будет видно в карточке расширения в Chrome Web Store и на этой странице.
Контакты
Вопросы об этой политике: [email protected]
Сайт: www.pokestrat.top