Stage 04.1 - storage foundation (PostgreSQL) and system dashboard UI
This commit is contained in:
142
docs/stages/stage-04-1-storage.md
Normal file
142
docs/stages/stage-04-1-storage.md
Normal file
@@ -0,0 +1,142 @@
|
||||
# Stage 04.1 — Storage Foundation (PostgreSQL) and System Dashboard
|
||||
|
||||
## Цель
|
||||
Подключить слой хранения на PostgreSQL и одновременно привести системный экран к продовому виду (операционный dashboard).
|
||||
|
||||
---
|
||||
|
||||
## Что добавлено
|
||||
|
||||
### Storage
|
||||
- PostgreSQL как основная база данных
|
||||
- подключение через `psycopg`
|
||||
- инициализация схемы при старте приложения
|
||||
- базовые таблицы:
|
||||
- balance_snapshots
|
||||
- journal_events
|
||||
- order_drafts
|
||||
- health check БД
|
||||
|
||||
---
|
||||
|
||||
### System Dashboard (⚙️ Система)
|
||||
Экран системы переработан из технического вывода в операционный статус.
|
||||
|
||||
#### Компоненты системы
|
||||
Добавлен компактный статус всех ключевых частей:
|
||||
|
||||
- Приложение
|
||||
- База данных
|
||||
- Telegram
|
||||
- Биржа (public API + символ)
|
||||
- Аккаунт (private API)
|
||||
|
||||
Поведение:
|
||||
- при 🟢 → только краткий статус
|
||||
- при 🔴 → добавляется описание ошибки
|
||||
|
||||
---
|
||||
|
||||
### Биржа (объединённый статус)
|
||||
Объединены проверки:
|
||||
- доступность public API
|
||||
- валидность символа (exchangeInfo)
|
||||
|
||||
Теперь это один сигнал:
|
||||
- 🟢 Биржа → всё работает
|
||||
- 🔴 Биржа → проблема (API или символ)
|
||||
|
||||
---
|
||||
|
||||
### Аккаунт
|
||||
Добавлен статус private API:
|
||||
|
||||
- проверка API ключей
|
||||
- проверка доступа к аккаунту
|
||||
|
||||
---
|
||||
|
||||
## Блок "🌐 Окружение"
|
||||
|
||||
Экран упрощён до минимально полезного набора параметров:
|
||||
|
||||
🌐 Окружение
|
||||
• приложение: Dzentra Bot 2.0.0
|
||||
• база данных: PostgreSQL 17.9
|
||||
• часовой пояс: Europe/Minsk
|
||||
• режим: ДЕМО аккаунт / РЕАЛЬНЫЙ аккаунт
|
||||
• инструмент: BTC/USD_LEVERAGE
|
||||
|
||||
### Принципы отбора
|
||||
Оставлены только параметры, которые:
|
||||
- влияют на поведение системы
|
||||
- важны для диагностики
|
||||
- критичны для безопасности (режим торговли)
|
||||
|
||||
Удалены:
|
||||
- env
|
||||
- exchange_enabled
|
||||
- exchange_name
|
||||
- os
|
||||
- python
|
||||
|
||||
---
|
||||
|
||||
## Режим работы (важное изменение)
|
||||
|
||||
Вместо технического параметра:
|
||||
|
||||
env: dev
|
||||
|
||||
используется бизнес-понятие:
|
||||
|
||||
режим: ДЕМО аккаунт / РЕАЛЬНЫЙ аккаунт
|
||||
|
||||
Источник:
|
||||
- exchange_testnet
|
||||
|
||||
Зачем:
|
||||
- снижает риск ошибок
|
||||
- сразу понятно, используются ли реальные деньги
|
||||
|
||||
---
|
||||
|
||||
## Отображение PostgreSQL
|
||||
|
||||
Реализовано корректное отображение версии БД:
|
||||
|
||||
PostgreSQL 17.9
|
||||
|
||||
Особенности:
|
||||
- версия берётся напрямую из БД (SELECT version())
|
||||
- из строки извлекается только нужная часть
|
||||
- исключены технические строки типа OK: db=...
|
||||
|
||||
---
|
||||
|
||||
## Архитектурный результат
|
||||
|
||||
После Stage 04.1 система получила:
|
||||
|
||||
- полноценный storage layer (PostgreSQL)
|
||||
- health-check инфраструктуры
|
||||
- единый системный dashboard
|
||||
- разделение:
|
||||
- технических параметров
|
||||
- пользовательского UI
|
||||
|
||||
---
|
||||
|
||||
## Почему это важно
|
||||
|
||||
- система готова к журналированию
|
||||
- можно диагностировать проблемы без логов
|
||||
- UI стал безопасным (режим торговли)
|
||||
- база данных интегрирована как часть системы, а не внешний компонент
|
||||
|
||||
---
|
||||
|
||||
## Что дальше
|
||||
|
||||
- Stage 04.2 — Journal / event log
|
||||
- Stage 04.3 — Repositories
|
||||
Reference in New Issue
Block a user