Todos los artículos

Resumen de FourA: del 7 al 14 de agosto de 2026

Auto toma la sesión que entrega la página de inicio de un sitio, y luego abre la página profunda que querías. Browser resuelve las casillas de verificación de Cloudflare en requests concurrentes.

Puntos destacados

Muchos sitios muestran su página principal a cualquiera y bloquean todo un clic más adentro. Ahora Auto entra por la puerta principal: toma la sesión que otorga esa página de entrada y luego solicita la página que querías mientras la lleva consigo. Browser tuvo el trabajo más pesado esta semana. Supera el desafío de casilla de verificación de Cloudflare cuando varias solicitudes llegan a la misma página a la vez, y cuando una página se mantiene cerrada informa de lo que vio en lugar de una palabra genérica.

Novedades

Auto abre páginas que se esconden tras una sesión

Un listado de eBay rechaza una solicitud en frío en todas las rutas que tenemos. La misma URL se abre cuando la solicitud lleva las cookies que la propia página de entrada de eBay entrega a cualquier visitante. Sin inicio de sesión, sin cuenta prestada, nada que no pudieras hacer a mano en una pestaña.

Ahora Auto lo hace por ti. Cuando una salida llega al origen y sigue siendo rechazada para la página profunda, Auto obtiene la raíz del sitio a través de esa misma salida, guarda cualquier cookie que regrese y vuelve a preguntar. La respuesta te dice que ocurrió: el escalón ganador dice warmup.

Pero el coste es la parte interesante. Esa sesión regresa portable, así que las cookies no están soldadas a la salida que las ganó. Las lecturas de seguimiento se repiten a través de /api/proxy y aterrizan en /api/single a 2 créditos. Es la misma cadena escalar-y-luego-repetir de la que escribimos para la autorización de Cloudflare, con las propias cookies de sesión del proveedor sustituyendo a cf_clearance.

Limitado a propósito: dos intentos por solicitud, en diferentes salidas, solo después de que la URL profunda ya haya fallado y solo cuando la salida haya alcanzado el origen en primer lugar. De esta forma, un sitio que simplemente nos bloquea paga dos sub-llamadas adicionales una vez, no un bucle. Más detalles sobre cómo la escalera elige sus escalones en el informe de Auto.

Browser supera los desafíos de casilla de verificación cuando las solicitudes se solapan

Browser ahora resuelve el widget de casilla de verificación de Cloudflare en solicitudes concurrentes a la misma página. Tres a la vez en un sitio de noticias detrás de Turnstile: 5.2s, 5.8s, 9.1s.

Acompañan dos cambios más pequeños. Una pulsación solo cuenta una vez que el widget se ha ido realmente, porque Cloudflare vuelve a emitir su desafío con más frecuencia de lo que esperarías (la primera pulsación a menudo no es el final de la conversación). Y una página que se limpia informa defenseSolved: true en la llamada que la limpió, que es la misma llamada facturada por la solución.

Una página bloqueada te dice lo que vio el resolutor

"Timeout" apunta a latencia. La mayoría de las veces la latencia no es el problema y la respuesta está en otra salida.

Cuando Cloudflare rechaza una solución, vuelve a emitir el desafío y coloca su propio marcador de reintento en las cookies. Browser lee ese marcador. En lugar de esperar a que termine el tiempo, responde en unos 17 segundos, nombrando al proveedor, las pulsaciones que hizo y si se concedió la autorización:

Timeout after 12s: the cloudflare challenge did not complete from this exit
(2 checkbox presses, clearance granted, challenge re-issued by the site)

Una de esas líneas te indica que envíes la request de otra manera. La otra no te dice nada.

Los errores de la capa de la API también se leen de forma más directa. Una request que supera el tiempo de espera vuelve como timeout, un servicio que no podemos alcanzar vuelve como no disponible, y ninguno se describe como un problema de proxy cuando la request no llevaba ningún proxy. timeout_ms en una llamada del Browser se respeta hasta los 120 segundos completos que acepta la API, de modo que un objetivo lento obtiene el presupuesto que estableciste y lees el propio veredicto del motor en lugar del de la pasarela. Los parámetros se enumeran en la referencia de la API.

Detalles de facturación y corrección de una factura en su mes de emisión

Las facturas búlgaras imprimen un representante de la empresa (MOL) en el cuadro del destinatario. Nada en el sistema lo recopilaba, por lo que esa línea siempre salía vacía. Los detalles de facturación ahora tienen el campo.

La tabla de Facturas también ofrece Actualizar detalles en una factura que todavía está dentro de su mes de emisión y cuyos detalles congelados difieren de tu perfil de facturación actual. El cuadro de diálogo nombra cada campo que cambia y a qué cambia, dice claramente que el número, las fechas y los montos permanecen donde están, y confirmarlo es tu consentimiento, registrado en nuestro lado. Una factura en la ventana sin nada que cambiar dice "Editable hasta" y su fecha, por lo que la ventana es algo que puedes ver en lugar de algo de lo que te enteras más tarde.

Bajo el capó

Cada script que ejecuta el Dashboard se sirve desde nuestro propio origen, y al iniciar sesión solo se te devuelve a una ruta en este sitio.

Los despliegues del servicio de renderizado se realizan de un servidor a la vez, y cada servidor tiene que servir una página real antes de que se toque el siguiente.

En el portal de estado, el endpoint de problemas sirve los elementos abiertos y resueltos sobre su API pública, coincidiendo con lo que enumera la página.

Un rechazo que se nombra a sí mismo es una llamada. Una espera que termina en "Timeout" es una suposición sobre qué probar a continuación, pagada al mismo precio. Los errores son una superficie del producto, y esta semana comenzamos a tratarlos como tal.