Skip to content

Comments

chore(kiloclaw): increase pairing exec timeouts and run channels concurrently#422

Merged
pandemicsyn merged 1 commit intomainfrom
florian/chore/increase-pairing-exec-timeout
Feb 20, 2026
Merged

chore(kiloclaw): increase pairing exec timeouts and run channels concurrently#422
pandemicsyn merged 1 commit intomainfrom
florian/chore/increase-pairing-exec-timeout

Conversation

@pandemicsyn
Copy link
Contributor

Summary

  • Increase Fly exec timeouts across the board: default execCommand timeout from 10s → 60s, pairing list from 20s → 60s, and pairing approve from 15s → 60s to avoid premature timeouts on slow Fly machines.
  • Refactor openclaw-pairing-list.js from sequential synchronous execFileSync calls to concurrent async execution via Promise.allSettled, with a per-channel timeout of 45s. This makes the script faster when multiple channels are configured and more resilient to individual channel failures.

…urrently

Increase Fly exec timeouts (default 10→60s, pairing list 20→60s, approve
15→60s) and refactor openclaw-pairing-list.js to run channel queries
concurrently via Promise.allSettled instead of sequential execFileSync,
with a per-channel timeout of 45s.
@pandemicsyn pandemicsyn marked this pull request as ready for review February 20, 2026 19:19
@kiloconnect
Copy link
Contributor

kiloconnect bot commented Feb 20, 2026

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Notes

Clean refactor that improves the pairing list script in two key ways:

  1. Parallel execution — Channels are now queried concurrently via Promise.allSettled instead of sequentially with execFileSync, reducing wall-clock time when multiple channels are configured.
  2. Increased timeouts — Child process timeout raised to 45s, Fly exec timeouts raised to 60s (from 10–20s), with proper layering (child < Fly exec) so the script terminates gracefully before Fly kills it.
  3. Graceful error handling — Per-channel failures no longer abort the entire list; successful channels still return results. Top-level catch provides a safe fallback.

The default timeout change in execCommand (10→60s) has no impact on current callers since both pass explicit values, but future callers will inherit the higher default.

Files Reviewed (3 files)
  • kiloclaw/openclaw-pairing-list.js — sync→async refactor with parallel execution
  • kiloclaw/src/durable-objects/kiloclaw-instance.ts — timeout increases (20→60, 15→60)
  • kiloclaw/src/fly/client.ts — default timeout increase (10→60)

@pandemicsyn pandemicsyn merged commit ea77364 into main Feb 20, 2026
12 checks passed
@pandemicsyn pandemicsyn deleted the florian/chore/increase-pairing-exec-timeout branch February 20, 2026 19:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants