Stage 03.1 - mock exchange integration
This commit is contained in:
14
docs/decisions/0005-exchange-integration.md
Normal file
14
docs/decisions/0005-exchange-integration.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# 0005 — Exchange Integration Start
|
||||
|
||||
## Решение
|
||||
Начать интеграцию с биржей не с реальных ордеров, а с mock / readonly уровня.
|
||||
|
||||
## Причины
|
||||
- это безопаснее
|
||||
- это позволяет сначала стабилизировать transport/config/UX
|
||||
- это дает быстрый результат в интерфейсе
|
||||
|
||||
## Последствия
|
||||
- первые экраны работают в mock mode
|
||||
- реальный REST client будет добавлен позже
|
||||
- рынок и система начинают зависеть от exchange service, а не от raw handlers logic
|
||||
189
docs/git_flow_dzentra_bot.md
Normal file
189
docs/git_flow_dzentra_bot.md
Normal file
@@ -0,0 +1,189 @@
|
||||
# Git Setup Flow: dzentra_bot
|
||||
|
||||
## Полный процесс: от `git init` до первого `push` в Gitea
|
||||
|
||||
---
|
||||
|
||||
## 📍 0. Перейти в корень проекта
|
||||
|
||||
```bash
|
||||
cd ~/vsprojects/dzentra_bot
|
||||
pwd
|
||||
```
|
||||
|
||||
Ожидаемо:
|
||||
```
|
||||
.../vsprojects/dzentra_bot
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🧱 1. Инициализация Git
|
||||
|
||||
```bash
|
||||
git init
|
||||
```
|
||||
|
||||
Проверка:
|
||||
```bash
|
||||
git status
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📦 2. Проверка `.gitignore`
|
||||
|
||||
```bash
|
||||
cat .gitignore
|
||||
```
|
||||
|
||||
Должны быть строки:
|
||||
```
|
||||
app/.env
|
||||
app/.venv/
|
||||
__pycache__/
|
||||
.DS_Store
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ➕ 3. Добавить все файлы
|
||||
|
||||
```bash
|
||||
git add .
|
||||
```
|
||||
|
||||
Проверка:
|
||||
```bash
|
||||
git status
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 💾 4. Первый commit
|
||||
|
||||
```bash
|
||||
git commit -m "bootstrap v2 stable start"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔗 5. Подключить удалённый репозиторий (Gitea)
|
||||
|
||||
```bash
|
||||
git remote add origin https://gitadmin@git.segeba.by/gitadmin/dzentra_bot.git
|
||||
```
|
||||
|
||||
Проверка:
|
||||
```bash
|
||||
git remote -v
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🌿 6. Установить ветку main
|
||||
|
||||
```bash
|
||||
git branch -M main
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔐 7. Настроить сохранение токена (macOS)
|
||||
|
||||
```bash
|
||||
git config --global credential.helper osxkeychain
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🚀 8. Первый push
|
||||
|
||||
```bash
|
||||
git push -u origin main
|
||||
```
|
||||
|
||||
При запросе:
|
||||
|
||||
### Username:
|
||||
```
|
||||
gitadmin
|
||||
```
|
||||
|
||||
### Password:
|
||||
👉 вставить **Personal Access Token из Gitea**
|
||||
|
||||
---
|
||||
|
||||
## ✅ 9. Проверка
|
||||
|
||||
```bash
|
||||
git status
|
||||
git branch -vv
|
||||
```
|
||||
|
||||
Проверить в Gitea — файлы должны появиться.
|
||||
|
||||
---
|
||||
|
||||
# 🔁 Дальнейшая работа
|
||||
|
||||
## Каждый цикл разработки
|
||||
|
||||
```bash
|
||||
git status
|
||||
git add .
|
||||
git commit -m "описание изменения"
|
||||
git push
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# 🖥 Работа с проектом
|
||||
|
||||
## Запуск бота
|
||||
|
||||
```bash
|
||||
cd app
|
||||
source .venv/bin/activate
|
||||
python -m src.main
|
||||
```
|
||||
|
||||
## Git всегда из корня
|
||||
|
||||
```bash
|
||||
cd ~/vsprojects/dzentra_bot
|
||||
git status
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# 🚀 Deploy на Synology
|
||||
|
||||
```bash
|
||||
git pull
|
||||
sudo docker compose -f infra/compose/docker-compose.yml up --build -d
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# ⚠️ Важно
|
||||
|
||||
Не коммитить:
|
||||
|
||||
```
|
||||
app/.env
|
||||
app/.venv
|
||||
ключи
|
||||
пароли
|
||||
логи
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# 🎯 Итог
|
||||
|
||||
Git используется как:
|
||||
- система контроля версий
|
||||
- история проекта
|
||||
- мост между Mac и Synology
|
||||
45
docs/stages/stage-03-1-integration-mock.md
Normal file
45
docs/stages/stage-03-1-integration-mock.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# Stage 03.1 — Mock Integration
|
||||
|
||||
## Цель
|
||||
Оживить экран `📈 Рынок` и добавить первый статус интеграции с биржей без риска реальной торговли.
|
||||
|
||||
## Что добавляется
|
||||
- exchange settings в `config.py`
|
||||
- модели интеграции
|
||||
- mock data
|
||||
- exchange service
|
||||
- экран `📈 Рынок` с mock price
|
||||
- экран `⚙️ Система` со статусом интеграции
|
||||
|
||||
## Какой результат нужен
|
||||
### Рынок
|
||||
Пользователь нажимает `📈 Рынок` и видит:
|
||||
- символ
|
||||
- цену
|
||||
- источник `mock`
|
||||
- время обновления
|
||||
|
||||
### Система
|
||||
Пользователь нажимает `⚙️ Система` и видит:
|
||||
- Биржа: mock mode
|
||||
- exchange_enabled
|
||||
- exchange_name
|
||||
|
||||
## Почему это правильный шаг
|
||||
- не нужен реальный API в первый день
|
||||
- можно спокойно отладить архитектуру
|
||||
- рынок перестает быть заглушкой
|
||||
- system screen становится полезнее
|
||||
|
||||
## Как проверить
|
||||
1. Запустить бота локально
|
||||
2. Нажать `📈 Рынок`
|
||||
3. Нажать `⚙️ Система`
|
||||
4. Проверить `/help`
|
||||
|
||||
## Рекомендуемые commit messages
|
||||
```bash
|
||||
git commit -m "add exchange config and mock models"
|
||||
git commit -m "connect market screen to mock exchange service"
|
||||
git commit -m "show exchange mock health in system screen"
|
||||
```
|
||||
Reference in New Issue
Block a user