vibelet 1.2.220 → 1.2.222

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -119,10 +119,23 @@ The dual publish script builds once, then publishes the same CLI bundle to both
119
119
  | `VIBE_PORT` | `9876` | Daemon listen port |
120
120
  | `VIBE_IDLE_TIMEOUT_MS` | `1800000` (30 min) | Idle timeout before a driver is released (0 = disabled) |
121
121
  | `VIBE_TURN_STALL_TIMEOUT_MS` | `300000` (5 min) | Soft inactivity threshold for suspecting an in-flight turn has stalled (0 = disabled) |
122
- | `VIBE_TURN_STALL_HARD_TIMEOUT_MS` | `900000` (15 min) | Hard inactivity threshold for force-stopping a stalled turn after warning (0 = warn only) |
122
+ | `VIBE_TURN_STALL_HARD_TIMEOUT_MS` | `900000` (15 min) | Stop threshold when both turn activity and verified execution-client presence are absent (0 = warn only; confirmed process death can still stop a turn) |
123
123
  | `VIBE_TEXT_DELTA_BATCH_MS` | `24` | Maximum delay for combining streaming text updates before WebSocket broadcast (0 = disabled) |
124
124
  | `VIBE_AUDIT_MAX_BYTES` | `8388608` (8 MB) | Max audit.jsonl size before trimming |
125
125
  | `VIBE_DAEMON_LOG_MAX_BYTES` | `16777216` (16 MB) | Max daemon log file size before trimming |
126
126
  | `VIBE_STORAGE_HOUSEKEEPING_INTERVAL_MS` | `300000` (5 min) | Log trimming check interval |
127
127
  | `CLAUDE_PATH` | auto-detect | Path to Claude binary |
128
128
  | `CODEX_PATH` | auto-detect | Path to Codex binary |
129
+
130
+ Execution-driver presence is checked locally every 2 seconds during a turn and
131
+ every 15 seconds while idle. These checks do not send prompts or consume model
132
+ tokens, and do not update the last actual activity time. A silent turn with
133
+ verified process presence produces a warning after the soft threshold but is
134
+ not stopped or subjected to tool-process recovery merely for silence. This
135
+ covers long commands, `sleep`, and polling without requiring a scheduling tool.
136
+ Presence means the execution process/connection is alive, not that its model or
137
+ tools are making progress; a live deadlock still needs explicit cancellation or
138
+ the tool's own timeout. If presence can no longer be verified, the hard timeout
139
+ also checks time since the last verified presence; a single missed check after a
140
+ long wait does not immediately terminate the turn. The existing idle-driver
141
+ release policy is independent and still applies after the turn finishes.