#!/bin/bash set -euo pipefail # Ensure TMPDIR exists on the persistent cache volume (created by the volume-init # container, but guaranteed here for fresh volumes and bare docker-run usage). # Orphaned fragments from prior docker-kill during model downloads are cleared # on startup to prevent cross-job ground-truth leakage (Surya staging files). mkdir -p "${TMPDIR:-/tmp}" find "${TMPDIR:-/tmp}" -mindepth 1 -mtime +1 -delete 2>/dev/null || true # Validate the blla segmentation base model and download it if missing or # incompatible. ketos 7 dropped support for legacy PyTorch ZIP archives — # this ensures the volume always holds a loadable CoreML protobuf model. python3 /app/ensure_blla_model.py exec uvicorn main:app --host 0.0.0.0 --port 8000 --workers 1