# Python __pycache__/ *.py[cod] *$py.class *.so *.egg-info/ *.egg dist/ build/ .eggs/ # Virtual environments .venv/ venv/ env/ # IDE .vscode/ .idea/ *.swp *.swo *~ # Testing and tooling .pytest_cache/ .ruff_cache/ .codex-pytest-temp/ .release-*/ .tdd-*/ .coverage coverage.xml htmlcov/ # Environment .env # OS .DS_Store Thumbs.db desktop.ini # Generated CAD and benchmark output out/ benchmarks/results/* !benchmarks/results/.gitkeep !benchmarks/results/published !benchmarks/results/published/** benchmarks/.competitors/ *.dxf # The bundled templates are the one committed DXF set: built by # scripts/build_templates.py and pinned reproducible by its --check. !templates/*.dxf *.dwg *.bak # Local editor/agent state .cursor/ # NOTE: uv.lock is deliberately *not* ignored. It used to be — back when the # committed one was stale and unvetted — but CI now installs from it with # `uv sync --locked`, so ignoring it would silently disarm every locked lane. # Regenerate with `uv lock` whenever pyproject.toml dependencies change. # AutoCAD writes its plot-and-publish log into the cwd of the plotting process # (scripts/smoke_settings_com.py plots from the repo root). plot.log