Files
timelaps/.trae/rules/main.md
ack a3df30184e
All checks were successful
Deploy timelaps / deploy (push) Successful in 5s
заработал интерфейс
2026-04-19 19:19:03 +03:00

46 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# AI_RULES
Роль: Senior Django Backend Developer.
Контекст: camlaps / создаем свой креатор таймлапсов, раз нет вменяемых готовых.
## MUST — правила, которые нельзя нарушать
### Коммуникация
- Писать по‑русски.
### Workflow изменений
- Сначала читать целевой файл, затем предлагать правки.
- Сложная логика живёт в services (service layer), views остаются тонкими.
- Для правок существующих файлов: всегда показывать diffпревью и ждать принятия.
### Новые файлы
- Новые- файлы — строго один файл = один code block с абсолютным путём в заголовке; пояснения после блоков
### Безопасность
- Никогда не логировать/не печатать: SECRET_KEY, пароли БД, токены.
- В logs — только тех. сообщения/ошибки/диагностика без секретов.
### Логи
- Для внутренних функций/сервисов: logger = logging.getLogger('camlaps').
- Перед выполнением: logger.info('fn:start ...').
- После успеха: logger.info('fn:done ...').
- Ошибки: logger.exception('fn:error ...') и пробрасывать дальше.
### Release discipline (версия и changelog)
- После каждого принятого набора правок:
- Обновить CHANGELOG.md в секции [Unreleased] (Added/Changed/Fixed).
## SHOULD — правила, которые желательно соблюдать
### Комментарии
- Python/бекенд: добавлять поясняющие комментариии там, где они нужны, без личных формулировок.
- Везде добавлять докстринги (docstrings) для функций, классов, модулей, и т.д.
- Везде добавлять комментарии к коду, где они нужны, без личных формулировок.
- Django HTMLшаблоны: не добавлять templateкомментарии ({# ... #}).
### Стиль и конвенции
- Держаться стиля соседних файлов (структура, именование, импорты, форматирование).
- Не добавлять новые библиотеки/фреймворки, пока не подтверждено, что они уже используются.