Перейти к основному содержимому

📦 Release Notes v2.0.1

Дата выпуска: 11 марта 2026 г.

Сравнение версий: v2.0.0...v2.0.1


🎯 Основные изменения

🔧 Рефакторинг схемы базы данных

Масштабный рефакторинг схемы базы данных для улучшения поддерживаемости и расширяемости.

Изменения:

  • Модульная структура — схема разделена на отдельные файлы по таблицам в папке shared/schema/tables/
  • JSDoc документация — добавлены подробные комментарии ко всем модулям
  • Типизация — явный экспорт типов для каждой таблицы

Новые файлы схем:

ФайлОписание
telegram-users.tsТаблица аутентифицированных пользователей Telegram
bot-projects.tsТаблица проектов ботов
bot-tokens.tsТаблица токенов ботов
bot-instances.tsТаблица запущенных экземпляров ботов
bot-templates.tsТаблица сценариев ботов
media-files.tsТаблица медиафайлов
user-bot-data.tsТаблица пользовательских данных бота
bot-users.tsТаблица пользователей бота
bot-groups.tsТаблица групп бота
group-members.tsТаблица участников групп
user-telegram-settings.tsТаблица настроек Telegram Client API
bot-messages.tsТаблица истории сообщений
bot-message-media.tsТаблица связи сообщений с медиа
user-ids.tsТаблица ID пользователей для рассылки
button-schema.tsСхема кнопки бота
node-schema.tsСхема узла бота
bot-sheets.tsСхемы листов холста и данных бота
additional-schemas.tsДополнительные схемы
index.tsЭкспорт всех таблиц

🆕 Новые поля в схемах

Bot Projects

Добавлены поля для экспорта в Google Таблицы:

  • lastExportedGoogleSheetId — ID последней экспортированной Google Таблицы пользователей
  • lastExportedGoogleSheetUrl — URL последней экспортированной Google Таблицы пользователей
  • lastExportedAt — дата последнего экспорта пользователей
  • lastExportedStructureSheetId — ID последней экспортированной Google Таблицы структуры проекта
  • lastExportedStructureSheetUrl — URL последней экспортированной Google Таблицы структуры проекта
  • lastExportedStructureAt — дата последнего экспорта структуры проекта
  • restartOnUpdate — флаг необходимости перезапуска бота при обновлении

User Bot Data

  • avatarUrl — URL аватарки пользователя

Bot Users

  • avatarUrl — URL аватарки пользователя
  • isBot — флаг бота (0 = человек, 1 = бот)

Bot Messages

  • createdAt — обновлён тип timestamp с поддержкой timezone

📦 Обновление версии

  • Версия приложения обновлена с 2.0.0 до 2.0.1
  • VersionBadge — отображает актуальную версию

🔧 Исправления

Исправление импорта LayoutConfig

  • Проблема — ошибка импорта типа LayoutConfig из layout-manager.tsx
  • Решение — создан index.ts в папке layout для централизованного экспорта типов
  • Путь — изменён с относительного на алиас @/components/layout

📊 Статистика изменений

КатегорияФайлов измененоСтрок добавленоСтрок удалено
Рефакторинг схемы1829541276
Обновление версии111
Исправление импорта261
Всего2129611278

🔧 Технические детали

Модульная схема

// shared/schema/tables/index.ts
export { telegramUsers, insertTelegramUserSchema } from "./telegram-users";
export type { TelegramUser, InsertTelegramUser } from "./telegram-users";

export { botProjects, insertBotProjectSchema } from "./bot-projects";
export type { BotProject, InsertBotProject } from "./bot-projects";

// ... и так далее для всех таблиц

Пример использования

import { botProjects, type BotProject } from '@/shared/schema/tables';

// Работа с типом
const project: BotProject = {
id: 1,
name: 'My Bot',
// ...
};

// Работа со схемой
const insertSchema = insertBotProjectSchema.parse(data);

Экспорт типов из layout

// client/components/layout/index.ts
export type { LayoutConfig } from './layout-manager';

// Использование
import type { LayoutConfig } from '@/components/layout';

🚀 Установка

Обновление с v2.0.0:

# Обновите проект
git pull origin main

# Установите зависимости
cd client
npm install

# Соберите проект
npm run build

# Запустите
npm run start

Через Docker:

# Пересоберите образ
docker-compose build --no-cache

# Запустите
docker-compose up -d

⚠️ Важные замечания

Миграции базы данных

После обновления рекомендуется проверить миграции базы данных:

# Проверка состояния миграций
npm run db:check

# Применение миграций (если требуется)
npm run db:migrate

Обратная совместимость

  • Все изменения обратно совместимы
  • Старые данные сохранятся при обновлении
  • Новые поля добавлены с значениями по умолчанию

📦 Зависимости

Новые зависимости не требуются.


🔗 Ссылки


📋 Чек-лист обновления

  • Схема разделена на модули
  • Добавлена JSDoc документация
  • Новые поля в botProjects для Google Sheets
  • Новые поля avatarUrl в userBotData и botUsers
  • Обновлена версия до 2.0.1
  • Исправлен импорт LayoutConfig
  • Создан index.ts для экспорта типов layout

Полный список изменений: Коммиты v2.0.0...v2.0.1