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

# Virtual envs
.venv/
.venv*/
venv/
env/

# Build artifacts (scikit-build-core + CMake)
build/
dist/
_skbuild/
*.so
*.dylib
*.dll

# Staged native wheels for Briefcase packaging (PIP_FIND_LINKS=./wheels)
wheels/

# Test / tooling caches
.pytest_cache/
.mypy_cache/
.ruff_cache/
.coverage
htmlcov/
coverage.xml

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

# Local key material — never commit secret keys
.implicant-demo/

# Local agent context — keep out of version control
CLAUDE.local.md

# Staged implicant-fhe wheels (downloaded via `gh release download`, not committed)
wheels/

# Briefcase / build logs
logs/

# Demo handoff bundle (large public-key blobs sent to platform; not committed).
# The .zip needs its own rule: the directory pattern above does not match it, so
# it stayed untracked-but-committable (460 MB) and hatchling swept it into the
# sdist (489 MB, past PyPI's 100 MB limit) until it was excluded explicitly.
/demo_handoff/
/demo_handoff.zip
