mirror of
https://github.com/OpenRouterTeam/spawn.git
synced 2026-05-05 23:50:48 +00:00
Replace the broken keep-alive ping loop with a fundamentally better approach: the trigger server now streams the script's stdout/stderr back as the HTTP response body in chunks. The GH Action holds the curl connection open for the entire cycle duration (~90 min timeout). This works because Sprite keeps VMs alive while "actively servicing HTTP requests." A single long-lived streaming response satisfies this naturally — no synthetic pings needed. Key changes: trigger-server.ts: - /trigger now returns a streaming text/plain Response - stdout/stderr piped through ReadableStream with chunked output - 30s heartbeat lines injected during silent periods - Client disconnect handled gracefully (process keeps running) - X-Accel-Buffering: no header to prevent proxy buffering discovery.yml / refactor.yml: - curl -sSN --fail-with-body streams output in real-time - timeout-minutes: 90 to hold the connection for full cycles - Error responses (429/409/401) still print body and exit cleanly discovery.sh / refactor.sh: - Removed all keep-alive logic (start_keepalive/stop_keepalive) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| ISSUE_TEMPLATE | ||
| workflows | ||