Database Schema (Integration-Only Architecture)¶
Дата обновления: 2025-11-13 Архитектура: Integration-Only (НИКАКИХ WALLET ОПЕРАЦИЙ)
Схема базы данных PostgreSQL для Saga платформы согласно Integration-Only принципам.
Основные таблицы¶
Users & Authentication (Integration-Only)¶
users- основная таблица пользователей (id UUID, email MANDATORY, status)- КРИТИЧНО (2025-11-13): Email UNIQUE NOT NULL - единственный identifier
- УДАЛЕНО: auto_invest_strategy (теперь только single strategy 10% APY)
auto_invest_enabled BOOLEAN DEFAULT true- автоматическое создание investment при deposit- ТАБЛИЦА УДАЛЕНА (Integration-Only architecture)walletssessions- сессии пользователей для JWT управления
Financial Operations¶
transactions- ВСЕ финансовые операции (APPEND-ONLY, no soft deletes!)investments- инвестиционные позиции пользователей (single strategy only)crypto2b_transactions- НОВАЯ: интеграция с Crypto2B API
External Integration Tracking¶
- УДАЛЕНО (Integration-Only)blockchain_transactions- УДАЛЕНО (Integration-Only)contract_eventscrypto2b_transactions- отслеживание внешних операций через Crypto2B
Архитектурные принципы (Integration-Only)¶
APPEND-ONLY для transactions¶
КРИТИЧЕСКИ ВАЖНО: Таблица transactions является строго APPEND-ONLY:
- ❌ Никогда не используется deleted_at
- ❌ Запрещены UPDATE и DELETE операции
- ✅ Только INSERT операции для audit trail
- ✅ Статусы для управления состоянием
Single Source of Truth (Integration-Only)¶
- Баланс рассчитывается из
transactions- никакого кеширования! - Email является ЕДИНСТВЕННЫМ PRIMARY IDENTIFIER пользователя
Wallet addresses- УДАЛЕНЫ (Integration-Only)- External integration tracking через crypto2b_transactions
External Provider Integration¶
- Crypto2B API для всех crypto операций
- TRC20 USDT как primary currency
- Webhook-based transaction confirmations
Детальное проектирование¶
Архитектурное решение по дизайну схемы БД описано в ADR-0007: Database Schema Design.
Миграции¶
Система миграций описана в Database Migrations Guide.
Основная консолидированная миграция:
- 000001_consolidated_schema.up.sql - создание всех таблиц
- 000001_consolidated_schema.down.sql - откат схемы
Тестирование¶
Изолированное тестирование БД описано в ADR-0008: Isolated Database Testing.