Responde 200 mientras el proceso atiende peticiones; no comprueba dependencias. La usan el HEALTHCHECK de la imagen y el compose (con GET: HEAD es opt-in en Elysia 2).
Responde 200 mientras el proceso atiende peticiones; no comprueba dependencias. La usan el HEALTHCHECK de la imagen y el compose (con GET: HEAD es opt-in en Elysia 2).
application/json
curl -X GET "https://example.com/health"{ "service": "playback-svc", "status": "ok", "timestamp": 0, "uptime": 0, "version": "string"}playback-svc
Playback de styx: resuelve un PlaybackIntent en un PlaybackPlan composicional y explicable y abre la entrega en el daemon; decide además quién sube ficheros (ingesta con SCT de scope ingest). Los bytes de vídeo nunca pasan por aquí. ## Errores Todo error es un Problem Details (RFC 9457) servido como `application/problem+json`, con `type`, `title`, `status` y un `code` estable. Los errores de dominio añaden `retryable` y `category` (`transient`, `permanent` o `recoverable`). Los de framework son `400 parse` (JSON roto), `404 not-found` (ruta inexistente) y `422 validation` (con `on`; `property` y `detail` sólo fuera de producción). Las denegaciones del Bearer son `401 unauthenticated` o `reauth-required`, `403 forbidden` y `429 rate-limited` (con `Retry-After`). Ningún problem repite el valor recibido y un recurso de otro actor responde 404, sin oráculo.
Abrir una sesión de ingesta (SCT ingest + endpoint del daemon) POST
Abre una sesión de ingesta para un fichero de sizeBytes y devuelve el endpoint de conduit en el daemon y la SCT de scope ingest. 429 si el actor ya tiene abiertas todas las permitidas; 413 si el fichero pasa del tope del nodo. Los bytes van directos al daemon, nunca por aquí. Acceso: Bearer de identity con policy `resource:ingest-session:create`.