mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 10:59:59 +00:00
Zammad#2 of run 33923190220 hung three times for exactly 300 seconds and then raised AI::Provider::ResponseError. The rescue artifacts narrowed it only so far: ollama logged no generation during any of the three attempts, litellm had been up since 08:28:46 with zero restarts, and the deploy's own provider ping had passed from this very container minutes earlier at 10.84s. The path worked and then stopped, and nothing in the suite asked again at test time, so the evidence ends at 'somewhere between two swarm nodes'. The probe asks from the position that failed. It runs through container exec in the rails container rather than in a fresh container on the same overlay, because an attachment a new container gets is not evidence that a long-lived one still has it, and that distinction is exactly what the artifacts could not make. It asks the gateway for its model list, which needs no credential, so no token reaches the log and any HTTP status still proves the socket carried a request and an answer. REFUSED separates a dead listener from TIMEOUT's black hole, and both separate either from a gateway that answers while the consumer mishandles it. Executed: all three verdicts reproduced against a live listener, a dead port and a socket that accepts and never replies; the budget is honoured at 10.1s wall for a stated 10s after splitting it across the connect and read phases, which each took the full value before; ruby and net/http are present in ghcr.io/zammad/zammad:7.1.2. This does not make Zammad#2 green. It observes at test time, not during the assistant request, so a path that breaks after the probe still passes it. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
6 lines
380 B
Bash
6 lines
380 B
Bash
{{ lookup('template', lookup('path_absolute', 'roles/test-e2e-cli/templates/mcp/test.env.j2')) }}
|
|
ZAMMAD_AI_GATEWAY_URL={{ ZAMMAD_LITELLM_BASE_URL if ZAMMAD_LITELLM_ENABLED | bool else '' }}
|
|
ZAMMAD_AI_PROBE_CONTAINER={{ ZAMMAD_RAILS_CONTAINER_ADDRESS }}
|
|
ZAMMAD_AI_PROBE_ENABLED={{ ZAMMAD_LITELLM_ENABLED | bool | lower }}
|
|
ZAMMAD_AI_PROBE_TIMEOUT={{ lookup('timeout', 30) | int }}
|