# ============================================================
# Python
# ============================================================

# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg

# PyInstaller
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# ============================================================
# Testing & Coverage
# ============================================================
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
.benchmarks/

# ============================================================
# Type checking / Linting
# ============================================================
.mypy_cache/
.dmypy.json
dmypy.json
.pytype/
.pyre/
.ruff_cache/

# ============================================================
# Environments & Secrets
# ============================================================
.env
.env.*
!.env.example
.venv
env/
venv/
ENV/
env.bak/
venv.bak/
.python-version

# Security - never commit credentials or certificates
*.pem
*.key
*.crt
*.p12
*.pfx
*.jks

# ============================================================
# IDEs & Editors
# ============================================================
.idea/
.vscode/
*.swp
*.swo
*~
.project
.settings/
.classpath
*.sublime-project
*.sublime-workspace

# ============================================================
# OS
# ============================================================
.DS_Store
.DS_Store?
._*
Thumbs.db
ehthumbs.db
Desktop.ini

# ============================================================
# Package managers
# ============================================================

# uv
.uv/

# Translations
*.mo
*.pot

# ============================================================
# AI / Claude Code
# ============================================================
# .claude/ is committed for shared commands, skills, agents, and settings.
# Only personal/local files are ignored:
.claude/settings.local.json
.claude/agent-memory-local/
CLAUDE.local.md
memories/

# ============================================================
# Jupyter Notebooks
# ============================================================
.ipynb_checkpoints/

# ============================================================
# Profiling
# ============================================================
*.prof
*.lprof
*.cachegrind

# ============================================================
# Logs
# ============================================================
*.log
logs/

# ============================================================
# MkDocs
# ============================================================
site/

# ============================================================
# TraceCraft specific
# ============================================================
agentdocs/
tracecraft_logs/

# Trace output files
traces/
*.jsonl
*.db
*.sqlite
*.sqlite3

# Trace/snapshot report HTML (generated by CLI and test runner)
trace_report.html
snapshot_report.html
tui_screenshot.svg

# Note: uv.lock IS tracked for reproducible builds
.oss-eval/
