# 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
