opencode-browser-tool-insta.../docs/REGISTRO_SITUACIONES.md

16 KiB

Registro de situaciones detectadas

Instrucciones para el agente

Cuando el usuario pida documentar un error, incidencia o comportamiento inesperado en pruebas con browser-tool, debes:

  1. Crear una nueva entrada usando la plantilla de este archivo.
  2. Escribir informacion concreta y verificable, sin suposiciones vagas.
  3. Incluir siempre evidencia trazable (artifact, log, salida de tool o reporte).
  4. Indicar estado actual (pendiente, en analisis, resuelto, descartado).
  5. Si aplicaste una correccion, anotar que se cambio y como se valido.
  6. No borrar entradas anteriores; agregar nuevas y, si aplica, actualizar el estado de la entrada ya existente.
  7. Usar fecha y hora local en formato YYYY-MM-DD HH:mm.

Objetivo: mantener un historial operativo claro para depurar, priorizar y cerrar hallazgos durante desarrollo y pruebas.


Plantilla de entrada

Entrada (YYYY-MM-DD HH:mm)

  • Contexto:
  • Flujo probado:
  • Situacion observada:
  • Resultado esperado:
  • Resultado real:
  • Evidencia (artifact/log/report):
  • Hipotesis de causa:
  • Accion aplicada:
  • Validacion posterior:
  • Estado: pendiente | en analisis | resuelto | descartado
  • Notas:

Entradas

Entrada (2026-04-23 00:00)

  • Contexto: Inicializacion del registro.
  • Flujo probado: N/A.
  • Situacion observada: Se crea el archivo para consolidar hallazgos futuros.
  • Resultado esperado: Disponer de un formato unico para registrar incidencias.
  • Resultado real: Archivo creado correctamente.
  • Evidencia (artifact/log/report): opencode-browser-tool/docs/REGISTRO_SITUACIONES.md
  • Hipotesis de causa: N/A.
  • Accion aplicada: Creacion de plantilla e instrucciones de uso.
  • Validacion posterior: Pendiente de primeras entradas reales.
  • Estado: resuelto
  • Notas: Punto de arranque para seguimiento de situaciones durante pruebas.

Entrada (2026-04-23 19:42)

  • Contexto: Prueba funcional de buscador externo para validar paginacion y localizacion de dominio en resultados.
  • Flujo probado: Abrir Google, buscar barranquismo granada, navegar resultados y avanzar con Siguiente hasta encontrar barranquismogranada.com.
  • Situacion observada: La sesion fue redirigida repetidamente a https://www.google.com/sorry/index (bloqueo anti-bot), impidiendo una paginacion normal y fiable.
  • Resultado esperado: Avanzar por paginas de resultados y devolver la posicion real del dominio objetivo.
  • Resultado real: NO_ENCONTRADO max_paginas=8, condicionado por bloqueo anti-bot antes de completar el flujo de paginacion real.
  • Evidencia (artifact/log/report): /tmp/opencode_google_paginacion.jsonl (tool outputs con currentUrl en /sorry/index y timeout en espera de URL de resultados).
  • Hipotesis de causa: Deteccion de automatizacion por Google para esta sesion/IP y bloqueo por challenge.
  • Accion aplicada: Reintento en modo visible y ajuste de flujo; se mantuvo bloqueo. Ademas se implemento en la tool captura automatica en error (autoSnapshot) y tool de observacion intermedia (browser_observe) para no cortar sin evidencia.
  • Validacion posterior: Validado en fixture local que ante error se adjunta autoSnapshot + observation; validado browser_observe con screenshot de mitad de flujo.
  • Estado: en analisis
  • Notas: Caso util para definir politica de handoff humano/CAPTCHA y estrategia de pruebas en buscadores con anti-bot.

