# Test + lint tooling — NEVER in the prod image. Installed only by backend/Dockerfile.test (the # throwaway test image), which the prod build (root Dockerfile) never references. Pinned so the # suite is reproducible: pytest for the pure-logic tests, and ruff at the SAME version the gate's # backend lint lane currently runs on the host (see the run_lint note in siftlode.sh). httpx is # already an app dependency (requirements.txt), so its TestClient needs nothing extra here. pytest==8.4.2 ruff==0.15.21