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