Shallow clone (--depth 1) only gets default branch HEAD. PR SHA
checkout fails silently (|| true), so all jobs run against wrong
commit. Now fetches PR SHA explicitly before checkout.
Closes#45
uv.lock was ignored but required by Dockerfile.backend (uv sync --frozen).
CI docker-build fails without it. Also remove from .gitignore - lock
files should be version-controlled for reproducible builds.
Closes#45
The docker-build job checked for root-level Dockerfile, but project
Dockerfiles live in docker/Dockerfile.backend, frontend/Dockerfile,
and android/Dockerfile. CI always skipped. Now builds all three.
Closes#45
- Fix vite.config.ts proxy target to localhost:8010 (matches docker-compose)
- Remove unused asyncio import from main.py and discovery.py (ruff F401)
- Add node_modules to bandit exclude in CI workflow
Closes#13