# --- Secrets / local config (NEVER commit) ---
.env
.env.*
!.env.example
*.bak
*.bak_*

# --- Claude Code local settings (machine-local) ---
.claude/settings.local.json
.claude/*.tmp.*

# --- Собранный пакет SDK ---
# `sdk/python/fastsub/` генерируется build.py из src/api/v1/sdk/fastsub_client.py
# перед публикацией. Коммитить сборку значит завести вторую копию, которая
# разъедется с источником в первый же раз, когда кто-то поправит только её.
sdk/python/fastsub/
sdk/python/dist/
# CHANGELOG.md там же собирается — из src/domain/changelog.py, откуда его берёт
# и мини-апп «Обновления». Записанная руками копия разъедется так же тихо.
sdk/python/CHANGELOG.md

# --- Python ---
__pycache__/
*.py[cod]
*.egg-info/
.eggs/
build/
dist/

# --- Virtualenvs ---
.venv/
.venv-sdk/
venv/
env/

# --- Tooling caches ---
.pytest_cache/
.mypy_cache/
.ruff_cache/
.coverage
htmlcov/

# --- Packaged artifacts ---
*.zip

# --- Editor / OS ---
.idea/
.vscode/
*.swp
.DS_Store
logs/

# `sdk/js/` собирается build.py из src/api/v1/sdk/fastsub.mjs — как и пакет
# питона, публикуемые файлы не хранятся вторым экземпляром.
sdk/js/fastsub.mjs
sdk/js/fastsub.d.ts
sdk/js/LICENSE
sdk/js/*.tgz
