# ─── Python bytecode & caches ─────────────────────────────────────────────────
__pycache__/
*.py[cod]
*.pyo
*.pyd
.Python

# ─── Packaging & distribution ─────────────────────────────────────────────────
*.egg
*.egg-info/
dist/
build/
wheels/
.eggs/
MANIFEST
pip-wheel-metadata/
share/python-wheels/
*.whl

# ─── Virtual environments ──────────────────────────────────────────────────────
.venv/
venv/
env/
ENV/
env.bak/
venv.bak/
.virtualenv/
.pyenv/
.python-version

# ─── Dependency lock artefacts ─────────────────────────────────────────────────
pip-selfcheck.json

# ─── Testing & coverage ────────────────────────────────────────────────────────
.coverage
.coverage.*
coverage.xml
coverage/
htmlcov/
.tox/
.nox/
.pytest_cache/
pytest.ini.local
nosetests.xml
test-results/
test-output/
*.test.db

# ─── Type checking ─────────────────────────────────────────────────────────────
.mypy_cache/
.dmypy.json
dmypy.json
.pytype/
.pyre/

# ─── Linting / SAST artefacts ─────────────────────────────────────────────────
.bandit
bandit-report.json
bandit-report.txt
semgrep-results.json
pylint-report.txt
flake8-report.txt

# ─── Security & audit artefacts ───────────────────────────────────────────────
pip-audit-report.json
pip-audit-report.txt
.safety-policy.yml

# ─── Configuration with secrets (never commit live config) ────────────────────
config.yaml
config.yml
config.local.yaml
config.local.yml
*.secret
*.secrets
secrets/
.env
.env.*
!.env.example
!.env.template

# ─── Bacula integration / staging data ────────────────────────────────────────
/opt/github-backup/
/var/lib/github-backup/
staging/
staging-*/
bacula-restore/

# ─── System paths referenced in config ────────────────────────────────────────
/etc/github-backup/

# ─── Git LFS objects (managed by LFS, not plain git) ──────────────────────────
*.lfs
lfs-objects/
lfs-tmp/

# ─── GitHub API response caches ───────────────────────────────────────────────
.cache/
cache/
*.cache
api-cache/

# ─── Logs & PID files ─────────────────────────────────────────────────────────
*.log
*.log.*
*.pid
logs/
run/
tmp/
temp/

# ─── Documentation builds ─────────────────────────────────────────────────────
docs/_build/
docs/build/
site/
*.pdf
!docs/*.pdf

# ─── Jupyter notebooks (checkpoints) ──────────────────────────────────────────
.ipynb_checkpoints/
*.ipynb

# ─── macOS ────────────────────────────────────────────────────────────────────
.DS_Store
.AppleDouble
.LSOverride
._*
.Spotlight-V100
.Trashes
.fseventsd

# ─── Windows ──────────────────────────────────────────────────────────────────
Thumbs.db
ehthumbs.db
Desktop.ini
$RECYCLE.BIN/
*.lnk

# ─── Linux ────────────────────────────────────────────────────────────────────
*~
.nfs*

# ─── Editors ──────────────────────────────────────────────────────────────────
.idea/
*.iml
.vscode/
*.code-workspace
*.swp
*.swo
*~
\#*\#
.#*
.project
.classpath
.settings/
*.sublime-project
*.sublime-workspace

# ─── Backup & patch files ─────────────────────────────────────────────────────
*.orig
*.bak
*.rej
*.patch

# ─── SQLite databases (state store) ───────────────────────────────────────────
*.db
*.sqlite
*.sqlite3
!tests/fixtures/*.db

# ─── Profiling ────────────────────────────────────────────────────────────────
*.prof
*.lprof
profile_output/

# ─── Docker / container artefacts ─────────────────────────────────────────────
.dockerenv
docker-compose.override.yml
