# Build / dist
build/
dist/
*.egg-info/
src/threecommon/_version.py

# Test / coverage
.pytest_cache/
.coverage
.coverage.*
coverage.xml
htmlcov/

# Type checkers
.mypy_cache/
.pyright/
.ruff_cache/

# Virtualenvs
.venv/
venv/
env/

# uv lockfile: uv is dev/tooling-only here; CI installs via pip from pyproject,
# so uv.lock is not part of this project's dependency contract and is not
# committed. (The add-sdk-resource workflow runs `uv run --no-sync`, which won't
# write it, but a bare `uv` command from a dev or an agent omitting --no-sync
# would; keep it ignored as a backstop.)
uv.lock

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

# Python bytecode
__pycache__/
*.py[cod]