Entrada (2026-04-23 21:15)

  • Contexto: Reintento de la misma prueba en Google con flujo mejorado (consentimiento + observacion intermedia + captura automatica en error).
  • Flujo probado: Buscar barranquismo granada, avanzar por resultados y localizar barranquismogranada.com.
  • Situacion observada: Se gestiono consentimiento (Rechazar todo), pero tras enviar busqueda Google redirigio a sorry/index (verificacion humana).
  • Resultado esperado: Continuar paginacion y devolver posicion real del dominio.
  • Resultado real: BLOQUEADO_HUMANO.
  • Evidencia (artifact/log/report):
    • screenshot: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-23T21-14-38-965Z-error-browser_wait.png
    • log de ejecucion: /tmp/opencode_google_retest.jsonl
  • Hipotesis de causa: Mecanismo anti-bot de Google (challenge humano) en esta sesion/IP.
  • Accion aplicada: Rechazo de cookies + reintento visible + observacion automatica.
  • Validacion posterior: Pendiente de handoff humano para superar challenge y continuar la misma prueba.
  • Estado: en analisis
  • Notas: El nuevo mecanismo de autoSnapshot y browser_observe funciono correctamente y aporta evidencia util en mitad del flujo.

Entrada (2026-04-23 21:23)

  • Contexto: Reintento forzado de la prueba "si o si" con clic explicito de verificacion humana.
  • Flujo probado: Google -> consentimiento -> busqueda -> detectar sorry/index -> browser_observe -> browser_handle_human_check -> reintento de salida a resultados.
  • Situacion observada: La herramienta intento clic en controles de human-check, incluido intento de checkbox reCAPTCHA en iframe, pero no encontro un control clicable en esta sesion.
  • Resultado esperado: Resolver challenge humano y continuar paginacion.
  • Resultado real: BLOQUEADO_HUMANO.
  • Evidencia (artifact/log/report):
    • screenshot antes: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-23T21-21-49-250Z-human-check-before.png
    • screenshot despues: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-23T21-22-16-015Z-human-check-after.png
    • autosnapshot en error: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-23T21-22-11-037Z-error-browser_wait.png
    • log: /tmp/opencode_google_humanclick_retest.jsonl
  • Hipotesis de causa: Challenge anti-bot no expone checkbox clicable directo en este contexto/IP/sesion.
  • Accion aplicada: Añadida tool browser_handle_human_check y reintento en modo visible.
  • Validacion posterior: Pendiente de handoff manual humano en la misma sesion para continuar.
  • Estado: en analisis
  • Notas: El sistema ya no corta sin intentar y ahora deja trazabilidad completa del intento de human-check.

Entrada (2026-04-23 21:48)

  • Contexto: Verificacion visual solicitada por usuario para confirmar si la tool realmente intenta el clic de "soy humano".
  • Flujo probado: Ejecucion visible con video, captura antes/despues del human-check e intento extendido en iframes/selectores de checkbox.
  • Situacion observada: Se ejecuto browser_handle_human_check con intentos en multiples selectores y iframes, pero no encontro control clicable (clicked=false).
  • Resultado esperado: Clic efectivo sobre control de verificacion humana y salida de sorry/index.
  • Resultado real: Sin clic efectivo; permanencia en sorry/index.
  • Evidencia (artifact/log/report):
    • before: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-23T21-47-40-040Z-before-human-check-v2.png
    • after: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-23T21-48-04-615Z-after-human-check-v2.png
    • video: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/page@980084a2685562a3f2fba478b8730d98.webm
    • log: /tmp/opencode_google_watch_click_v2.jsonl
  • Hipotesis de causa: El challenge mostrado en esta sesion no expone checkbox clicable automatizable con los selectores actuales.
  • Accion aplicada: Ampliacion de estrategia de clic (iframes + selectors checkbox + fallback por texto).
  • Validacion posterior: Confirmado por salida de tool (clicked=false) y evidencia visual.
  • Estado: en analisis
  • Notas: Para completar esta prueba en este entorno, se requiere handoff manual sobre el challenge actual.

