Description
When making multiple tool calls (specifically cron operations) during an active conversation turn, the gateway RPC calls timeout with:
[tools] cron failed: gateway timeout after 10000ms
Gateway target: ws://127.0.0.1:18789
Source: local loopback
Environment
- Version: v2026.1.30-38-ga5ef874e5
- OS: Linux 6.8.0-90-generic (x64)
- Node: v22.22.0
Configuration
{
"maxConcurrent": 16,
"subagentsMaxConcurrent": 32,
"cronMaxConcurrent": 12
}
Reproduction
- Start an active conversation with the agent
- During the conversation, have the agent rapidly create/update/remove cron jobs
- Example: Setting up download monitoring cron jobs while chatting
Observed Behavior
Multiple [tools] cron failed: gateway timeout after 10000ms errors in logs. The timeouts occur in bursts when:
- Creating cron jobs via
cron action=add
- Removing cron jobs via
cron action=remove
- These happen while the main session is actively processing user messages
Expected Behavior
With maxConcurrent: 16 and cronMaxConcurrent: 12, concurrent tool RPC calls should be handled without timeout, even during active conversation turns.
Analysis
Looking at src/gateway/call.ts, each tool RPC call creates a new WebSocket connection to the gateway. The hypothesis is that these RPC calls are being blocked by the main session processing rather than being handled concurrently.
The concurrency settings appear to apply to sessions, not to RPC calls within a sessions tool execution.
Sample Logs
2026-01-31T21:10:40.581Z [tools] cron failed: gateway timeout after 10000ms
2026-01-31T21:10:54.374Z [tools] cron failed: gateway timeout after 10000ms
2026-01-31T21:16:18.886Z [tools] cron failed: gateway timeout after 10000ms
2026-01-31T21:16:30.640Z [tools] cron failed: gateway timeout after 10000ms
2026-01-31T21:17:02.856Z [tools] cron failed: gateway timeout after 30000ms
2026-01-31T21:17:11.221Z [tools] cron failed: gateway timeout after 10000ms
All occurred during a ~7 minute window of active conversation with rapid cron operations.
Description
When making multiple tool calls (specifically
cronoperations) during an active conversation turn, the gateway RPC calls timeout with:Environment
Configuration
{ "maxConcurrent": 16, "subagentsMaxConcurrent": 32, "cronMaxConcurrent": 12 }Reproduction
Observed Behavior
Multiple
[tools] cron failed: gateway timeout after 10000mserrors in logs. The timeouts occur in bursts when:cron action=addcron action=removeExpected Behavior
With
maxConcurrent: 16andcronMaxConcurrent: 12, concurrent tool RPC calls should be handled without timeout, even during active conversation turns.Analysis
Looking at
src/gateway/call.ts, each tool RPC call creates a new WebSocket connection to the gateway. The hypothesis is that these RPC calls are being blocked by the main session processing rather than being handled concurrently.The concurrency settings appear to apply to sessions, not to RPC calls within a sessions tool execution.
Sample Logs
All occurred during a ~7 minute window of active conversation with rapid cron operations.