102050 El cuerpo de la petición supera el máximo admitido
CUERPO_DEMASIADO_GRANDE
Qué ha pasado
La petición trae un Content-Length mayor que ATALAYA_MAX_BODY_BYTES (16 MiB por defecto) y se rechaza ANTES de leerla. Los adjuntos van en base64 dentro del JSON: 10 MB de adjuntos son ~13,4 MB de cuerpo, así que el tope deja margen y quien lo pisa está mandando más de lo que la API admite de todos modos.
Cómo se soluciona
Reducir los adjuntos (tope 10 MB en total, 20 ficheros) o partir el envío. Si el consumidor necesita legítimamente más, se sube ATALAYA_MAX_BODY_BYTES en el deploy y max_size en Caddy a la vez: los dos topes tienen que moverse juntos.
Qué hacer mientras tanto
Ninguno del lado de Atalaya. Un cuerpo sin Content-Length (chunked) NO lo corta este código: lo corta Caddy (request_body max_size). Sin Caddy delante, el tope de la API es el único y solo cubre peticiones con longitud declarada.
Ya costó tiempo
Todavía no. Se añade en la auditoría C-4 (3-sep) al ver que ni Caddy ni la API ponían tope y que la API lee el cuerpo entero antes de validar adjuntos, con 256 MB de contenedor.
Dónde se lanza
src/atalaya/api.py (middleware tope_de_cuerpo) → 413
Cómo se lee el código
1- origen: Fortiseg
02- servicio: atalaya
050- error propio del servicio