Files
dataset-tg-bot/AGENTS.md
Arity-T fc3f438cbf chore: add ruff and ty, fix linting
- Add ruff (line-length 88) and ty to dev dependencies
- Fix all ruff linting errors
- Configure ty to ignore nullable type warnings
- Update AGENTS.md with linting instructions
2026-02-02 21:43:08 +03:00

42 lines
2.0 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.

## О проекте
О проекте - в README.md.
## Правила кодирования
### uv
В проекте используется uv. С помощью uv add добавляем зависимости.
С помощью uv run запускаем.
### Линтер и типы
- **ruff** — линтер и форматтер, line-length 88
- **ty** — проверка типов
- Перед коммитом: `uv run ruff check --fix . && uv run ruff format . && uv run ty check .`
### Type hints
Используй современный синтаксис type hints:
- `list[]`, `dict[]`, `tuple[]`, `set[]` вместо List, Dict, etc.
- `| None` вместо Optional
- Всегда указывай типы для параметров и возвращаемых значений
### Комментари ие комментарии в коде
- Только короткие докстринги к функциям на одну-две строчки
- Код должен быть самодокументируемым
### Логирование
- Используй базовое логирование через модуль `src/logger.py`
- **INFO** уровень - основные логи для пользователя (что происходит)
- **DEBUG** уровень - детальная информация для отладки
- Не спамь логами, только важная информация
- Уровень логирования настраивается через `LOG_LEVEL` в `.env`
## Конфигурация
Все секреты и настройки хранятся в `.env`. Смотри `.env.example` для примера.
### Переменные окружения
- Не используй значения по умолчанию для переменных окружения
- Если переменная не задана — выбрасывай ошибку при старте
- Это помогает сразу обнаружить проблемы с конфигурацией