Execute unified test run
Schedule execution across MODEL / WORKFLOW / AGENT and return immediately.
Requires status=RUNNING (i.e. /prepare was called). Non-blocking: the service validates state, resolves the API key when required, and schedules a conductor (in-proc asyncio task in dev, K8s Job named unified-test-run-{id} in prod). HTTP returns the run row while it is still processing. Callers poll GET /{id}/progress to watch counts advance and to observe the final transition to COMPLETED (or FAILED for setup errors like missing API key or missing workflow).
Per-item failures do not abort the run, items are marked FAILED with an error_message and the run still lands in COMPLETED.