Документация

Память и приватность

Как расширение хранит и управляет состоянием синхронизации локально в браузере.

Где хранятся ваши данные

Все данные синхронизации (события, настройки, правила маппинга) хранятся локально в браузере. На серверы Vremya.io не отправляется ничего, кроме опциональной телеметрии и проверки лицензии — данные календаря и учётные данные Jira остаются на вашем устройстве.

Офлайн-режим

События кэшируются локально. При потере соединения расширение сохраняет данные. Когда вы снова в сети, синхронизация продолжается с места остановки. При обрывах соединения данные не теряются.

Приватность

События календаря и учётные данные не покидают ваш компьютер. Расширение работает в браузере и обращается напрямую к календарю и Jira (или другим сервисам) с выданными вами разрешениями. Мы не храним и не читаем содержимое вашего календаря на своих серверах.

Для разработчиков

Расширение Vremya.io хранит все данные синхронизации локально в браузере с помощью IndexedDB и Chrome Storage API. Никакие данные календаря или учётные данные не отправляются на внешние серверы — всё остаётся на вашем устройстве.

Хранилище IndexedDB

Расширение использует IndexedDB (база OWAJiraSync) для структурированных данных, требующих быстрых запросов и больших объёмов:

  • События календаря — захваченные события с метаданными, статусом синхронизации, ID worklog
  • Очередь пересчёта статусов — события, ожидающие пересчёта
  • Кэш задач Jira — закэшированные задачи для маппинга
  • Статусы подключений — результаты последней проверки провайдеров и писателей
  • Запросы — запросы синхронизации (активные и завершённые)
  • Синхронизируемые события — события в процессе синхронизации

Chrome Storage (chrome.storage.local)

Используется для настроек, метрик производительности и небольших ключ-значение данных:

  • Настройки — каналы синхронизации, включённые провайдеры, правила маппинга, состояние авторизации
  • Метрики производительности — время обработчиков, история использования памяти, статистика загрузки страниц

Ячейка памяти в потоке синхронизации

У каждого канала синхронизации есть центральная ячейка памяти: Источники (OWA, EWS, Google и др.) → Память → Назначения (Jira, календари). Ячейка памяти хранит события между импортом и экспортом, обеспечивая офлайн-буферизацию и возобновление.

Мониторинг памяти

На страницах popup и настроек расширение отслеживает использование JavaScript heap (performance.memory) и сохраняет метрики в chrome.storage. При высоком использовании (>80%) выдаются предупреждения. Примечание: performance.memory недоступен в контексте Service Worker.