.env

# Project outputs
export/
reports/

# Run report test
run_report_test.py

# Python bytecode
__pycache__/
*.py[cod]
*$py.class

# Virtual environments
.venv/
venv/
.envrc

# Python packaging/build artifacts
build/
dist/
*.egg-info/
.eggs/

# uv / build caches (CI caches .cache/uv between jobs)
.cache/

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

# Type checkers / linters
.mypy_cache/
.ruff_cache/

# OS files
.DS_Store

# Python version managers
.python-version

# IDEs
.vscode/
.idea/
*.iml

# Streamlit
# Runtime artifacts (e.g. ``.streamlit/lock``) are ignored, but
# ``config.toml`` is a deliberate, versioned theme lock (SD-813) and must
# ship with the repo and the deployment ZIP.
.streamlit/*
!.streamlit/config.toml

# Vendored third-party artefacts
# vendor/ holds the netwlens wheel that pyproject.toml, uv.lock, and the
# Dockerfile all install from. Whitelist *.whl so that intentional drop
# stays tracked; ignore everything else (download caches, scratch files,
# untrusted bundles) by default.
vendor/*
!vendor/*.whl