Документация: README.md, ARCHITECTURE.md, DEPLOY.md, .github/copilot-instructions.md
Deploy drhider / validate (push) Waiting to run

This commit is contained in:
2026-07-12 08:37:51 +04:00
parent 7a005f7b06
commit 0707d53b37
4 changed files with 591 additions and 0 deletions
+120
View File
@@ -0,0 +1,120 @@
# ⛔ ПРАВИЛА ДЛЯ COPILOT — ПРОЕКТ DRHIDER
Читать перед ЛЮБЫМ действием. Нарушение = зря потраченное время.
---
## ⛔⛔⛔ ЗОЛОТОЕ ПРАВИЛО
**НИКОГДА НИЧЕГО НЕ ДЕЛАТЬ БЕЗ ЯВНОЙ КОМАНДЫ «ДЕЛАЙ».**
Любой вопрос, обсуждение, анализ — НЕ повод менять код.
Только после явного: «делай», «делайте», «давай», «приступай», «пушить», «commit», «push».
---
## ⛔⛔⛔ НЕ МЕНЯТЬ КОД БЕЗ «ДЕЛАЙ»
Даже если ошибка очевидна. Даже если «исправление в одну строку».
**Показать проблему → описать решение → ЖДАТЬ «делай».**
---
## ⛔⛔⛔ НЕ СМОТРЕТЬ ЛОКАЛЬНЫЕ ПАПКИ CONTRACTS
Весь старый код drhider — ТОЛЬКО на ВМ (`5.172.178.213` через SSH).
**НЕ лезть** в `/home/naeel/nubes/contracts/`, `contracts-flask/` и т.д.
Единственное исключение: `/home/naeel/nubes/loadtest/` (образец managed Flask).
---
## ⛔⛔⛔ НЕ СПЕШИТЬ
Сначала ВСЁ обдумать. Проверить. Перепроверить. Только потом отвечать.
Спешка → ошибки → проблемы.
---
## ⛔⛔⛔ НЕ ПРЕДПОЛАГАТЬ, НЕ ДОГАДЫВАТЬСЯ
Есть сомнения — **ОСТАНОВИТЬСЯ И СПРОСИТЬ**.
Не надо самостоятельно «улучшать» рабочий код без прямого разрешения.
---
## ⛔⛔⛔ КОМАНДЫ В ТЕРМИНАЛЕ — С ТАЙМАУТАМИ
- `curl`: `--max-time N`
- `ssh`: `-o ConnectTimeout=N`
- `grep` на больших файлах: `timeout N grep ...`
---
## ✅ ПОСЛЕ КАЖДОЙ ПРАВКИ
1. **Проверить синтаксис:**
```bash
python3 -c "import py_compile; py_compile.compile('файл.py', doraise=True)"
```
2. **Проверить импорт работает:**
```bash
cd /home/naeel/nubes/drhider && python3 -c "from drhider import obfuscate_files, LLMClient"
```
3. **Проверить соседние функции не затёрты** (после replace_string_in_file)
4. **СРАЗУ commit + push** с подробным сообщением
---
## ✅ КОММИТИТЬ + ПУШИТЬ ПОСЛЕ КАЖДОЙ ПРАВКИ
Без исключений. Никаких «потом», никаких накоплений.
```bash
git add -A
git commit -m "подробное описание что сделано"
git push
```
---
## ✅ ДОКУМЕНТИРОВАТЬ ВСЁ В History/
Каждое изменение, план, ошибку — в `/home/naeel/nubes/drhider/History/`:
- Отдельный `.md` файл на каждую сессию/задачу
- Что планировалось → что сделано → в чём ошибся
---
## 📋 ПРОЕКТ DRHIDER — КЛЮЧЕВЫЕ ФАКТЫ
| Факт | Значение |
|---|---|
| Платформа | **Штурвал** (Managed Flask на pythonk8s) |
| URL | https://drhider.pythonk8s.dev.nubes.ru/ |
| Репозиторий | https://gitea.services.ngcloud.ru/Nail/drhider |
| Точка входа | `site/app.py` → `app = create_app()` |
| БД | **НЕТ** (всё в памяти) |
| Dockerfile | **НЕТ** (Штурвал сам запускает Flask) |
| gunicorn | **НЕТ** (Штурвал сам) |
| Зависимости | `flask`, `python-docx`, `pdfplumber`, `httpx` |
| ВМ (legacy) | `5.172.178.213`, ssh-ключ `~/.ssh/naeel_vm_id_ed25519` |
### Переменные окружения
| Переменная | Значение |
|---|---|
| `LLM_API_KEY` | `sk-ucI5YvOticoOQ9Kuj5K9mQ` |
| `LLM_URL` | `https://api.aillm.ru/v1/chat/completions` |
| `LLM_MODEL` | `gpt-oss-120b` |
---
## ⛔ ЗАПРЕЩЕНО
1. Менять код без «делай»
2. Смотреть локальные папки contracts/
3. Действовать по догадкам («я бы сделал так», «можно попробовать»)
4. Удалять файлы/папки без разрешения
5. Использовать sed
6. Откладывать commit/push «на потом»
7. Игнорировать проверку синтаксиса перед push