# Python
__pycache__/
*.py[cod]
*$py.class
*.so
*.egg-info/
dist/
build/
release-assets/
plugin-smoke/
.release-smoke/
.eggs/
*.egg

# Virtual environments
.venv/
venv/
env/

# IDE
.vscode/
.idea/
*.swp
*.swo

# Testing / coverage
.pytest_cache/
.pytest_tmp/
htmlcov/
.coverage
coverage.xml

# OS
.DS_Store
Thumbs.db

# CellTypePilot outputs
ctp_output/
*.annotated.h5ad
manifest.json
demo_output_recal/
gbm_dc_output/
mouse_brain_output/
benchmarks/**/data/
benchmarks/**/runs/
benchmarks/**/release/
benchmarks/**/cache/
benchmarks/**/_runtime_cache/
benchmarks/**/envs/
# Immutable asset object cache (content-addressed blobs; catalog JSON is tracked)
benchmarks/assets/objects/
# GPU batch runtime outputs (manifest/README stay tracked)
benchmarks/**/batches/**/run/
benchmarks/**/batches/**/aggregate/
# Host acceptance fixture outputs
scratch/host_acceptance/
# Pytest temp artifacts
scratch/pytest_temp/
# CI pytest acceptance runs
benchmarks/acceptance/pytest_ci*/

# Runtime cache and local environments
.runtime_cache/
.codex/environments/
.claude/

# License private key (NEVER commit — kept offline for signing)
.license_private_key.pem
