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

# Tests / coverage
.pytest_cache/
.coverage
htmlcov/

# Scratch for .github/scripts/coverage_gate.py — repo-local and per-checkout
# rather than a fixed name in /tmp, because the rcfile it holds is executed
# (#877). Name pinned by tests/test_coverage_gate_workdir_877.py.
.coverage-gate/

# setuptools build output. Regenerated by the venv-install test (#442), which
# runs `pip install .` against the repo root — so a plain `pytest` dirties the
# tree unless this is ignored (#489).
build/
dist/

# Editors
.vscode/
.idea/
*.swp

# OS
.DS_Store
supertool
.claude/worktrees/
.claude/jit-context/.discovery/
.claude/remember/

# The harness's per-machine settings. The tracked `.claude/settings.json` next
# to it carries only the raw-command guard registration, which every clone
# should inherit; everything the harness maintains for one disk -- the
# `enabledPlugins` roster, MCP server toggles -- belongs here instead. Ignored
# by name because the maintainer's disk ignored it only through
# `~/.config/git/ignore`, a file no other clone has, so everywhere else it sat
# untracked and one `git add -A` from being committed (#1747).
.claude/settings.local.json

.max/
.max-ci.log
