Files
drhider/.github/copilot-instructions.md
T

4.5 KiB

ПРАВИЛА ДЛЯ 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. Проверить синтаксис:
    python3 -c "import py_compile; py_compile.compile('файл.py', doraise=True)"
    
  2. Проверить импорт работает:
    cd /home/naeel/nubes/drhider && python3 -c "from drhider import obfuscate_files, LLMClient"
    
  3. Проверить соседние функции не затёрты (после replace_string_in_file)
  4. СРАЗУ commit + push с подробным сообщением

КОММИТИТЬ + ПУШИТЬ ПОСЛЕ КАЖДОЙ ПРАВКИ

Без исключений. Никаких «потом», никаких накоплений.

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.pyapp = 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