Хранилище, настройки и Watchdog
Изолированное хранилище данных
Каждому плагину выделяются персональные пути на диске:
plugins/data/<plugin_name>/— постоянное хранилище настроек, конфигурационных файлов и баз данных плагина. Сохраняется при обновлениях.plugins/cache/<plugin_name>/— кэш временных файлов (может быть очищен пользователем в настройках).
Плагин может запросить эти пути через api->get_data_dir() и api->get_cache_dir().
Декларативные настройки UI
Плагинам не нужно вручную верстать окна настроек. Достаточно экспортировать схему настроек, и MandaGram автоматически сгенерирует окно конфигурации с аутентичными компонентами Material 3 Expressive (переключатели, текстовые поля, выпадающие списки).
Защита Watchdog и Safe Mode
Сторожевой таймер Watchdog предотвращает зависание графического интерфейса клиента:
- Если обработчик хука в нативном коде плагина выполняется дольше заданного таймаута (по умолчанию 2500 мс), поток отсекается.
- При повторяющихся критических сбоях плагин временно отключается, а клиент переходит в Safe Mode с уведомлением пользователя.