Entrada (2026-04-24 00:18)

  • Contexto: Validacion pedida por usuario para comprobar movimiento visible de cursor y scroll real con contenido suficiente.
  • Flujo probado: Abrir fixture largo local -> verificar cursor overlay -> hover -> scroll de pagina -> scroll de contenedor -> snapshot/video.
  • Situacion observada: Con fixture anterior no habia altura suficiente para probar scroll; se creo fixture nuevo con contenido largo y contenedor interno desplazable.
  • Resultado esperado: Evidenciar que el cursor virtual existe y que el desplazamiento cambia posiciones reales de scroll.
  • Resultado real: Cursor overlay presente (#__browser_tool_cursor) y scroll efectivo (movedY=1200 en pagina, movedY=420 en #scroll-box).
  • Evidencia (artifact/log/report):
    • fixture: opencode-browser-tool/scripts/fixture_scroll_long.html
    • screenshot: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-23T22-18-49-353Z-cursor-scroll-smoke.png
    • video: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/page@b0a5c648845bfba94a0843fd81d664d9.webm
  • Hipotesis de causa: La ausencia de scroll en pruebas previas se debia al contenido insuficiente de la pagina de test, no a fallo de browser_scroll.
  • Accion aplicada: Se anadio fixture largo y se enriquecio salida de browser_scroll con metricas (startY/endY/movedY/maxY).
  • Validacion posterior: Build OK y smoke visual OK.
  • Estado: resuelto
  • Notas: Queda base estable para validar scroll en nuevas regresiones.

Entrada (2026-04-24 00:19)

  • Contexto: Retest de Google tras ampliar estrategia de browser_handle_human_check.
  • Flujo probado: Google -> consentimiento reject -> busqueda barranquismo granada -> sorry/index -> intento human-check -> observacion antes/despues.
  • Situacion observada: La tool reporto clic efectivo en ancla reCAPTCHA dentro de iframe, pero la URL continuo en sorry/index en este intento.
  • Resultado esperado: Superar challenge y volver a /search para continuar paginacion.
  • Resultado real: clicked=true con metodo frame:iframe[title*='reCAPTCHA']:#recaptcha-anchor, sin salida inmediata de sorry/index.
  • Evidencia (artifact/log/report):
    • before: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-23T22-19-11-410Z-google-before-human-v3.png
    • after: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-23T22-19-13-806Z-google-after-human-v3.png
    • video: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/page@02542037c2003982eb2da9641c77f00e.webm
  • Hipotesis de causa: El challenge requiere pasos adicionales (puzzle/espera/validacion servidor) tras el clic inicial, o decision por reputacion IP/sesion.
  • Accion aplicada: Se amplio handleHumanCheck con mas selectores y fallback por coordenadas; se confirmo clic efectivo al menos en una variante.
  • Validacion posterior: Pendiente retest con handoff manual para completar salida a /search y continuar paginacion.
  • Estado: en analisis
  • Notas: Se cierra duda previa de "si la tool clickea o no": ahora hay evidencia de clic efectivo.

Entrada (2026-04-24 00:22)

  • Contexto: Reintento de la prueba objetivo completa (Google + paginacion) usando script de regresion v4.
  • Flujo probado: Google -> reject consent -> buscar barranquismo granada -> human-check -> intentar paginacion hasta 8 paginas.
  • Situacion observada: handleHumanCheck volvio a reportar clic efectivo en reCAPTCHA, pero la sesion se mantuvo en sorry/index, impidiendo entrar en /search y por tanto sin paginacion real.
  • Resultado esperado: Salir a resultados de busqueda y avanzar paginas hasta encontrar barranquismogranada.com.
  • Resultado real: found=false con bloqueo persistente en sorry/index.
  • Evidencia (artifact/log/report):
    • screenshot final: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-23T22-22-24-694Z-google-pagination-v4-final.png
    • video: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/page@4d214e591bd81c6d279e36fa186d5e0b.webm
    • script usado: opencode-browser-tool/scripts/google_pagination_v4.mjs
  • Hipotesis de causa: El challenge requiere validacion adicional no resuelta por el primer clic (puzzle/espera/verificacion servidor) o mantiene bloqueo por reputacion de sesion/IP.
  • Accion aplicada: Ejecutado retest v4 completo tras mejoras de clic en human-check.
  • Validacion posterior: Confirmado que el clic se intenta y ocurre (clicked=true), pero no desbloquea en este entorno.
  • Estado: en analisis
  • Notas: Para completar esta prueba concreta en este entorno sigue siendo necesario handoff manual directo al challenge.

Entrada (2026-04-24 21:10)

  • Contexto: Repeticion de prueba de ranking organico tras habilitar modo de perfil persistente y tras login manual previo del usuario.
  • Flujo probado: Google -> aceptar cookies -> buscar barranquismo granada -> resolver posible sorry/index -> paginar resultados organicos.
  • Situacion observada: Persistio redireccion inicial a sorry/index, pero el flujo continuo a /search y se pudo completar paginacion organica.
  • Resultado esperado: Obtener posicion del dominio objetivo en resultados organicos.
  • Resultado real: Dominio encontrado en pagina 2, posicion 6 organica (rank global 16 en conteo del script).
  • Evidencia (artifact/log/report):
    • before manual: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-24T19-10-05-886Z-google-v7-before-manual.png
    • after manual: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-24T19-10-31-757Z-google-v7-after-manual.png
    • final: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-24T19-10-39-450Z-google-v7-final.png
  • Hipotesis de causa: El historial/perfil ayuda, pero no elimina completamente el challenge anti-bot en este entorno.
  • Accion aplicada: Ejecucion con browserKind=testing + persistentProfile=true + userDataDir=/home/pancho/.chromium-perfil-google.
  • Validacion posterior: Flujo de ranking organico completado y posicion devuelta.
  • Estado: resuelto
  • Notas: Siguiente comparativa recomendada en este mismo proyecto: repetir con browserKind=system + perfil persistente equivalente.

Entrada (2026-04-24 21:28)

  • Contexto: Prueba solicitada en google.es con foco en resultados organicos, clic al resultado encontrado y scroll suave en la web destino.
  • Flujo probado: abrir Google -> buscar barranquismo granada -> localizar primer organico con dominio barranquismogranada.com -> clic -> scroll progresivo hasta abajo.
  • Situacion observada: La sesion entro directamente a resultados (/search) sin bloqueo sorry/index en esta corrida.
  • Resultado esperado: Obtener posicion organica, abrir el resultado y completar scroll hasta el final.
  • Resultado real: Dominio encontrado en pagina 2, posicion 7 organica (rank global 17); clic exitoso y scroll completo (loops=9, lastMoved=0).
  • Evidencia (artifact/log/report):
    • destino bottom: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-24T19-28-57-330Z-google-v8d-destination-bottom.png
    • final: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-24T19-28-58-023Z-google-v8d-final.png
    • script: opencode-browser-tool/scripts/google_es_v8d.mjs
  • Hipotesis de causa: El perfil persistente aporta estabilidad de sesion para este caso concreto, aunque la posicion organica puede variar por momento/indice localizacion.
  • Accion aplicada: Se limitaron esperas extra a maximo 3s en tramo de challenge y se ejecuto scroll por pasos suaves.
  • Validacion posterior: Flujo completo terminado correctamente.
  • Estado: resuelto
  • Notas: Se confirma comportamiento solicitado (clic visible + scroll visible + conteo organico).

Entrada (2026-04-24 22:10)

  • Contexto: Prueba solicitada con nueva query en Google: puertas cortafuegos de madera.
  • Flujo probado: abrir google.es -> buscar query -> paginar resultados -> localizar dominio puertastecnicasbcn.com -> navegar al resultado -> snapshot.
  • Situacion observada: La navegacion inicial en google.es acaba sirviendo resultados en host google.com en esta corrida, manteniendo idioma/contexto ES.
  • Resultado esperado: obtener posicion del dominio y capturar la pagina destino.
  • Resultado real: dominio encontrado en pagina 3, posicion 4 organica (rank global 23), URL https://www.puertastecnicasbcn.com/puertas-cortafuegos/.
  • Evidencia (artifact/log/report):
    • snapshot destino: /home/pancho/Documentos/Empresa/IA/opencode-browser-tool/artifacts/2026-04-24T20-10-49-705Z-google-puertas-destination.png
    • script: opencode-browser-tool/scripts/google_es_puertas_rank.mjs
  • Hipotesis de causa: Variacion normal de SERP por datacenter/sesion/ubicacion.
  • Accion aplicada: paginacion automatica + click al resultado encontrado + snapshot final.
  • Validacion posterior: prueba completada sin bloqueo de challenge en esta corrida.
  • Estado: resuelto
  • Notas: Playwright page.screenshot captura viewport de la pagina, no la barra de URL del navegador.