[Bug]: fw doctor Watchtower smoke test probes localhost, so all endpoints fail when Watchtower is bound to FW_HOST
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 76/100
Línea de trabajo
Lee bin/fw alrededor de las líneas 3649 y 3672, y luego web/smoke_test.py alrededor de las líneas 116 y 184-187. Sigue cómo fw doctor resuelve _doctor_wt_url y pasa los argumentos a la prueba de humo; el trabajo estará hecho cuando la prueba de humo compruebe esa URL verificada y tenga éxito cuando Watchtower esté enlazado a un valor de FW_HOST que no sea de loopback. Añade o ejecuta pruebas para el argumento de URL base de la prueba de humo y la llamada a fw doctor.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Bug Description
fw doctor first finds Watchtower at its real address: bin/fw:3649 resolves _watchtower_url (identity-verified) and checks ${_doctor_wt_url}/health. It then runs the smoke test with the port only:
bin/fw:3672:python3 "$FRAMEWORK_ROOT/web/smoke_test.py" --port "$_doctor_wt_port" --jsonweb/smoke_test.py:116:base = f"http://localhost:{port}"web/smoke_test.py:184-187: the only arguments are--port,--test-clientand--json; there is no way to pass a host.
When Watchtower is started with FW_HOST=<a non-loopback address> (as documented, to avoid listening on 0.0.0.0), it does not listen on localhost, so every probe is refused while the health check just passed.
Steps to Reproduce
FW_HOST=<a LAN or VPN address of the host> fw watchtower start --port 3010curl -s -o /dev/null -w '%{http_code}' http://<that address>:3010/returns 200.fw doctorprintsWARN Watchtower smoke: 53/53 endpoints failed, each with<urlopen error [Errno 111] Connection refused>.python3 web/smoke_test.py --port 3010 --jsongives the same 53 failures.
Expected Behavior
The smoke test probes the same base URL that fw doctor has just verified (for example a --base-url argument fed with $_doctor_wt_url, defaulting to localhost when absent).
Actual Behavior
WARN Watchtower smoke: 53/53 endpoints failed on every fw doctor run, while all pages answer 200 at the real address. A permanent false warning hides a real smoke failure.
fw doctor output
AI Agent
Claude Code
Operating System
Linux
Additional Context
1.8.11 (e42aa41bf), vendored consumer, Linux (Ubuntu 20.04, systemd 245), Claude Code. Watchtower started with FW_HOST set to a VPN address, as the operator's rule requires.
- Lenguaje dominante
- Shell
- Estrellas
- 16
- Forks
- 6
- Merge medio
- 6 h 24 min
- PR fusionados (30 d)
- 5
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de DimitriGeelen/agentic-engineering-framework
-
area:doctor bug severity:low status:accepted triaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
DimitriGeelen/agentic-engineering-framework#100 · 3 comentarios ·
-
area:context bug severity:low status:accepted triaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
DimitriGeelen/agentic-engineering-framework#96 · 3 comentarios ·
-
area:cli bug severity:medium status:accepted triaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
DimitriGeelen/agentic-engineering-framework#95 · 3 comentarios ·
-
area:watchtower bug severity:low status:released triaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
DimitriGeelen/agentic-engineering-framework#94 · 4 comentarios ·
-
area:watchtower enhancement severity:low status:released triaged
Dificultad 2/5 Menos de una hora Aptitud para principiantes 75/100
DimitriGeelen/agentic-engineering-framework#91 · 5 comentarios ·
Todos los issues de DimitriGeelen/agentic-engineering-framework
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
phusion/passenger-docker#480 ·
-
`repository` input doesn't workAbiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
source:reader type:enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
stephrobert/blog-roadmap#95 ·
-
Gemini: respect PLANNING_DISABLED=1 in lifecycle context hooksPosiblemente ocupada @AmariAugustin la tomó hoy. Abiertobug good first issue help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 87/100
OthmanAdi/planning-with-files#329 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Agents panel: Codex token stats always empty because Codex now writes `*.jsonl.zst` sessionsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 2 días