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

# --- Packaging / build ---
build/
dist/
wheels/
*.egg-info/
*.egg
.eggs/

# --- Virtual environments ---
.venv/
venv/
env/

# --- Test / type-check / lint caches ---
.pytest_cache/
.mypy_cache/
.ruff_cache/
.coverage
.coverage.*
htmlcov/
coverage.xml

# --- Data files (large; never commit) ---
dataset/*.pkl
dataset/*.pickle
experiments/datasets/*.pkl
experiments/datasets/*.pickle
experiments/datasets/*.csv
experiments/datasets/*.h5
experiments/datasets/*.npz
!experiments/datasets/README.md

# --- Experiment outputs ---
results_dir/
experiments/results/
plots/
*.xlsx
!docs/**/*.xlsx

# --- examples/ run outputs (config + scripts ARE tracked; data + outputs are not) ---
examples/datasets/*.pkl
examples/datasets/*.pickle
examples/datasets/*.csv
examples/datasets/*.h5
examples/datasets/*.npz
!examples/datasets/README.md
examples/runs/
examples/plots/

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

# --- OS ---
.DS_Store
Thumbs.db

# --- Reference-only scratch files (not part of the tbls package or repo
# history): a pasted pre-refactor project snapshot (contains duplicate large
# .pkl datasets) and a pasted comparison file, kept locally for review only.
BLS/
/gfcca.py

# --- Local agent/tooling artifacts (not part of the published project) ---
.claude/settings.local*.json
