Обновления
История обновлений DSTools: плагины, портал и Hub.
Профессиональный редизайн плагинов, 9 багфиксов и UI-аудит
Полный редизайн страницы плагинов и исправление 9 багов по итогам UX-аудита.
— Профессиональный UI плагинов: заголовок с подзаголовком, Revit-бейджи, карточки с тенями и границами
— Plugin Picker: стилизованные чекбоксы, карточки с brand-border, Install All с glow-эффектом
— Установка/удаление отдельных плагинов (FTR-038)
— Исправлен статус-бар: «Фоновая служба» вместо красного «не установлен» (BUG-1065)
— Секция «REVIT» вместо «INSTALLED PLUGINS» когда плагины не установлены
— Revit-строка кликабельна → переход на страницу плагинов (BUG-1064)
— «Не установлено» вместо «0 плагинов» (BUG-1068)
— Онбординг: ds-accent → ds-brand (BUG-1063)
— Хардкод-строки перенесены в локали (BUG-1066)
— Кнопка «Обновить» в баннере обновлений (BUG-1067)
— Toast при первом сворачивании в трей (BUG-1069)
— Дизайн выровнен с сайтом: тени, hover, spacing, типографика (UI-016)
— Компоненты разделены: 6 файлов вместо 1 монолита в 915 строк
Масштабное обновление Hub — 22 улучшения, редизайн и онбординг
Крупнейшее обновление Hub по итогам глубокого аудита.
— Исправлен race condition при восстановлении сессии (BUG-1059)
— Токены авторизации теперь обновляются автоматически каждые 50 минут (BUG-1060)
— Исправлен auto-updater: retry с backoff + свежий updater из ZIP (BUG-1052)
— Потокобезопасность CredentialService — lock на все файловые операции (BUG-1061)
— Таймаут логина 5 минут + кнопка отмены (BUG-1057)
— Безопасность: валидация URI, устранение crypto bias (SEC-004)
— Дизайн-токены выровнены с веб-дашбордом (UI-012)
— Новый React titlebar с drag, minimize, close (UI-014)
— Карточки плагинов в стиле JetBrains Toolbox (UI-013)
— Индикатор состояния сервиса в навбаре (FTR-032)
— Loading states и скелетоны на всех страницах (BUG-1056)
— Онбординг для новых пользователей — 3 шага (FTR-034)
— Редизайн настроек: секции, toggle, update channel (FTR-033)
— System tray: русское меню, balloon-уведомления (FTR-035)
— DWM border + сохранение позиции окна (FTR-036)
— Клавиатурные сочетания: Ctrl+1/2, Ctrl+R, F5, Ctrl+Q (FTR-037)
— Empty states с SVG-иллюстрациями (UI-015)
— Toast-уведомления с независимыми таймерами (BUG-1055)
— CSS-анимация slideIn (BUG-1058)
— Русификация StatusBar (BUG-1053)
Hub WebView2, редизайн дашборда, AI-чат и оптимизация БД
Крупнейшее обновление платформы — новый Hub, полный редизайн веб-дашборда и интеграция AI.
— Hub полностью переписан: WPF + WebView2 + React (как MS Teams)
— Hub мигрирован с .NET Framework 4.8 на .NET 8
— Новая страница авторизации Hub с логотипом и компактной вёрсткой
— Исправлен PKCE auth flow — обмен кода на токен + передача в приложение
— Мониторинг здоровья сервисов и UX кеша манифеста
— AI-чат для редактирования семейств прямо в Revit
— 9 новых AI-инструментов: работа с параметрами, типами, геометрией
— Протокол parametersJson для вызова инструментов из AI
— Полный редизайн веб-дашборда: sidebar, главная, библиотека, админка
— Тёмная тема дашборда, мобильная адаптация
— i18n инфраструктура для дашборда (RU/EN)
— Маркетинговые страницы: контраст, карточки, touch targets
— Настройки: фиксированная кнопка сохранения, копирование ID, danger zone
— Двусторонний IPC между плагинами и веб через сервис
— Оптимизация БД: удалены мёртвые таблицы, консолидация activity_log, новые индексы, RPC для N+1
AI-ассистент FamilyTools, 20 новых инструментов и исправление авторизации Hub
Крупное обновление AI-функциональности и инструментов FamilyTools.
— AI-чат с голосовым вводом (Whisper) и отправкой изображений
— История чат-сессий с синхронизацией через Supabase
— Markdown-рендеринг в сообщениях (bold, italic, code blocks)
— 20 новых инструментов: параметры, типы, Excel, геометрия, виды, коннекторы, валидация
— Экспорт/импорт параметров в Excel (ClosedXML)
— Комплексная валидация и очистка семейств
— AI-бэкенд переведён на OpenRouter (стабильный доступ из любого региона)
— Исправлена авторизация Hub (отсутствовал APP_SECRET на сервере)
— Исправлено сохранение сессии Hub между перезапусками (AutoRefreshToken + fallback SignIn)
Стабильность и надёжность — 14 багфиксов во всех модулях
Масштабное обновление стабильности по итогам глубокого аудита всех модулей.
— Исправлены утечки памяти в FamilyLibrary: очистка temp-файлов, миграция избранного, парсинг InvariantCulture (BUG-071, BUG-076)
— Исправлены утечки ресурсов в FamilyUpload: cleanup в finally, отписка событий, защита fire-and-forget (BUG-072, BUG-079)
— Null safety в FamilyTools: превью, переименование, параметры (BUG-073, BUG-082)
— Безопасность деплоя Hub: бэкап, откат, защита от гонки watcher (BUG-074)
— Критические runtime-фиксы FamilyLibrary: net48 SnakeCaseLower, pipeCts restart, фильтр OfCategory, IPC cancellation (BUG-075)
— Потокобезопасность FamilyUpload: async auth, pre-upload duplicate dialog (BUG-078)
— Потокобезопасность Core: ServiceLocator, SqliteCache, OfflineQueue (BUG-080)
— Auth: дедупликация 401 refresh, DPAPI failure reporting (BUG-080)
— Heartbeat grace period, JSON parser, DNS refresh (BUG-080)
— Жизненный цикл сервисов: timer crash, OAuth port race, regex perf (BUG-081)
— Static HttpClient в FamilyLibrary + диагностическое логирование (BUG-083)
— Диагностическое логирование в silent catch blocks во всех модулях (BUG-084)
Показать все 25 версий
Страница плагинов, упрощённый UI и автозапуск Hub
Крупное обновление UI плагинов и веб-портала.
— Новая публичная страница /plugins с каталогом плагинов и иконками из Hub
— Упрощена панель библиотеки: удалены вкладки «Здоровье» и «Проекты»
— Hub автоматически запускается при запуске Revit если нет авторизации
— Кнопки плагинов всегда видны на риббоне (disabled когда не залогинен)
— Русская локализация окон FamilyUpload
— Иконки Lucide заменены на Segoe MDL2 во всех плагинах
— Проверка JWT-токенов перед API-вызовами в FamilyUpload
— Аудит-логирование security-событий в API
— Удалён мёртвый код SearchWindow/SearchCommand
Исправлена панель библиотеки и раздельная установка плагинов
Критические исправления после тестирования.
— Исправлена чёрная панель библиотеки: 140 StaticResource → DynamicResource (ресурсы теперь находятся в runtime)
— Раздельная установка/удаление плагинов: каждый плагин ставится и удаляется независимо
— Исправлен краш FamilyUpload: регистрация ILogService в DI-контейнере
— Базовые файлы (DSTools.Core и др.) автоматически ставятся с первым плагином и удаляются с последним
Аудит Revit API — исправления стабильности
Глубокий аудит плагинов по базе знаний Revit API.
— Исправлен краш Create3DPreview при отсутствии параметра FAMILY_HOSTING_BEHAVIOR
— Исправлен краш переименования типов по DN (параметр-строка вместо числа)
— Исправлена утечка памяти: async void → async Task в IPC-обработчике
— Исправлена утечка события LoadFamilyRequested (не отписывался при завершении)
— Оптимизирован поиск экземпляров при загрузке системных типов (нативный фильтр категории)
— Добавлены проверки StorageType перед чтением параметров MEP-типов
— TransactionGroup в IFC-экспорте переведён на using var
Исправления Revit-плагинов
Исправления после тестирования плагинов в Revit.
— Исправлена чёрная панель библиотеки (отсутствовали токены дизайн-системы)
— Убраны лишние кнопки из ленты: Поиск, Настройки
— Переименованы кнопки: Каталог → Библиотека, Утилиты → Инструменты
— Иконки кнопок заменены на фирменные из Hub
— Версии плагинов отвязаны от версии Hub (у каждого своя)
— Добавлено подробное логирование всех команд Revit
Исправление установки плагинов и поиск в каталоге
Исправлена установка/обновление плагинов и добавлен поиск.
— Исправлена ошибка SHA256 при установке плагинов (автосинхронизация хеша в build-скрипте)
— Корректное удаление .addin.disabled файлов при деинсталляции
— Улучшено логирование ошибок при неудачной установке
— Сортировка каталога: доступные обновления → доступные → установленные
— Поиск плагинов по названию и описанию в каталоге и вкладке «Плагины»
Безопасность и UX-улучшения
Усиление безопасности и улучшение каталога плагинов.
— Минимальная длина пароля увеличена до 8 символов
— Timing-safe сравнение секретов (защита от timing-атак)
— Валидация scopes в MCP API (search/load)
— Защита deep health-check эндпоинта
— Объединены категории плагинов в «Семейства»
— Обновлён бейдж «NEW» в каталоге плагинов
Безопасность и стабильность — полный аудит
Масштабное обновление безопасности и стабильности по итогам полного аудита.
— Шифрование токенов с привязкой к машине (DPAPI entropy)
— Проверка JWT-токенов перед сетевыми запросами
— Rate limiting на auth и критичных API-эндпоинтах
— Логирование security-событий (audit log)
— Серверная валидация лицензий с 7-дневным grace-периодом
— Синхронизация авторизации между Hub и плагинами
— Удалён fallback на анонимный ключ в API-запросах
— Проверка авторизации в FamilyTools и FamilyLibrary
— Исправлены deadlock-риски (Dispatcher.InvokeAsync)
— Улучшен установщик: корректная работа при запущенном Revit
— Удалена роль owner — упрощена до admin/member
— 20+ исправлений багов во всех компонентах
Каталожные карточки и 16 багфиксов
Масштабное обновление Hub и исправление 16 багов.
— Новые каталожные карточки плагинов с морфинг-кнопкой (установка → прогресс → удаление)
— Вкладка «Плагины» показывает только установленные
— Плашка «Новый» для свежих плагинов
— Исправлен краш при запуске (Mutex)
— Исправлена потокобезопасность Dispatcher
— Исправлена XSS-уязвимость в блоге
— Улучшен установщик: откат при ошибке, проверка блокировки Revit
— Исправлены скрипты сборки и деплоя
— Удалена роль owner — упрощена до admin/member
— 9 исправлений веб-портала (CSP, валидация, cookies)
Редизайн Hub — Windows UI
Полный редизайн Hub под Windows и новые возможности.
— Windows-стиль заголовка: minimize/close кнопки справа
— Аватар в title bar с dropdown-меню
— Настройки как встроенная страница (без WPF Frame)
— Кнопка удаления плагинов в каталоге
— Исправлено автообновление: DSToolsUpdater копируется в temp
— Исправлен installer для мультиверсионной структуры
— Environment.Exit вместо Shutdown для корректного завершения
Каталог плагинов и мультиверсионная сборка
Каталог, иконки и поддержка всех версий Revit.
— Каталог плагинов с реальными иконками
— Мультиверсионная сборка (Revit 2021–2026)
— Улучшенный UX автообновления — баннер вместо popup
— Исправлена детекция установленных версий
— CI/CD матрица для сборки всех конфигураций
Безопасность и стабильность
Фокус на безопасности и стабильности.
— Кнопка переустановки плагинов в Hub
— Исправления RLS-политик в Supabase
— Усиление безопасности: auth redirects, rate limiting
— Фиксы потокобезопасности в сервисах
— Обновлённый URL загрузки установщика
Hub — модульные плагины и валидация
Крупное обновление Hub и инфраструктуры.
— Серверные пресеты валидации с NCalc-выражениями
— Модульная система плагинов с plugins.json манифестом
— Редизайн Settings и Sidebar в Hub
— Поддержка продуктовых изданий (Designer / Developer)
— Рефакторинг: FamilyManager объединён с FamilyUpload
— Удалено ~7000 строк мёртвого кода
DSTools Hub v2 — полный редизайн
Полностью переработан DSTools Hub — десктоп-приложение для управления плагинами.
— Новый frameless-дизайн с боковой панелью и анимациями
— Авторизация через браузер с PKCE
— Tray popup с быстрым доступом к плагинам
— Панель настроек во flyout-меню
— Автообновление через Velopack
— Общий token store — Hub авторизует плагины в Revit
— Поддержка High DPI мониторов
DSTools Hub — первый релиз
Выпущено десктоп-приложение DSTools Hub.
— Управление плагинами Revit из единого приложения
— Авторизация через Supabase с интеграцией команды
— Логирование, кэширование и офлайн-режим
— WPF-установщик с автодетекцией версий Revit
Редизайн веб-портала
Полный редизайн веб-портала DSTools.
— Новый дизайн лендинга с conversion-копирайтингом
— Обновлённая навигация: sidebar, breadcrumbs, bottom tabs
— Семантический поиск с pgvector-эмбеддингами
— SEO: structured data, sitemap, robots.txt
Команды и приглашения
Система управления командами.
— Приглашение участников по email с автосозданием аккаунта
— Управление ролями: admin, member
— Платформенный админ для управления всеми командами
Партнёрская программа и биллинг
Обновление тарифов и партнёрской программы.
— Форма партнёрского запроса вместо прямых покупок
— Интеграция Stripe (checkout, portal, webhooks)
— Исправление валидации правил и редактора
Система валидации семейств
Валидация семейств Revit.
— Конфигуратор правил валидации через веб-интерфейс
— Динамический движок валидации с удалёнными пресетами
— Загрузка семейств с серверной проверкой
— Новые иконки ribbon-панели в стиле Liquid Glass
Авторизация и навигация
Обновление системы авторизации и навигации.
— Браузерная авторизация через OAuth
— Настройки плагина с новым дизайном
— Flat sidebar, mobile tabs
Первый публичный релиз
Первый публичный релиз DSTools.
— Облачная библиотека семейств с поиском и фильтрами
— Плагины для Revit: FamilyLibrary, FamilyUpload, FamilyTools
— Веб-портал для управления библиотекой
— Поддержка Revit 2019–2025
DSTools