@ai-support-agent/cli 0.1.23 → 0.1.24

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.
@@ -7,8 +7,8 @@ export interface BaseWebSocketOptions {
7
7
  logPrefix: string;
8
8
  /** ping 送信間隔 (ms)。省略時は WS_HEARTBEAT_INTERVAL_MS。0 以下で無効化。 */
9
9
  heartbeatIntervalMs?: number;
10
- /** pong 応答待ちのタイムアウト (ms)。省略時は WS_HEARTBEAT_TIMEOUT_MS。 */
11
- heartbeatTimeoutMs?: number;
10
+ /** 連続未応答 pong の許容回数。省略時は WS_PONG_MAX_MISSED。 */
11
+ pongMaxMissed?: number;
12
12
  }
13
13
  /**
14
14
  * WebSocket 接続の共通ライフサイクル管理
@@ -24,7 +24,16 @@ export declare abstract class BaseWebSocketConnection<TMessage> {
24
24
  };
25
25
  protected readonly options: BaseWebSocketOptions;
26
26
  private heartbeatTimer;
27
- private pongTimeoutTimer;
27
+ /**
28
+ * Liveness state for the isAlive / missed-pong heartbeat method.
29
+ * - alive: set true on every 'pong'. Reset to false right after each ping so
30
+ * the next tick can tell whether a pong arrived in between.
31
+ * - missed: consecutive ticks without a pong. Reaching pongMaxMissed terminates.
32
+ * alive starts false (consistent with the API side): the very first ping tick
33
+ * counts as one missed unless a pong has already arrived.
34
+ */
35
+ private heartbeatAlive;
36
+ private heartbeatMissed;
28
37
  constructor(options: BaseWebSocketOptions);
29
38
  connect(): Promise<void>;
30
39
  disconnect(): void;
@@ -44,12 +53,23 @@ export declare abstract class BaseWebSocketConnection<TMessage> {
44
53
  protected doConnect(): Promise<void>;
45
54
  /**
46
55
  * ハートビート (ping/pong) を開始する。
47
- * 一定間隔で ping を送り、次の間隔までに pong が返らなければ接続が
48
- * 死んでいる(half-open / ロードバランサに切られた)とみなして terminate する。
56
+ *
57
+ * ws 標準の「isAlive」単一インターバル方式を使う。各インターバルで:
58
+ * 1. 前回の tick 以降に pong を受信していなければ missed をインクリメントし、
59
+ * missed が pongMaxMissed に達したら接続を死んでいる(half-open /
60
+ * ロードバランサに切られた)とみなして terminate する。
61
+ * 2. pong を受信していれば missed を 0 にリセットする。
62
+ * 3. alive を false に戻し、次の ping を送信する。
63
+ *
64
+ * ただし最初の tick は ping を送るだけで miss 判定をしない(接続直後は相手に
65
+ * pong を返す機会がまだ無いため)。これにより健全な接続でも phantom miss を
66
+ * 数えず、pongMaxMissed 回の許容を接続直後からフルに使える(finding #6)。
67
+ *
49
68
  * terminate は 'close' イベントを発火させ、既存の再接続ロジックを起動する。
69
+ * 1 回の未応答では terminate しないため、イベントループ stall による誤検知を防ぐ。
50
70
  */
51
71
  private startHeartbeat;
52
- /** ハートビートと pong 待ちタイマーを停止する。 */
72
+ /** ハートビートを停止し、生存確認状態をリセットする。 */
53
73
  private stopHeartbeat;
54
74
  /** WebSocket close イベント時の追加処理(サブクラスでオーバーライド可能) */
55
75
  protected onWebSocketClose(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"base-websocket.d.ts","sourceRoot":"","sources":["../src/base-websocket.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,IAAI,CAAA;AAO1B,MAAM,WAAW,oBAAoB;IACnC,mBAAmB,EAAE,MAAM,CAAA;IAC3B,oBAAoB,EAAE,MAAM,CAAA;IAC5B,oCAAoC;IACpC,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,6DAA6D;IAC7D,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,0DAA0D;IAC1D,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAED;;;;;GAKG;AACH,8BAAsB,uBAAuB,CAAC,QAAQ;IACpD,SAAS,CAAC,EAAE,EAAE,SAAS,GAAG,IAAI,CAAO;IACrC,SAAS,CAAC,MAAM,UAAQ;IACxB,SAAS,CAAC,QAAQ,CAAC,oBAAoB;;MAAiB;IACxD,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAA;IAChD,OAAO,CAAC,cAAc,CAA8C;IACpE,OAAO,CAAC,gBAAgB,CAA6C;gBAEzD,OAAO,EAAE,oBAAoB;IAIzC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAMxB,UAAU,IAAI,IAAI;IAUlB,8BAA8B;IAC9B,SAAS,CAAC,QAAQ,CAAC,eAAe,IAAI,SAAS;IAE/C,mDAAmD;IACnD,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,GAAG,IAAI;IAE9E,uBAAuB;IACvB,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,GAAG,IAAI;IAExF,iCAAiC;IACjC,SAAS,CAAC,YAAY,IAAI,IAAI;IAI9B,sCAAsC;IACtC,SAAS,CAAC,cAAc,CAAC,EAAE,EAAE,SAAS,GAAG,IAAI;IAQ7C,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IASzC,qCAAqC;IACrC,SAAS,CAAC,aAAa,IAAI,IAAI;IAI/B,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAgDpC;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAoBtB,gCAAgC;IAChC,OAAO,CAAC,aAAa;IAWrB,kDAAkD;IAClD,SAAS,CAAC,gBAAgB,IAAI,IAAI;YAIpB,WAAW;CAW1B"}
1
+ {"version":3,"file":"base-websocket.d.ts","sourceRoot":"","sources":["../src/base-websocket.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,IAAI,CAAA;AAO1B,MAAM,WAAW,oBAAoB;IACnC,mBAAmB,EAAE,MAAM,CAAA;IAC3B,oBAAoB,EAAE,MAAM,CAAA;IAC5B,oCAAoC;IACpC,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,6DAA6D;IAC7D,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;;;;GAKG;AACH,8BAAsB,uBAAuB,CAAC,QAAQ;IACpD,SAAS,CAAC,EAAE,EAAE,SAAS,GAAG,IAAI,CAAO;IACrC,SAAS,CAAC,MAAM,UAAQ;IACxB,SAAS,CAAC,QAAQ,CAAC,oBAAoB;;MAAiB;IACxD,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAA;IAChD,OAAO,CAAC,cAAc,CAA8C;IACpE;;;;;;;OAOG;IACH,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,eAAe,CAAI;gBAEf,OAAO,EAAE,oBAAoB;IAIzC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAMxB,UAAU,IAAI,IAAI;IAUlB,8BAA8B;IAC9B,SAAS,CAAC,QAAQ,CAAC,eAAe,IAAI,SAAS;IAE/C,mDAAmD;IACnD,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,GAAG,IAAI;IAE9E,uBAAuB;IACvB,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,GAAG,IAAI;IAExF,iCAAiC;IACjC,SAAS,CAAC,YAAY,IAAI,IAAI;IAI9B,sCAAsC;IACtC,SAAS,CAAC,cAAc,CAAC,EAAE,EAAE,SAAS,GAAG,IAAI;IAQ7C,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IASzC,qCAAqC;IACrC,SAAS,CAAC,aAAa,IAAI,IAAI;IAI/B,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA8CpC;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,cAAc;IAuCtB,gCAAgC;IAChC,OAAO,CAAC,aAAa;IASrB,kDAAkD;IAClD,SAAS,CAAC,gBAAgB,IAAI,IAAI;YAIpB,WAAW;CAW1B"}
@@ -21,7 +21,16 @@ class BaseWebSocketConnection {
21
21
  reconnectAttemptsRef = { current: 0 };
22
22
  options;
23
23
  heartbeatTimer = null;
24
- pongTimeoutTimer = null;
24
+ /**
25
+ * Liveness state for the isAlive / missed-pong heartbeat method.
26
+ * - alive: set true on every 'pong'. Reset to false right after each ping so
27
+ * the next tick can tell whether a pong arrived in between.
28
+ * - missed: consecutive ticks without a pong. Reaching pongMaxMissed terminates.
29
+ * alive starts false (consistent with the API side): the very first ping tick
30
+ * counts as one missed unless a pong has already arrived.
31
+ */
32
+ heartbeatAlive = false;
33
+ heartbeatMissed = 0;
25
34
  constructor(options) {
26
35
  this.options = options;
27
36
  }
@@ -74,11 +83,9 @@ class BaseWebSocketConnection {
74
83
  this.onOpen(ws, resolve);
75
84
  });
76
85
  ws.on('pong', () => {
77
- // pong を受信したら生存確認タイマーを解除する(次の ping まで健全)
78
- if (this.pongTimeoutTimer) {
79
- clearTimeout(this.pongTimeoutTimer);
80
- this.pongTimeoutTimer = null;
81
- }
86
+ // A pong proves the peer is alive; the next heartbeat tick will reset
87
+ // the missed counter. Safe to receive even before the first ping.
88
+ this.heartbeatAlive = true;
82
89
  });
83
90
  ws.on('message', (data) => {
84
91
  let msg;
@@ -110,24 +117,52 @@ class BaseWebSocketConnection {
110
117
  }
111
118
  /**
112
119
  * ハートビート (ping/pong) を開始する。
113
- * 一定間隔で ping を送り、次の間隔までに pong が返らなければ接続が
114
- * 死んでいる(half-open / ロードバランサに切られた)とみなして terminate する。
120
+ *
121
+ * ws 標準の「isAlive」単一インターバル方式を使う。各インターバルで:
122
+ * 1. 前回の tick 以降に pong を受信していなければ missed をインクリメントし、
123
+ * missed が pongMaxMissed に達したら接続を死んでいる(half-open /
124
+ * ロードバランサに切られた)とみなして terminate する。
125
+ * 2. pong を受信していれば missed を 0 にリセットする。
126
+ * 3. alive を false に戻し、次の ping を送信する。
127
+ *
128
+ * ただし最初の tick は ping を送るだけで miss 判定をしない(接続直後は相手に
129
+ * pong を返す機会がまだ無いため)。これにより健全な接続でも phantom miss を
130
+ * 数えず、pongMaxMissed 回の許容を接続直後からフルに使える(finding #6)。
131
+ *
115
132
  * terminate は 'close' イベントを発火させ、既存の再接続ロジックを起動する。
133
+ * 1 回の未応答では terminate しないため、イベントループ stall による誤検知を防ぐ。
116
134
  */
117
135
  startHeartbeat(ws) {
118
136
  const intervalMs = this.options.heartbeatIntervalMs ?? constants_1.WS_HEARTBEAT_INTERVAL_MS;
119
137
  if (intervalMs <= 0)
120
138
  return;
121
- const timeoutMs = this.options.heartbeatTimeoutMs ?? constants_1.WS_HEARTBEAT_TIMEOUT_MS;
139
+ const maxMissed = this.options.pongMaxMissed ?? constants_1.WS_PONG_MAX_MISSED;
122
140
  this.stopHeartbeat();
141
+ // Reset liveness state for this connection.
142
+ this.heartbeatAlive = false;
143
+ this.heartbeatMissed = 0;
144
+ // The first tick only sends a ping; miss evaluation starts on the next tick.
145
+ let firstTick = true;
123
146
  this.heartbeatTimer = setInterval(() => {
124
147
  if (ws.readyState !== ws_1.default.OPEN)
125
148
  return;
126
- // 前回の pong 待ちが残っていれば(=応答なし)ここには来ない(terminate 済み)
127
- this.pongTimeoutTimer = setTimeout(() => {
128
- logger_1.logger.debug(`${this.options.logPrefix} Heartbeat timeout, terminating connection`);
129
- ws.terminate();
130
- }, timeoutMs);
149
+ if (firstTick) {
150
+ // No prior ping was sent, so a missing pong here is not a real miss.
151
+ firstTick = false;
152
+ }
153
+ else if (!this.heartbeatAlive) {
154
+ this.heartbeatMissed++;
155
+ if (this.heartbeatMissed >= maxMissed) {
156
+ logger_1.logger.debug(`${this.options.logPrefix} No pong after ${this.heartbeatMissed} consecutive pings, terminating connection`);
157
+ ws.terminate();
158
+ return;
159
+ }
160
+ }
161
+ else {
162
+ this.heartbeatMissed = 0;
163
+ }
164
+ // Expect a fresh pong before the next tick.
165
+ this.heartbeatAlive = false;
131
166
  try {
132
167
  ws.ping();
133
168
  }
@@ -136,16 +171,14 @@ class BaseWebSocketConnection {
136
171
  }
137
172
  }, intervalMs);
138
173
  }
139
- /** ハートビートと pong 待ちタイマーを停止する。 */
174
+ /** ハートビートを停止し、生存確認状態をリセットする。 */
140
175
  stopHeartbeat() {
141
176
  if (this.heartbeatTimer) {
142
177
  clearInterval(this.heartbeatTimer);
143
178
  this.heartbeatTimer = null;
144
179
  }
145
- if (this.pongTimeoutTimer) {
146
- clearTimeout(this.pongTimeoutTimer);
147
- this.pongTimeoutTimer = null;
148
- }
180
+ this.heartbeatAlive = false;
181
+ this.heartbeatMissed = 0;
149
182
  }
150
183
  /** WebSocket close イベント時の追加処理(サブクラスでオーバーライド可能) */
151
184
  onWebSocketClose() {
@@ -1 +1 @@
1
- {"version":3,"file":"base-websocket.js","sourceRoot":"","sources":["../src/base-websocket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-websocket.js","sourceRoot":"","sources":["../src/base-websocket.ts"],"names":[],"mappings":"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"}
@@ -132,7 +132,7 @@ export declare const APPSYNC_MAX_RECONNECT_RETRIES: number;
132
132
  export declare const APPSYNC_RECONNECT_BASE_DELAY_MS = 1000;
133
133
  export declare const WS_RECONNECT_MAX_DELAY_MS = 60000;
134
134
  export declare const WS_HEARTBEAT_INTERVAL_MS = 30000;
135
- export declare const WS_HEARTBEAT_TIMEOUT_MS = 10000;
135
+ export declare const WS_PONG_MAX_MISSED = 3;
136
136
  export declare const REGISTER_RETRY_BASE_DELAY_MS = 1000;
137
137
  export declare const REGISTER_RETRY_MAX_DELAY_MS = 60000;
138
138
  export declare const REGISTER_AUTH_ERROR_DELAY_MS: number;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
package/dist/constants.js CHANGED
@@ -34,7 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.BROWSER_PROXY_REQUEST_TIMEOUT_MS = exports.CHUNK_LOG_LIMIT = exports.LOG_DEBUG_LIMIT = exports.LOG_RESULT_LIMIT = exports.LOG_PAYLOAD_LIMIT = exports.LOG_MESSAGE_LIMIT = exports.CHAT_MAX_ATTEMPTS = exports.CHAT_RETRY_DELAY_MS = exports.DEFAULT_APPSYNC_TIMEOUT_MS = exports.CLAUDE_DETECT_TIMEOUT_MS = exports.CHAT_SIGKILL_DELAY = exports.CHAT_TOOL_EXECUTION_TIMEOUT = exports.CHAT_TIMEOUT = exports.DEFAULT_MAX_TOKENS = exports.ANTHROPIC_API_URL = exports.ANTHROPIC_API_VERSION = exports.DEFAULT_ANTHROPIC_MODEL = exports.NPM_COMMAND = exports.NPM_INSTALL_TIMEOUT = exports.UPDATE_CHECK_INITIAL_DELAY = exports.UPDATE_CHECK_INTERVAL = exports.ALERT_STALE_PROCESSING_MINUTES = exports.ALERT_STALE_RECOVERY_INTERVAL_MS = exports.PROJECT_CODE_ENV_DEFAULT = exports.PROJECT_CODE_CLI_DIRECT = exports.PROJECT_CODE_DEFAULT = exports.DEFAULT_API_URL = exports.DEFAULT_LOGIN_URL = exports.LOCALHOST_ADDRESS = exports.HIDDEN_ENTRIES = exports.MAX_DIR_ENTRIES = exports.MAX_INTERVAL = exports.MIN_INTERVAL = exports.PROCESS_LIST_TIMEOUT = exports.MAX_FILE_WRITE_SIZE = exports.MAX_FILE_READ_SIZE = exports.MAX_CMD_TIMEOUT = exports.CMD_DEFAULT_TIMEOUT = exports.API_REQUEST_TIMEOUT = exports.API_BASE_DELAY_MS = exports.API_MAX_RETRIES = exports.MAX_AUTH_BODY_SIZE = exports.MAX_OUTPUT_SIZE = exports.AGENT_VERSION = exports.AUTH_TIMEOUT = exports.DEFAULT_HEARTBEAT_INTERVAL = exports.DEFAULT_POLL_INTERVAL = exports.CONFIG_FILE = exports.CONFIG_DIR = exports.ENV_VARS = void 0;
37
- exports.DELAYED_RESTART_MS = exports.BUSY_QUERY_TIMEOUT_MS = exports.UPDATE_FORCED_BUSY_WAIT_TIMEOUT_MS = exports.UPDATE_BUSY_POLL_INTERVAL_MS = exports.UPDATE_BUSY_WAIT_TIMEOUT_MS = exports.DOCKER_RESTART_EXIT_CODE = exports.DOCKER_UPDATE_EXIT_CODE = exports.DOCKER_MARKER_REGISTERED_AGENT_ID = exports.DOCKER_MARKER_CUSTOMIZATION_HASH = exports.DOCKER_MARKER_REBUILD_NEEDED = exports.DOCKER_MARKER_BUILT_HASH = exports.REGISTER_AUTH_ERROR_DELAY_MS = exports.REGISTER_RETRY_MAX_DELAY_MS = exports.REGISTER_RETRY_BASE_DELAY_MS = exports.WS_HEARTBEAT_TIMEOUT_MS = exports.WS_HEARTBEAT_INTERVAL_MS = exports.WS_RECONNECT_MAX_DELAY_MS = exports.APPSYNC_RECONNECT_BASE_DELAY_MS = exports.APPSYNC_MAX_RECONNECT_RETRIES = exports.TOKEN_WATCH_INTERVAL_MS = exports.CHILD_PROCESS_STOP_TIMEOUT_MS = exports.CHILD_PROCESS_RESTART_DELAY_MS = exports.CHILD_PROCESS_MAX_RESTARTS = exports.GIT_CHECKOUT_TIMEOUT = exports.GIT_FETCH_TIMEOUT = exports.GIT_CLONE_TIMEOUT = exports.ANTHROPIC_CONTENT_TYPE = exports.SSE_EVENT = exports.SSE_DONE = exports.SSE_PREFIX = exports.INITIAL_CONFIG_SYNC_RETRY_DELAY_MS = exports.INITIAL_CONFIG_SYNC_MAX_RETRIES = exports.CONFIG_SYNC_DEBOUNCE_MS = exports.API_ENDPOINTS = exports.ERR_SYNC_REPOSITORY_REQUIRES_CALLBACK = exports.ERR_UPDATE_REQUIRES_CALLBACK = exports.ERR_REBOOT_REQUIRES_CALLBACK = exports.ERR_CONFIG_SYNC_REQUIRES_CALLBACK = exports.ERR_SETUP_REQUIRES_CALLBACK = exports.ERR_E2E_TEST_REQUIRES_CLIENT = exports.ERR_CHAT_REQUIRES_CLIENT = exports.ERR_CLAUDE_CLI_NOT_FOUND = exports.ERR_AUTH_SERVER_START_FAILED = exports.ERR_ANTHROPIC_API_KEY_NOT_SET = exports.ERR_INVALID_PID = exports.ERR_NO_FILE_PATH_SPECIFIED = exports.ERR_NO_CONTENT_SPECIFIED = exports.ERR_NO_COMMAND_SPECIFIED = exports.ERR_MESSAGE_REQUIRED = exports.ERR_AGENT_ID_REQUIRED = void 0;
37
+ exports.DELAYED_RESTART_MS = exports.BUSY_QUERY_TIMEOUT_MS = exports.UPDATE_FORCED_BUSY_WAIT_TIMEOUT_MS = exports.UPDATE_BUSY_POLL_INTERVAL_MS = exports.UPDATE_BUSY_WAIT_TIMEOUT_MS = exports.DOCKER_RESTART_EXIT_CODE = exports.DOCKER_UPDATE_EXIT_CODE = exports.DOCKER_MARKER_REGISTERED_AGENT_ID = exports.DOCKER_MARKER_CUSTOMIZATION_HASH = exports.DOCKER_MARKER_REBUILD_NEEDED = exports.DOCKER_MARKER_BUILT_HASH = exports.REGISTER_AUTH_ERROR_DELAY_MS = exports.REGISTER_RETRY_MAX_DELAY_MS = exports.REGISTER_RETRY_BASE_DELAY_MS = exports.WS_PONG_MAX_MISSED = exports.WS_HEARTBEAT_INTERVAL_MS = exports.WS_RECONNECT_MAX_DELAY_MS = exports.APPSYNC_RECONNECT_BASE_DELAY_MS = exports.APPSYNC_MAX_RECONNECT_RETRIES = exports.TOKEN_WATCH_INTERVAL_MS = exports.CHILD_PROCESS_STOP_TIMEOUT_MS = exports.CHILD_PROCESS_RESTART_DELAY_MS = exports.CHILD_PROCESS_MAX_RESTARTS = exports.GIT_CHECKOUT_TIMEOUT = exports.GIT_FETCH_TIMEOUT = exports.GIT_CLONE_TIMEOUT = exports.ANTHROPIC_CONTENT_TYPE = exports.SSE_EVENT = exports.SSE_DONE = exports.SSE_PREFIX = exports.INITIAL_CONFIG_SYNC_RETRY_DELAY_MS = exports.INITIAL_CONFIG_SYNC_MAX_RETRIES = exports.CONFIG_SYNC_DEBOUNCE_MS = exports.API_ENDPOINTS = exports.ERR_SYNC_REPOSITORY_REQUIRES_CALLBACK = exports.ERR_UPDATE_REQUIRES_CALLBACK = exports.ERR_REBOOT_REQUIRES_CALLBACK = exports.ERR_CONFIG_SYNC_REQUIRES_CALLBACK = exports.ERR_SETUP_REQUIRES_CALLBACK = exports.ERR_E2E_TEST_REQUIRES_CLIENT = exports.ERR_CHAT_REQUIRES_CLIENT = exports.ERR_CLAUDE_CLI_NOT_FOUND = exports.ERR_AUTH_SERVER_START_FAILED = exports.ERR_ANTHROPIC_API_KEY_NOT_SET = exports.ERR_INVALID_PID = exports.ERR_NO_FILE_PATH_SPECIFIED = exports.ERR_NO_CONTENT_SPECIFIED = exports.ERR_NO_COMMAND_SPECIFIED = exports.ERR_MESSAGE_REQUIRED = exports.ERR_AGENT_ID_REQUIRED = void 0;
38
38
  exports.CLI_FLAG_NO_AUTO_UPDATE = exports.CLI_FLAG_NO_DOCKERFILE_SYNC = exports.CLI_FLAG_NO_DOCKER = exports.CLI_FLAG_VERBOSE = exports.NOTIFICATION_ACTION = void 0;
39
39
  const os = __importStar(require("os"));
40
40
  const path_1 = require("path");
@@ -222,11 +222,17 @@ exports.WS_RECONNECT_MAX_DELAY_MS = 60_000;
222
222
  // Without an application-level ping, an idle WebSocket that is silently dropped by a
223
223
  // load balancer (e.g. ALB idle timeout) never fires a 'close' event on the client, so
224
224
  // the connection becomes a half-open "zombie" and the reconnect logic never runs.
225
- // We send a ping every WS_HEARTBEAT_INTERVAL_MS and terminate the socket if no pong is
226
- // received within WS_HEARTBEAT_TIMEOUT_MS, which fires 'close' and triggers reconnect.
225
+ //
226
+ // Dead-detection uses the ws-standard "isAlive" single-interval method (the same one
227
+ // used on the API gateway side): on each WS_HEARTBEAT_INTERVAL_MS tick, if no pong has
228
+ // been received since the previous tick the missed counter is incremented; once it
229
+ // reaches WS_PONG_MAX_MISSED consecutive misses the socket is terminated (which fires
230
+ // 'close' and triggers reconnect). A single missed pong therefore does NOT terminate,
231
+ // which removes the event-loop-stall false positive of the old per-ping setTimeout timer.
227
232
  // The interval must be well below the ALB idle timeout (3600s in this deployment).
228
233
  exports.WS_HEARTBEAT_INTERVAL_MS = 30_000;
229
- exports.WS_HEARTBEAT_TIMEOUT_MS = 10_000;
234
+ // Number of consecutive missed pongs tolerated before the connection is considered dead.
235
+ exports.WS_PONG_MAX_MISSED = 3;
230
236
  // Registration retry (persistent)
231
237
  // register() failures used to leave the process in a silent zombie state.
232
238
  // Retry forever with exponential backoff + jitter, capped at REGISTER_RETRY_MAX_DELAY_MS.
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAwB;AACxB,+BAAoC;AAEpC,mCAAsC;AAEtC,SAAS,iBAAiB;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAA,oBAAY,EAAuB,IAAA,WAAI,EAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAA;QACrF,OAAO,GAAG,CAAC,OAAO,IAAI,OAAO,CAAA;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAA;IAChB,CAAC;AACH,CAAC;AAED,uCAAuC;AACvC,4EAA4E;AAC5E,4EAA4E;AAC/D,QAAA,QAAQ,GAAG;IACtB,KAAK,EAAE,wBAAwB;IAC/B,OAAO,EAAE,0BAA0B;IACnC,WAAW,EAAE,8BAA8B;IAC3C,YAAY,EAAE,+BAA+B;IAC7C,UAAU,EAAE,6BAA6B;IACzC,SAAS,EAAE,4BAA4B;IACvC,UAAU,EAAE,6BAA6B;IACzC,eAAe,EAAE,kCAAkC;IACnD,uBAAuB,EAAE,yBAAyB;CAC1C,CAAA;AAEG,QAAA,UAAU,GAAG,CAAC,GAAG,EAAE;IAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAQ,CAAC,UAAU,CAAC,CAAA;IAC/C,IAAI,CAAC,MAAM;QAAE,OAAO,mBAAmB,CAAA;IACvC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA;IAC3D,OAAO,IAAA,cAAO,EAAC,QAAQ,CAAC,CAAA;AAC1B,CAAC,CAAC,EAAE,CAAA;AAES,QAAA,WAAW,GAAG,aAAa,CAAA;AAC3B,QAAA,qBAAqB,GAAG,IAAI,CAAA;AAC5B,QAAA,0BAA0B,GAAG,KAAK,CAAA;AAClC,QAAA,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,YAAY;AACzC,QAAA,aAAa,GAAG,iBAAiB,EAAE,CAAA;AACnC,QAAA,eAAe,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAA,CAAC,QAAQ;AAC3C,QAAA,kBAAkB,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,QAAQ;AAEpD,uBAAuB;AACV,QAAA,eAAe,GAAG,CAAC,CAAA;AACnB,QAAA,iBAAiB,GAAG,IAAI,CAAA;AACxB,QAAA,mBAAmB,GAAG,MAAM,CAAA;AAEzC,6BAA6B;AAChB,QAAA,mBAAmB,GAAG,MAAM,CAAA;AAC5B,QAAA,eAAe,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,aAAa;AAC9C,QAAA,kBAAkB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAA,CAAC,QAAQ;AAC9C,QAAA,mBAAmB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAA,CAAC,QAAQ;AAC/C,QAAA,oBAAoB,GAAG,MAAM,CAAA;AAE1C,kBAAkB;AACL,QAAA,YAAY,GAAG,IAAI,CAAA;AACnB,QAAA,YAAY,GAAG,OAAO,CAAA,CAAC,YAAY;AAEhD,0BAA0B;AACb,QAAA,eAAe,GAAG,IAAI,CAAA;AAEnC,+CAA+C;AAClC,QAAA,cAAc,GAAG,CAAC,SAAS,CAAC,CAAA;AAEzC,gFAAgF;AACnE,QAAA,iBAAiB,GAAG,WAAW,CAAA;AAE5C,iCAAiC;AACpB,QAAA,iBAAiB,GAAG,8BAA8B,CAAA;AAE/D,+BAA+B;AAClB,QAAA,eAAe,GAAG,kCAAkC,CAAA;AAEjE,wBAAwB;AACX,QAAA,oBAAoB,GAAG,SAAS,CAAA;AAChC,QAAA,uBAAuB,GAAG,YAAY,CAAA;AACtC,QAAA,wBAAwB,GAAG,aAAa,CAAA;AAErD,6CAA6C;AAC7C,iDAAiD;AACjD,sDAAsD;AACzC,QAAA,gCAAgC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,SAAS;AAC3D,QAAA,8BAA8B,GAAG,EAAE,CAAA,CAAC,6BAA6B;AAE9E,wBAAwB;AACX,QAAA,qBAAqB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,SAAS;AAChD,QAAA,0BAA0B,GAAG,MAAM,CAAA,CAAC,aAAa;AACjD,QAAA,mBAAmB,GAAG,OAAO,CAAA,CAAC,YAAY;AAEvD,4EAA4E;AAC/D,QAAA,WAAW,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAA;AAE3E,gBAAgB;AACH,QAAA,uBAAuB,GAAG,4BAA4B,CAAA;AACtD,QAAA,qBAAqB,GAAG,YAAY,CAAA;AACpC,QAAA,iBAAiB,GAAG,uCAAuC,CAAA;AAC3D,QAAA,kBAAkB,GAAG,IAAI,CAAA;AAEtC,gBAAgB;AACH,QAAA,YAAY,GAAG,OAAO,CAAA;AACtB,QAAA,2BAA2B,GAAG,SAAS,CAAA;AACvC,QAAA,kBAAkB,GAAG,KAAK,CAAA;AAC1B,QAAA,wBAAwB,GAAG,KAAK,CAAA;AAChC,QAAA,0BAA0B,GAAG,OAAO,CAAA;AACpC,QAAA,mBAAmB,GAAG,IAAI,CAAA;AAC1B,QAAA,iBAAiB,GAAG,CAAC,CAAA;AAElC,iBAAiB;AACJ,QAAA,iBAAiB,GAAG,GAAG,CAAA;AACvB,QAAA,iBAAiB,GAAG,GAAG,CAAA;AACvB,QAAA,gBAAgB,GAAG,GAAG,CAAA;AACtB,QAAA,eAAe,GAAG,GAAG,CAAA;AACrB,QAAA,eAAe,GAAG,GAAG,CAAA;AAElC,gBAAgB;AAChB,kDAAkD;AACrC,QAAA,gCAAgC,GAAG,MAAM,CAAA;AAEtD,iBAAiB;AACJ,QAAA,qBAAqB,GAAG,sCAAsC,CAAA;AAC9D,QAAA,oBAAoB,GAAG,qBAAqB,CAAA;AAC5C,QAAA,wBAAwB,GAAG,sBAAsB,CAAA;AACjD,QAAA,wBAAwB,GAAG,sBAAsB,CAAA;AACjD,QAAA,0BAA0B,GAAG,wBAAwB,CAAA;AACrD,QAAA,eAAe,GAAG,yCAAyC,CAAA;AAC3D,QAAA,6BAA6B,GAAG,4EAA4E,CAAA;AAC5G,QAAA,4BAA4B,GAAG,6BAA6B,CAAA;AAC5D,QAAA,wBAAwB,GAAG,0DAA0D,CAAA;AACrF,QAAA,wBAAwB,GAAG,4CAA4C,CAAA;AACvE,QAAA,4BAA4B,GAAG,gDAAgD,CAAA;AAC/E,QAAA,2BAA2B,GAAG,yCAAyC,CAAA;AACvE,QAAA,iCAAiC,GAAG,oDAAoD,CAAA;AACxF,QAAA,4BAA4B,GAAG,2CAA2C,CAAA;AAC1E,QAAA,4BAA4B,GAAG,2CAA2C,CAAA;AAC1E,QAAA,qCAAqC,GAAG,4DAA4D,CAAA;AAEjH,qBAAqB;AACR,QAAA,aAAa,GAAG;IAC3B,QAAQ,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,QAAQ,UAAU,iBAAiB;IACrE,SAAS,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,QAAQ,UAAU,kBAAkB;IACvE,gBAAgB,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,QAAQ,UAAU,yBAAyB;IACrF,OAAO,EAAE,CAAC,UAAkB,EAAE,SAAiB,EAAE,EAAE,CAAC,QAAQ,UAAU,mBAAmB,SAAS,EAAE;IACpG,cAAc,EAAE,CAAC,UAAkB,EAAE,SAAiB,EAAE,EAAE,CAAC,QAAQ,UAAU,mBAAmB,SAAS,SAAS;IAClH,cAAc,EAAE,CAAC,UAAkB,EAAE,SAAiB,EAAE,EAAE,CAAC,QAAQ,UAAU,mBAAmB,SAAS,SAAS;IAClH,OAAO,EAAE,oBAAoB;IAC7B,iBAAiB,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,QAAQ,UAAU,0BAA0B;IACvF,MAAM,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,QAAQ,UAAU,eAAe;IACjE,eAAe,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,QAAQ,UAAU,wBAAwB;IACnF,cAAc,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,QAAQ,UAAU,uBAAuB;IACjF,gBAAgB,EAAE,CAAC,UAAkB,EAAE,YAAoB,EAAE,EAAE,CAAC,QAAQ,UAAU,2BAA2B,YAAY,EAAE;IAC3H,cAAc,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,QAAQ,UAAU,uBAAuB;IACjF,eAAe,EAAE,CAAC,UAAkB,EAAE,MAAc,EAAE,EAAE,CAAC,QAAQ,UAAU,0BAA0B,MAAM,EAAE;IAC7G,mBAAmB,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,QAAQ,UAAU,4BAA4B;IAC3F,gBAAgB,EAAE,CAAC,UAAkB,EAAE,WAAmB,EAAE,EAAE,CAAC,QAAQ,UAAU,aAAa,WAAW,yBAAyB;IAClI,kBAAkB,EAAE,CAAC,UAAkB,EAAE,WAAmB,EAAE,EAAE,CAAC,QAAQ,UAAU,aAAa,WAAW,2BAA2B;IACtI,oBAAoB,EAAE,CAAC,UAAkB,EAAE,YAAoB,EAAE,WAAmB,EAAE,EAAE,CACtF,QAAQ,UAAU,8BAA8B,WAAW,SAAS;IACtE,mBAAmB,EAAE,CAAC,UAAkB,EAAE,YAAoB,EAAE,WAAmB,EAAE,EAAE,CACrF,QAAQ,UAAU,8BAA8B,WAAW,QAAQ;IACrE,oBAAoB,EAAE,CAAC,UAAkB,EAAE,YAAoB,EAAE,WAAmB,EAAE,EAAE,CACtF,QAAQ,UAAU,8BAA8B,WAAW,SAAS;IACtE,SAAS,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,QAAQ,UAAU,mBAAmB;IACxE,WAAW,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,QAAQ,UAAU,qBAAqB;IAC5E,kBAAkB;IAClB,MAAM,EAAE,CAAC,UAAkB,EAAE,WAAmB,EAAE,EAAE,CAClD,QAAQ,UAAU,aAAa,WAAW,SAAS;IACrD,KAAK,EAAE,CAAC,UAAkB,EAAE,WAAmB,EAAE,WAAmB,EAAE,EAAE,CACtE,QAAQ,UAAU,aAAa,WAAW,WAAW,WAAW,EAAE;IACpE,YAAY,EAAE,CAAC,UAAkB,EAAE,WAAmB,EAAE,WAAmB,EAAE,EAAE,CAC7E,QAAQ,UAAU,aAAa,WAAW,WAAW,WAAW,SAAS;IAC3E,kBAAkB,EAAE,CAAC,UAAkB,EAAE,WAAmB,EAAE,WAAmB,EAAE,EAAE,CACnF,QAAQ,UAAU,aAAa,WAAW,WAAW,WAAW,eAAe;IACjF,kBAAkB,EAAE,CAAC,UAAkB,EAAE,WAAmB,EAAE,EAAE,CAC9D,QAAQ,UAAU,aAAa,WAAW,sBAAsB;IAClE,mBAAmB,EAAE,CAAC,UAAkB,EAAE,WAAmB,EAAE,WAAmB,EAAE,EAAE,CACpF,QAAQ,UAAU,aAAa,WAAW,WAAW,WAAW,gBAAgB;IAClF,MAAM,EAAE,CAAC,UAAkB,EAAE,WAAmB,EAAE,EAAE,CAClD,QAAQ,UAAU,aAAa,WAAW,SAAS;CAC7C,CAAA;AAEG,QAAA,uBAAuB,GAAG,IAAI,CAAA;AAC9B,QAAA,+BAA+B,GAAG,CAAC,CAAA;AACnC,QAAA,kCAAkC,GAAG,IAAI,CAAA;AAEtD,0BAA0B;AACb,QAAA,UAAU,GAAG,QAAQ,CAAA;AACrB,QAAA,QAAQ,GAAG,QAAQ,CAAA;AACnB,QAAA,SAAS,GAAG;IACvB,aAAa,EAAE,eAAe;IAC9B,aAAa,EAAE,eAAe;IAC9B,mBAAmB,EAAE,qBAAqB;IAC1C,mBAAmB,EAAE,qBAAqB;CAClC,CAAA;AAEG,QAAA,sBAAsB,GAAG;IACpC,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;CACZ,CAAA;AAEV,iBAAiB;AACJ,QAAA,iBAAiB,GAAG,OAAO,CAAA;AAC3B,QAAA,iBAAiB,GAAG,MAAM,CAAA;AAC1B,QAAA,oBAAoB,GAAG,MAAM,CAAA;AAE1C,2BAA2B;AACd,QAAA,0BAA0B,GAAG,CAAC,CAAA;AAC9B,QAAA,8BAA8B,GAAG,IAAI,CAAA;AACrC,QAAA,6BAA6B,GAAG,KAAK,CAAA;AAElD,gBAAgB;AACH,QAAA,uBAAuB,GAAG,IAAI,CAAA;AAE3C,sBAAsB;AACtB,yFAAyF;AACzF,yEAAyE;AAC5D,QAAA,6BAA6B,GAAG,MAAM,CAAC,iBAAiB,CAAA;AACxD,QAAA,+BAA+B,GAAG,IAAI,CAAA;AACtC,QAAA,yBAAyB,GAAG,MAAM,CAAA;AAE/C,kCAAkC;AAClC,qFAAqF;AACrF,sFAAsF;AACtF,kFAAkF;AAClF,uFAAuF;AACvF,uFAAuF;AACvF,mFAAmF;AACtE,QAAA,wBAAwB,GAAG,MAAM,CAAA;AACjC,QAAA,uBAAuB,GAAG,MAAM,CAAA;AAE7C,kCAAkC;AAClC,0EAA0E;AAC1E,0FAA0F;AAC1F,0FAA0F;AAC1F,yCAAyC;AAC5B,QAAA,4BAA4B,GAAG,KAAK,CAAA;AACpC,QAAA,2BAA2B,GAAG,MAAM,CAAA;AACpC,QAAA,4BAA4B,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;AAEzD,8EAA8E;AAC9E,kFAAkF;AACrE,QAAA,wBAAwB,GAAG,mBAAmB,CAAA;AAC9C,QAAA,4BAA4B,GAAG,uBAAuB,CAAA;AACtD,QAAA,gCAAgC,GAAG,2BAA2B,CAAA;AAC9D,QAAA,iCAAiC,GAAG,4BAA4B,CAAA;AAE7E,sFAAsF;AACtF,wFAAwF;AAC3E,QAAA,uBAAuB,GAAG,EAAE,CAAA;AAEzC,6FAA6F;AAC7F,wFAAwF;AAC3E,QAAA,wBAAwB,GAAG,EAAE,CAAA;AAE1C,2BAA2B;AACd,QAAA,2BAA2B,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,qCAAqC;AACjF,QAAA,4BAA4B,GAAG,KAAK,CAAA,CAAU,uBAAuB;AACrE,QAAA,kCAAkC,GAAG,MAAM,CAAA,CAAG,gCAAgC;AAC9E,QAAA,qBAAqB,GAAG,KAAK,CAAA,CAAkB,+BAA+B;AAE3F,qDAAqD;AACxC,QAAA,kBAAkB,GAAG,KAAK,CAAA;AAEvC,oCAAoC;AACvB,QAAA,mBAAmB,GAAG;IACjC,aAAa,EAAE,eAAe;IAC9B,aAAa,EAAE,eAAe;IAC9B,aAAa,EAAE,eAAe;IAC9B,SAAS,EAAE,WAAW;CACd,CAAA;AAEV,qBAAqB;AACR,QAAA,gBAAgB,GAAG,WAAW,CAAA;AAC9B,QAAA,kBAAkB,GAAG,aAAa,CAAA;AAClC,QAAA,2BAA2B,GAAG,sBAAsB,CAAA;AACpD,QAAA,uBAAuB,GAAG,kBAAkB,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
package/dist/logger.d.ts CHANGED
@@ -28,12 +28,22 @@ export declare function stripCursorCodes(text: string): string;
28
28
  export declare function makeLinePrefixer(prefix: string, write: (s: string) => void): (chunk: string) => void;
29
29
  /** Mask secrets in log messages */
30
30
  export declare function maskSecrets(message: string): string;
31
+ /**
32
+ * Structured context fields attached to a log entry (e.g. tenantCode,
33
+ * projectCode, agentId). String values are masked for secrets; non-string
34
+ * values are passed through unchanged.
35
+ */
36
+ export type LogContext = Record<string, unknown>;
37
+ /** Enable or disable JSON structured output at runtime. */
38
+ export declare function setJsonMode(enabled: boolean): void;
39
+ /** Whether JSON structured output is currently enabled. */
40
+ export declare function isJsonMode(): boolean;
31
41
  export declare const logger: {
32
42
  setVerbose(enabled: boolean): void;
33
- info(message: string): void;
34
- warn(message: string): void;
35
- error(message: string): void;
36
- debug(message: string): void;
37
- success(message: string): void;
43
+ info(message: string, context?: LogContext): void;
44
+ warn(message: string, context?: LogContext): void;
45
+ error(message: string, context?: LogContext): void;
46
+ debug(message: string, context?: LogContext): void;
47
+ success(message: string, context?: LogContext): void;
38
48
  };
39
49
  //# sourceMappingURL=logger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAiCA;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAQ1D;AAED,qDAAqD;AACrD,wBAAgB,kBAAkB,IAAI,IAAI,CAGzC;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAehE;AAkBD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,GACzB,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAYzB;AAiCD,mCAAmC;AACnC,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQnD;AAMD,eAAO,MAAM,MAAM;wBACG,OAAO,GAAG,IAAI;kBAIpB,MAAM,GAAG,IAAI;kBAIb,MAAM,GAAG,IAAI;mBAIZ,MAAM,GAAG,IAAI;mBAIb,MAAM,GAAG,IAAI;qBAMX,MAAM,GAAG,IAAI;CAG/B,CAAA"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAiCA;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAQ1D;AAED,qDAAqD;AACrD,wBAAgB,kBAAkB,IAAI,IAAI,CAGzC;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAehE;AAkBD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,GACzB,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAYzB;AAiCD,mCAAmC;AACnC,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQnD;AAED;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAgBhD,2DAA2D;AAC3D,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAElD;AAED,2DAA2D;AAC3D,wBAAgB,UAAU,IAAI,OAAO,CAEpC;AA2DD,eAAO,MAAM,MAAM;wBACG,OAAO,GAAG,IAAI;kBAIpB,MAAM,YAAY,UAAU,GAAG,IAAI;kBAQnC,MAAM,YAAY,UAAU,GAAG,IAAI;mBAQlC,MAAM,YAAY,UAAU,GAAG,IAAI;mBAQnC,MAAM,YAAY,UAAU,GAAG,IAAI;qBAUjC,MAAM,YAAY,UAAU,GAAG,IAAI;CAOrD,CAAA"}
package/dist/logger.js CHANGED
@@ -7,6 +7,8 @@ exports.prefixLines = prefixLines;
7
7
  exports.stripCursorCodes = stripCursorCodes;
8
8
  exports.makeLinePrefixer = makeLinePrefixer;
9
9
  exports.maskSecrets = maskSecrets;
10
+ exports.setJsonMode = setJsonMode;
11
+ exports.isJsonMode = isJsonMode;
10
12
  const COLORS = {
11
13
  reset: '\x1b[0m',
12
14
  red: '\x1b[31m',
@@ -161,29 +163,113 @@ function maskSecrets(message) {
161
163
  }
162
164
  return masked;
163
165
  }
164
- function formatLog(level, color, message) {
165
- return `${COLORS.gray}[${timestamp()}]${COLORS.reset} ${color}${level}${COLORS.reset} ${maskSecrets(message)}`;
166
+ /**
167
+ * Reserved top-level fields of a JSON log entry. Context keys colliding with
168
+ * these are ignored so callers cannot spoof the level/message/timestamp.
169
+ */
170
+ const RESERVED_LOG_FIELDS = new Set(['level', 'message', 'timestamp']);
171
+ /**
172
+ * Opt-in JSON structured output. Defaults to the human-readable text format.
173
+ * Initialized from the AI_AGENT_LOG_FORMAT env var (`json` enables it) so
174
+ * daemonized/service operation can request JSON without code changes, while
175
+ * interactive use keeps the colored text format.
176
+ */
177
+ let jsonModeEnabled = process.env.AI_AGENT_LOG_FORMAT === 'json';
178
+ /** Enable or disable JSON structured output at runtime. */
179
+ function setJsonMode(enabled) {
180
+ jsonModeEnabled = enabled;
181
+ }
182
+ /** Whether JSON structured output is currently enabled. */
183
+ function isJsonMode() {
184
+ return jsonModeEnabled;
185
+ }
186
+ /**
187
+ * Context keys whose values are considered sensitive and fully redacted
188
+ * regardless of their content (mirrors the key-value SECRET_PATTERNS keys).
189
+ */
190
+ const SECRET_CONTEXT_KEY_RE = /^(?:password|secret|token|api_?key|access_?key|secret_?key|session_?token|authorization)$/i;
191
+ /**
192
+ * Mask secrets in a context object:
193
+ * - values under secret-like keys are fully redacted,
194
+ * - other string values are run through maskSecrets,
195
+ * - non-string values are passed through unchanged.
196
+ */
197
+ function maskContext(context) {
198
+ const masked = {};
199
+ for (const [key, value] of Object.entries(context)) {
200
+ if (SECRET_CONTEXT_KEY_RE.test(key) && typeof value === 'string') {
201
+ masked[key] = '****';
202
+ }
203
+ else {
204
+ masked[key] = typeof value === 'string' ? maskSecrets(value) : value;
205
+ }
206
+ }
207
+ return masked;
208
+ }
209
+ /** Render a context object as a readable ` key=value` suffix for text mode. */
210
+ function formatTextContext(context) {
211
+ if (!context)
212
+ return '';
213
+ const masked = maskContext(context);
214
+ const parts = Object.entries(masked).map(([key, value]) => {
215
+ const str = typeof value === 'string' ? value : JSON.stringify(value);
216
+ return `${key}=${str}`;
217
+ });
218
+ return parts.length > 0 ? ` ${parts.join(' ')}` : '';
219
+ }
220
+ function formatLog(level, color, message, context) {
221
+ return `${COLORS.gray}[${timestamp()}]${COLORS.reset} ${color}${level}${COLORS.reset} ${maskSecrets(message)}${formatTextContext(context)}`;
222
+ }
223
+ /** Build a JSON log line with reserved fields plus masked context fields. */
224
+ function formatJsonLog(level, message, context) {
225
+ const entry = {
226
+ level,
227
+ message: maskSecrets(message),
228
+ timestamp: new Date().toISOString(),
229
+ };
230
+ if (context) {
231
+ for (const [key, value] of Object.entries(maskContext(context))) {
232
+ // Reserved fields cannot be overridden by caller-supplied context.
233
+ if (!RESERVED_LOG_FIELDS.has(key)) {
234
+ entry[key] = value;
235
+ }
236
+ }
237
+ }
238
+ return JSON.stringify(entry);
166
239
  }
167
240
  exports.logger = {
168
241
  setVerbose(enabled) {
169
242
  verboseEnabled = enabled;
170
243
  },
171
- info(message) {
172
- console.log(formatLog('INFO ', COLORS.green, message));
244
+ info(message, context) {
245
+ console.log(jsonModeEnabled
246
+ ? formatJsonLog('info', message, context)
247
+ : formatLog('INFO ', COLORS.green, message, context));
173
248
  },
174
- warn(message) {
175
- console.log(formatLog('WARN ', COLORS.yellow, message));
249
+ warn(message, context) {
250
+ console.log(jsonModeEnabled
251
+ ? formatJsonLog('warn', message, context)
252
+ : formatLog('WARN ', COLORS.yellow, message, context));
176
253
  },
177
- error(message) {
178
- console.error(formatLog('ERROR', COLORS.red, message));
254
+ error(message, context) {
255
+ console.error(jsonModeEnabled
256
+ ? formatJsonLog('error', message, context)
257
+ : formatLog('ERROR', COLORS.red, message, context));
179
258
  },
180
- debug(message) {
259
+ debug(message, context) {
181
260
  if (verboseEnabled) {
182
- console.log(formatLog('DEBUG', COLORS.blue, message));
261
+ console.log(jsonModeEnabled
262
+ ? formatJsonLog('debug', message, context)
263
+ : formatLog('DEBUG', COLORS.blue, message, context));
183
264
  }
184
265
  },
185
- success(message) {
186
- console.log(`${COLORS.green}✓${COLORS.reset} ${message}`);
266
+ success(message, context) {
267
+ if (jsonModeEnabled) {
268
+ console.log(formatJsonLog('success', message, context));
269
+ }
270
+ else {
271
+ console.log(`${COLORS.green}✓${COLORS.reset} ${message}${formatTextContext(context)}`);
272
+ }
187
273
  },
188
274
  };
189
275
  //# sourceMappingURL=logger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,11 @@
1
1
  export declare const SESSION_IDLE_TIMEOUT_MS: number;
2
+ /**
3
+ * Grace window kept after a transient WebSocket disconnect before the PTY is
4
+ * killed. A reconnect with the same sessionId within this window resumes the
5
+ * still-alive PTY instead of spawning a new one. This prevents an API heartbeat
6
+ * false-positive terminate from destroying the user's live shell.
7
+ */
8
+ export declare const SESSION_GRACE_TIMEOUT_MS: number;
2
9
  export declare const MAX_CONCURRENT_SESSIONS = 5;
3
10
  export declare const TERMINAL_DEFAULT_COLS = 80;
4
11
  export declare const TERMINAL_DEFAULT_ROWS = 24;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/terminal/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,QAAiB,CAAA;AACrD,eAAO,MAAM,uBAAuB,IAAI,CAAA;AACxC,eAAO,MAAM,qBAAqB,KAAK,CAAA;AACvC,eAAO,MAAM,qBAAqB,KAAK,CAAA;AACvC,eAAO,MAAM,mCAAmC,OAAO,CAAA;AACvD,eAAO,MAAM,iCAAiC,QAA2B,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/terminal/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,QAAiB,CAAA;AACrD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,QAAa,CAAA;AAClD,eAAO,MAAM,uBAAuB,IAAI,CAAA;AACxC,eAAO,MAAM,qBAAqB,KAAK,CAAA;AACvC,eAAO,MAAM,qBAAqB,KAAK,CAAA;AACvC,eAAO,MAAM,mCAAmC,OAAO,CAAA;AACvD,eAAO,MAAM,iCAAiC,QAA2B,CAAA"}
@@ -1,7 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TERMINAL_WS_MAX_RECONNECT_RETRIES = exports.TERMINAL_WS_RECONNECT_BASE_DELAY_MS = exports.TERMINAL_DEFAULT_ROWS = exports.TERMINAL_DEFAULT_COLS = exports.MAX_CONCURRENT_SESSIONS = exports.SESSION_IDLE_TIMEOUT_MS = void 0;
3
+ exports.TERMINAL_WS_MAX_RECONNECT_RETRIES = exports.TERMINAL_WS_RECONNECT_BASE_DELAY_MS = exports.TERMINAL_DEFAULT_ROWS = exports.TERMINAL_DEFAULT_COLS = exports.MAX_CONCURRENT_SESSIONS = exports.SESSION_GRACE_TIMEOUT_MS = exports.SESSION_IDLE_TIMEOUT_MS = void 0;
4
4
  exports.SESSION_IDLE_TIMEOUT_MS = 30 * 60 * 1000; // 30 minutes
5
+ /**
6
+ * Grace window kept after a transient WebSocket disconnect before the PTY is
7
+ * killed. A reconnect with the same sessionId within this window resumes the
8
+ * still-alive PTY instead of spawning a new one. This prevents an API heartbeat
9
+ * false-positive terminate from destroying the user's live shell.
10
+ */
11
+ exports.SESSION_GRACE_TIMEOUT_MS = 300 * 1000; // 5 minutes
5
12
  exports.MAX_CONCURRENT_SESSIONS = 5;
6
13
  exports.TERMINAL_DEFAULT_COLS = 80;
7
14
  exports.TERMINAL_DEFAULT_ROWS = 24;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/terminal/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,uBAAuB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,aAAa;AACtD,QAAA,uBAAuB,GAAG,CAAC,CAAA;AAC3B,QAAA,qBAAqB,GAAG,EAAE,CAAA;AAC1B,QAAA,qBAAqB,GAAG,EAAE,CAAA;AAC1B,QAAA,mCAAmC,GAAG,IAAI,CAAA;AAC1C,QAAA,iCAAiC,GAAG,MAAM,CAAC,iBAAiB,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/terminal/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,uBAAuB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,aAAa;AACnE;;;;;GAKG;AACU,QAAA,wBAAwB,GAAG,GAAG,GAAG,IAAI,CAAA,CAAC,YAAY;AAClD,QAAA,uBAAuB,GAAG,CAAC,CAAA;AAC3B,QAAA,qBAAqB,GAAG,EAAE,CAAA;AAC1B,QAAA,qBAAqB,GAAG,EAAE,CAAA;AAC1B,QAAA,mCAAmC,GAAG,IAAI,CAAA;AAC1C,QAAA,iCAAiC,GAAG,MAAM,CAAC,iBAAiB,CAAA"}
@@ -2,13 +2,31 @@ import { TerminalSession, TerminalSessionOptions } from './terminal-session';
2
2
  import type { TerminalSessionInfo } from './terminal-session';
3
3
  export declare class TerminalSessionManager {
4
4
  private readonly sessions;
5
+ /**
6
+ * Per-session grace timers scheduled by closeAllGracefully(). A timer kills
7
+ * and removes its session when the grace window elapses without a reconnect.
8
+ */
9
+ private readonly graceTimers;
5
10
  private sessionCounter;
6
11
  createSession(options?: TerminalSessionOptions): TerminalSession | null;
7
12
  createSessionWithId(sessionId: string, options?: TerminalSessionOptions): TerminalSession | null;
8
13
  getSession(sessionId: string): TerminalSession | undefined;
9
14
  closeSession(sessionId: string): boolean;
10
15
  listSessions(): TerminalSessionInfo[];
16
+ /**
17
+ * Genuine shutdown: kill every PTY immediately and drop all sessions.
18
+ * Use this on process exit, not on a transient WebSocket disconnect.
19
+ */
11
20
  closeAll(): void;
21
+ /**
22
+ * Transient-disconnect handling: keep every PTY alive and schedule a grace
23
+ * timer per session. If no reconnect arrives within SESSION_GRACE_TIMEOUT_MS,
24
+ * the session is killed and removed. A reconnect with the same sessionId via
25
+ * createSessionWithId() cancels the timer and resumes the PTY.
26
+ */
27
+ closeAllGracefully(): void;
28
+ private scheduleGraceTimer;
29
+ private clearGraceTimer;
12
30
  get size(): number;
13
31
  }
14
32
  //# sourceMappingURL=terminal-session-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-session-manager.d.ts","sourceRoot":"","sources":["../../src/terminal/terminal-session-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAE5E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAE7D,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqC;IAC9D,OAAO,CAAC,cAAc,CAAI;IAE1B,aAAa,CAAC,OAAO,GAAE,sBAA2B,GAAG,eAAe,GAAG,IAAI;IAM3E,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B,GAAG,eAAe,GAAG,IAAI;IAoBpG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAI1D,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAQxC,YAAY,IAAI,mBAAmB,EAAE;IAIrC,QAAQ,IAAI,IAAI;IAOhB,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF"}
1
+ {"version":3,"file":"terminal-session-manager.d.ts","sourceRoot":"","sources":["../../src/terminal/terminal-session-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAG5E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAE7D,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqC;IAC9D;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmD;IAC/E,OAAO,CAAC,cAAc,CAAI;IAE1B,aAAa,CAAC,OAAO,GAAE,sBAA2B,GAAG,eAAe,GAAG,IAAI;IAM3E,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B,GAAG,eAAe,GAAG,IAAI;IAsCpG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAI1D,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IASxC,YAAY,IAAI,mBAAmB,EAAE;IAIrC;;;OAGG;IACH,QAAQ,IAAI,IAAI;IAUhB;;;;;OAKG;IACH,kBAAkB,IAAI,IAAI;IAM1B,OAAO,CAAC,kBAAkB;IAqB1B,OAAO,CAAC,eAAe;IAQvB,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF"}
@@ -3,8 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TerminalSessionManager = void 0;
4
4
  const terminal_session_1 = require("./terminal-session");
5
5
  const constants_1 = require("./constants");
6
+ const logger_1 = require("../logger");
6
7
  class TerminalSessionManager {
7
8
  sessions = new Map();
9
+ /**
10
+ * Per-session grace timers scheduled by closeAllGracefully(). A timer kills
11
+ * and removes its session when the grace window elapses without a reconnect.
12
+ */
13
+ graceTimers = new Map();
8
14
  sessionCounter = 0;
9
15
  createSession(options = {}) {
10
16
  this.sessionCounter++;
@@ -12,14 +18,30 @@ class TerminalSessionManager {
12
18
  return this.createSessionWithId(sessionId, options);
13
19
  }
14
20
  createSessionWithId(sessionId, options = {}) {
21
+ // Any reconnect with this sessionId invalidates a pending grace timer: we
22
+ // either resume the existing PTY or replace it with a new one. Clearing
23
+ // unconditionally prevents an orphaned timer from later killing the
24
+ // freshly-created live session (see bug #1).
25
+ this.clearGraceTimer(sessionId);
26
+ // Resume path: a reconnect with the same sessionId within the grace window
27
+ // reuses the still-alive PTY and returns it instead of spawning a new one.
28
+ const existing = this.sessions.get(sessionId);
29
+ if (existing && existing.isAlive()) {
30
+ logger_1.logger.debug(`[terminal] Resuming session within grace window: ${sessionId}`);
31
+ return existing;
32
+ }
15
33
  if (this.sessions.size >= constants_1.MAX_CONCURRENT_SESSIONS) {
16
34
  return null;
17
35
  }
18
36
  const session = new terminal_session_1.TerminalSession(sessionId, options);
19
- session.onExit(() => {
37
+ // Use the internal exit slot so the manager cleanup survives the websocket
38
+ // handler re-registering the public onExit (see bug #2).
39
+ session.setOnExitInternal(() => {
40
+ this.clearGraceTimer(sessionId);
20
41
  this.sessions.delete(sessionId);
21
42
  });
22
43
  session.setOnIdleTimeout(() => {
44
+ this.clearGraceTimer(sessionId);
23
45
  session.kill();
24
46
  this.sessions.delete(sessionId);
25
47
  });
@@ -33,6 +55,7 @@ class TerminalSessionManager {
33
55
  const session = this.sessions.get(sessionId);
34
56
  if (!session)
35
57
  return false;
58
+ this.clearGraceTimer(sessionId);
36
59
  session.kill();
37
60
  this.sessions.delete(sessionId);
38
61
  return true;
@@ -40,12 +63,57 @@ class TerminalSessionManager {
40
63
  listSessions() {
41
64
  return Array.from(this.sessions.values()).map((s) => s.getInfo());
42
65
  }
66
+ /**
67
+ * Genuine shutdown: kill every PTY immediately and drop all sessions.
68
+ * Use this on process exit, not on a transient WebSocket disconnect.
69
+ */
43
70
  closeAll() {
71
+ for (const sessionId of this.sessions.keys()) {
72
+ this.clearGraceTimer(sessionId);
73
+ }
44
74
  for (const session of this.sessions.values()) {
45
75
  session.kill();
46
76
  }
47
77
  this.sessions.clear();
48
78
  }
79
+ /**
80
+ * Transient-disconnect handling: keep every PTY alive and schedule a grace
81
+ * timer per session. If no reconnect arrives within SESSION_GRACE_TIMEOUT_MS,
82
+ * the session is killed and removed. A reconnect with the same sessionId via
83
+ * createSessionWithId() cancels the timer and resumes the PTY.
84
+ */
85
+ closeAllGracefully() {
86
+ for (const sessionId of this.sessions.keys()) {
87
+ this.scheduleGraceTimer(sessionId);
88
+ }
89
+ }
90
+ scheduleGraceTimer(sessionId) {
91
+ // Replace any existing grace timer so the window restarts on each disconnect.
92
+ this.clearGraceTimer(sessionId);
93
+ const timer = setTimeout(() => {
94
+ this.graceTimers.delete(sessionId);
95
+ const session = this.sessions.get(sessionId);
96
+ /* istanbul ignore else -- defensive: the timer is always cleared when the
97
+ session is removed (onExit/closeSession/closeAll/resume), so by the time
98
+ it fires the session is normally still present. */
99
+ if (session) {
100
+ logger_1.logger.debug(`[terminal] Grace window expired; killing session: ${sessionId}`);
101
+ session.kill();
102
+ this.sessions.delete(sessionId);
103
+ }
104
+ }, constants_1.SESSION_GRACE_TIMEOUT_MS);
105
+ // Do not keep the process alive solely for a pending grace timer.
106
+ /* istanbul ignore next -- unref is present on Node timers; guarded for envs that lack it */
107
+ timer.unref?.();
108
+ this.graceTimers.set(sessionId, timer);
109
+ }
110
+ clearGraceTimer(sessionId) {
111
+ const timer = this.graceTimers.get(sessionId);
112
+ if (timer) {
113
+ clearTimeout(timer);
114
+ this.graceTimers.delete(sessionId);
115
+ }
116
+ }
49
117
  get size() {
50
118
  return this.sessions.size;
51
119
  }
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-session-manager.js","sourceRoot":"","sources":["../../src/terminal/terminal-session-manager.ts"],"names":[],"mappings":";;;AAAA,yDAA4E;AAC5E,2CAAqD;AAGrD,MAAa,sBAAsB;IAChB,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAA;IACtD,cAAc,GAAG,CAAC,CAAA;IAE1B,aAAa,CAAC,UAAkC,EAAE;QAChD,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,MAAM,SAAS,GAAG,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE,CAAA;QAC7D,OAAO,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACrD,CAAC;IAED,mBAAmB,CAAC,SAAiB,EAAE,UAAkC,EAAE;QACzE,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,mCAAuB,EAAE,CAAC;YAClD,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,kCAAe,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAEvD,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE;YAClB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;QAEF,OAAO,CAAC,gBAAgB,CAAC,GAAG,EAAE;YAC5B,OAAO,CAAC,IAAI,EAAE,CAAA;YACd,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QACrC,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,UAAU,CAAC,SAAiB;QAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACrC,CAAC;IAED,YAAY,CAAC,SAAiB;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAC5C,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAA;QAC1B,OAAO,CAAC,IAAI,EAAE,CAAA;QACd,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC/B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,YAAY;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;IACnE,CAAC;IAED,QAAQ;QACN,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,OAAO,CAAC,IAAI,EAAE,CAAA;QAChB,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;IACvB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAA;IAC3B,CAAC;CACF;AAxDD,wDAwDC"}
1
+ {"version":3,"file":"terminal-session-manager.js","sourceRoot":"","sources":["../../src/terminal/terminal-session-manager.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,14 @@ export declare class TerminalSession {
47
47
  private sshKeyFile;
48
48
  private dataCallback;
49
49
  private exitCallback;
50
+ /**
51
+ * Internal exit callback owned by the session manager for its own cleanup
52
+ * (clear grace timer + remove from map). It is kept separate from the public
53
+ * `exitCallback` so that a later `onExit()` registration by the websocket
54
+ * handler (which sends the 'exit' frame) does NOT overwrite the manager's
55
+ * cleanup. Both fire on PTY exit.
56
+ */
57
+ private internalExitCallback;
50
58
  private exited;
51
59
  private idleTimer;
52
60
  private onIdleTimeout;
@@ -67,6 +75,11 @@ export declare class TerminalSession {
67
75
  constructor(sessionId: string, options?: TerminalSessionOptions);
68
76
  onData(callback: DataCallback): void;
69
77
  onExit(callback: ExitCallback): void;
78
+ /**
79
+ * Register the manager-owned exit cleanup. Separate from the public onExit so
80
+ * it survives the websocket handler re-registering onExit on open/resume.
81
+ */
82
+ setOnExitInternal(callback: () => void): void;
70
83
  setOnIdleTimeout(callback: () => void): void;
71
84
  write(data: string): void;
72
85
  resize(cols: number, rows: number): void;
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-session.d.ts","sourceRoot":"","sources":["../../src/terminal/terminal-session.ts"],"names":[],"mappings":"AAgEA;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACzC;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,KAAK,YAAY,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;AAC1C,KAAK,YAAY,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;AAEjD;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,+BAA+B,CAAA;AAEhE,qBAAa,eAAe;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAM;IACjC,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,SAAS,CAA6C;IAC9D,OAAO,CAAC,aAAa,CAA4B;IAEjD;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,qBAAqB,CAAC,QAAQ,GAAE,MAA4B,GAAG,MAAM;gBAyBhE,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B;IAkHnE,MAAM,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAIpC,MAAM,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAIpC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAI5C,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMzB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAQxC,IAAI,IAAI,IAAI;IAOZ,OAAO,CAAC,aAAa;IAmBrB,OAAO,IAAI,OAAO;IAIlB,OAAO,IAAI,mBAAmB;IAY9B,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,cAAc;CAMvB"}
1
+ {"version":3,"file":"terminal-session.d.ts","sourceRoot":"","sources":["../../src/terminal/terminal-session.ts"],"names":[],"mappings":"AAgEA;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACzC;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,KAAK,YAAY,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;AAC1C,KAAK,YAAY,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;AAEjD;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,+BAA+B,CAAA;AAEhE,qBAAa,eAAe;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAM;IACjC,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,YAAY,CAA4B;IAChD;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB,CAA4B;IACxD,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,SAAS,CAA6C;IAC9D,OAAO,CAAC,aAAa,CAA4B;IAEjD;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,qBAAqB,CAAC,QAAQ,GAAE,MAA4B,GAAG,MAAM;gBAyBhE,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B;IAwHnE,MAAM,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAIpC,MAAM,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAIpC;;;OAGG;IACH,iBAAiB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAI7C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAI5C,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMzB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAQxC,IAAI,IAAI,IAAI;IAOZ,OAAO,CAAC,aAAa;IAmBrB,OAAO,IAAI,OAAO;IAIlB,OAAO,IAAI,mBAAmB;IAY9B,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,cAAc;CAMvB"}
@@ -84,6 +84,14 @@ class TerminalSession {
84
84
  sshKeyFile = null;
85
85
  dataCallback = null;
86
86
  exitCallback = null;
87
+ /**
88
+ * Internal exit callback owned by the session manager for its own cleanup
89
+ * (clear grace timer + remove from map). It is kept separate from the public
90
+ * `exitCallback` so that a later `onExit()` registration by the websocket
91
+ * handler (which sends the 'exit' frame) does NOT overwrite the manager's
92
+ * cleanup. Both fire on PTY exit.
93
+ */
94
+ internalExitCallback = null;
87
95
  exited = false;
88
96
  idleTimer = null;
89
97
  onIdleTimeout = null;
@@ -222,6 +230,12 @@ class TerminalSession {
222
230
  this.exited = true;
223
231
  this.clearIdleTimer();
224
232
  this.cleanupTmpDir();
233
+ // Manager cleanup runs first and unconditionally, then the public
234
+ // (websocket) listener. The internal slot cannot be overwritten by a
235
+ // later onExit() call, so map/grace-timer cleanup always happens.
236
+ if (this.internalExitCallback) {
237
+ this.internalExitCallback(exitCode);
238
+ }
225
239
  if (this.exitCallback) {
226
240
  this.exitCallback(exitCode);
227
241
  }
@@ -234,6 +248,13 @@ class TerminalSession {
234
248
  onExit(callback) {
235
249
  this.exitCallback = callback;
236
250
  }
251
+ /**
252
+ * Register the manager-owned exit cleanup. Separate from the public onExit so
253
+ * it survives the websocket handler re-registering onExit on open/resume.
254
+ */
255
+ setOnExitInternal(callback) {
256
+ this.internalExitCallback = callback;
257
+ }
237
258
  setOnIdleTimeout(callback) {
238
259
  this.onIdleTimeout = callback;
239
260
  }
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-session.js","sourceRoot":"","sources":["../../src/terminal/terminal-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-session.js","sourceRoot":"","sources":["../../src/terminal/terminal-session.ts"],"names":[],"mappings":"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"}
@@ -47,7 +47,31 @@ export declare class TerminalWebSocket extends BaseWebSocketConnection<TerminalS
47
47
  protected createWebSocket(): WebSocket;
48
48
  protected onOpen(_ws: WebSocket, resolve: (value: void) => void): void;
49
49
  protected onParsedMessage(msg: TerminalServerMessage): void;
50
- protected onDisconnect(): void;
50
+ /**
51
+ * Transient WebSocket drop (ALB idle drop / heartbeat false-positive
52
+ * terminate / network blip). The base class fires this from the ws 'close'
53
+ * event, so this is where real transient disconnects land — NOT onDisconnect()
54
+ * (which is only invoked from the explicit disconnect() method).
55
+ *
56
+ * Keep every PTY alive within the grace window so a reconnect with the same
57
+ * sessionId can resume the user's live shell. If no reconnect arrives within
58
+ * SESSION_GRACE_TIMEOUT_MS the PTY is killed by the grace timer. A heartbeat
59
+ * false-positive terminate also fires 'close', so misdetected drops likewise
60
+ * preserve the PTY for resume.
61
+ */
62
+ protected onWebSocketClose(): void;
63
+ /**
64
+ * Explicit, user/agent-initiated shutdown. Unlike a transient drop, this is a
65
+ * genuine teardown so every PTY is killed immediately rather than being kept
66
+ * alive for the grace window.
67
+ *
68
+ * The base disconnect() calls onDisconnect() (left as the no-op default here,
69
+ * so it does NOT arm grace), then closes the socket. We follow up with
70
+ * closeAll() to kill every PTY. Because onDisconnect() does not schedule grace
71
+ * timers, there is nothing for closeAll() to undo — the two paths no longer
72
+ * fight (transient = grace via onWebSocketClose; explicit = closeAll here).
73
+ */
74
+ disconnect(): void;
51
75
  private handleOpen;
52
76
  private handleStdin;
53
77
  private handleResize;
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-websocket.d.ts","sourceRoot":"","sources":["../../src/terminal/terminal-websocket.ts"],"names":[],"mappings":"AAEA,OAAO,SAAS,MAAM,IAAI,CAAA;AAE1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAgB3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AAEnE;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,cAAc,GAAG,OAAO,CAAA;IACtE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;IAC3C,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAGzD,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEzD,qBAAa,iBAAkB,SAAQ,uBAAuB,CAAC,qBAAqB,CAAC;IAMjF,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IARnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAChD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;gBAG5B,MAAM,EAAE,MAAM,EACG,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,YAAA,EACnB,eAAe,CAAC,EAAE,eAAe,YAAA;IAYpD,iBAAiB,IAAI,sBAAsB;IAI3C,SAAS,CAAC,eAAe,IAAI,SAAS;IAStC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,GAAG,IAAI;IAMtE,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI;IA2B3D,SAAS,CAAC,YAAY,IAAI,IAAI;IAI9B,OAAO,CAAC,UAAU;IA4FlB,OAAO,CAAC,WAAW;IAmBnB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,IAAI;CAGb"}
1
+ {"version":3,"file":"terminal-websocket.d.ts","sourceRoot":"","sources":["../../src/terminal/terminal-websocket.ts"],"names":[],"mappings":"AAEA,OAAO,SAAS,MAAM,IAAI,CAAA;AAE1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAgB3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AAEnE;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,cAAc,GAAG,OAAO,CAAA;IACtE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;IAC3C,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAGzD,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEzD,qBAAa,iBAAkB,SAAQ,uBAAuB,CAAC,qBAAqB,CAAC;IAMjF,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IARnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAChD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;gBAG5B,MAAM,EAAE,MAAM,EACG,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,YAAA,EACnB,eAAe,CAAC,EAAE,eAAe,YAAA;IAYpD,iBAAiB,IAAI,sBAAsB;IAI3C,SAAS,CAAC,eAAe,IAAI,SAAS;IAStC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,GAAG,IAAI;IAMtE,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI;IA2B3D;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAIlC;;;;;;;;;;OAUG;IACH,UAAU,IAAI,IAAI;IAKlB,OAAO,CAAC,UAAU;IA4FlB,OAAO,CAAC,WAAW;IAmBnB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,IAAI;CAGb"}
@@ -113,7 +113,34 @@ class TerminalWebSocket extends base_websocket_1.BaseWebSocketConnection {
113
113
  logger_1.logger.debug(`[terminal-ws] Unknown message type: ${msg.type}`);
114
114
  }
115
115
  }
116
- onDisconnect() {
116
+ /**
117
+ * Transient WebSocket drop (ALB idle drop / heartbeat false-positive
118
+ * terminate / network blip). The base class fires this from the ws 'close'
119
+ * event, so this is where real transient disconnects land — NOT onDisconnect()
120
+ * (which is only invoked from the explicit disconnect() method).
121
+ *
122
+ * Keep every PTY alive within the grace window so a reconnect with the same
123
+ * sessionId can resume the user's live shell. If no reconnect arrives within
124
+ * SESSION_GRACE_TIMEOUT_MS the PTY is killed by the grace timer. A heartbeat
125
+ * false-positive terminate also fires 'close', so misdetected drops likewise
126
+ * preserve the PTY for resume.
127
+ */
128
+ onWebSocketClose() {
129
+ this.manager.closeAllGracefully();
130
+ }
131
+ /**
132
+ * Explicit, user/agent-initiated shutdown. Unlike a transient drop, this is a
133
+ * genuine teardown so every PTY is killed immediately rather than being kept
134
+ * alive for the grace window.
135
+ *
136
+ * The base disconnect() calls onDisconnect() (left as the no-op default here,
137
+ * so it does NOT arm grace), then closes the socket. We follow up with
138
+ * closeAll() to kill every PTY. Because onDisconnect() does not schedule grace
139
+ * timers, there is nothing for closeAll() to undo — the two paths no longer
140
+ * fight (transient = grace via onWebSocketClose; explicit = closeAll here).
141
+ */
142
+ disconnect() {
143
+ super.disconnect();
117
144
  this.manager.closeAll();
118
145
  }
119
146
  handleOpen(msg) {
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-websocket.js","sourceRoot":"","sources":["../../src/terminal/terminal-websocket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-websocket.js","sourceRoot":"","sources":["../../src/terminal/terminal-websocket.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4B;AAE5B,4CAA0B;AAE1B,sDAA2D;AAC3D,4CAAwD;AACxD,sCAAkC;AAClC,oCAAsD;AAEtD,2CAGoB;AAEpB,MAAM,iBAAiB,GAAG,CAAC,CAAA;AAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAA;AAE9B,SAAS,iBAAiB,CAAC,KAAa;IACtC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,CAAA;AACpF,CAAC;AACD,yEAAmE;AAyCnE,MAAa,iBAAkB,SAAQ,wCAA8C;IAMhE;IACA;IACA;IACA;IARF,OAAO,CAAwB;IAC/B,KAAK,CAAQ;IAE9B,YACE,MAAc,EACG,KAAa,EACb,OAAe,EACf,UAAmB,EACnB,eAAiC;QAElD,KAAK,CAAC;YACJ,mBAAmB,EAAE,6CAAiC;YACtD,oBAAoB,EAAE,+CAAmC;YACzD,mBAAmB,EAAE,qCAAyB;YAC9C,SAAS,EAAE,eAAe;SAC3B,CAAC,CAAA;QAVe,UAAK,GAAL,KAAK,CAAQ;QACb,YAAO,GAAP,OAAO,CAAQ;QACf,eAAU,GAAV,UAAU,CAAS;QACnB,oBAAe,GAAf,eAAe,CAAkB;QAQlD,IAAI,CAAC,OAAO,GAAG,IAAI,iDAAsB,EAAE,CAAA;QAC3C,IAAI,CAAC,KAAK,GAAG,IAAA,kBAAU,EAAC,MAAM,EAAE,oBAAoB,CAAC,CAAA;IACvD,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAES,eAAe;QACvB,OAAO,IAAI,YAAS,CAAC,IAAI,CAAC,KAAK,EAAE;YAC/B,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE;gBACrC,YAAY,EAAE,IAAI,CAAC,OAAO;aAC3B;SACF,CAAC,CAAA;IACJ,CAAC;IAES,MAAM,CAAC,GAAc,EAAE,OAA8B;QAC7D,eAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAA;QAC5D,IAAI,CAAC,oBAAoB,CAAC,OAAO,GAAG,CAAC,CAAA;QACrC,OAAO,EAAE,CAAA;IACX,CAAC;IAES,eAAe,CAAC,GAA0B;QAClD,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,MAAM;gBACT,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;gBACpB,MAAK;YACP,KAAK,OAAO;gBACV,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;gBACrB,MAAK;YACP,KAAK,QAAQ;gBACX,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;gBACtB,MAAK;YACP,KAAK,OAAO;gBACV,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;gBACrB,MAAK;YACP,KAAK,cAAc;gBACjB,wEAAwE;gBACxE,MAAK;YACP,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,MAAM,MAAM,GAAI,GAA0C,CAAC,OAAO,IAAK,GAA0C,CAAC,KAAK,IAAI,SAAS,CAAA;gBACpI,eAAM,CAAC,IAAI,CAAC,uCAAuC,GAAG,CAAC,SAAS,IAAI,MAAM,MAAM,MAAM,EAAE,CAAC,CAAA;gBACzF,MAAK;YACP,CAAC;YACD;gBACE,eAAM,CAAC,KAAK,CAAC,uCAAwC,GAAwB,CAAC,IAAI,EAAE,CAAC,CAAA;QACzF,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACO,gBAAgB;QACxB,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAA;IACnC,CAAC;IAED;;;;;;;;;;OAUG;IACH,UAAU;QACR,KAAK,CAAC,UAAU,EAAE,CAAA;QAClB,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAA;IACzB,CAAC;IAEO,UAAU,CAAC,GAA0B;QAC3C,8BAA8B;QAC9B,MAAM,eAAe,GAAG,GAAG,CAAC,SAAS,CAAA;QACrC,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,SAAS;gBACpB,KAAK,EAAE,mCAAmC;aAC3C,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QAED,uDAAuD;QACvD,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,CAAA;QACzB,IAAI,GAAG,CAAC,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;YACvD,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACxD,IAAI,QAAQ,KAAK,kBAAkB,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,kBAAkB,GAAG,GAAG,CAAC,EAAE,CAAC;gBACtF,IAAI,CAAC,IAAI,CAAC;oBACR,IAAI,EAAE,OAAO;oBACb,SAAS,EAAE,eAAe;oBAC1B,KAAK,EAAE,wCAAwC;iBAChD,CAAC,CAAA;gBACF,OAAM;YACR,CAAC;YACD,GAAG,GAAG,QAAQ,CAAA;QAChB,CAAC;aAAM,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;YACnB,GAAG,GAAG,GAAG,CAAC,GAAG,CAAA;QACf,CAAC;QAED,mDAAmD;QACnD,8CAA8C;QAC9C,2DAA2D;QAC3D,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE,EAAE,CAAA;QAChD,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,EAAE,CAAC;YAC7C,eAAM,CAAC,IAAI,CACT,8BAA8B,eAAe,iCAAiC;gBAC5E,mFAAmF,CACtF,CAAA;QACH,CAAC;QAED,yDAAyD;QACzD,+CAA+C;QAC/C,kEAAkE;QAClE,MAAM,eAAe,GACnB,GAAG,CAAC,eAAe,IAAI,eAAe;YACpC,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,EAAE;YAChE,CAAC,CAAC,SAAS,CAAA;QAEf,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,eAAe,EAAE;YAChE,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,GAAG;YACH,eAAe;SAChB,CAAC,CAAA;QAEF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,eAAe;gBAC1B,KAAK,EAAE,gCAAgC,IAAI,CAAC,OAAO,CAAC,IAAI,WAAW;aACpE,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QAED,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YACtB,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,eAAe;gBAC1B,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;aAC3C,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YACtB,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,eAAe;gBAC1B,IAAI;aACL,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,OAAO;YACb,SAAS,EAAE,eAAe;YAC1B,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC,CAAA;QAEF,eAAM,CAAC,KAAK,CAAC,iCAAiC,eAAe,SAAS,OAAO,CAAC,GAAG,GAAG,CAAC,CAAA;IACvF,CAAC;IAEO,WAAW,CAAC,GAA0B;QAC5C,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,IAAI;YAAE,OAAM;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACtD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,GAAG,CAAC,SAAS;gBACxB,KAAK,EAAE,mBAAmB;aAC3B,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QACD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;YACjE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACxB,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,eAAM,CAAC,IAAI,CAAC,uDAAuD,GAAG,CAAC,SAAS,MAAM,IAAA,uBAAe,EAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC/G,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,GAA0B;QAC7C,IAAI,CAAC,GAAG,CAAC,SAAS;YAAE,OAAM;QAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACtD,IAAI,CAAC,OAAO;YAAE,OAAM;QACpB,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACjE,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;QAC1E,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,GAA0B;QAC5C,IAAI,CAAC,GAAG,CAAC,SAAS;YAAE,OAAM;QAC1B,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACxC,eAAM,CAAC,KAAK,CAAC,iCAAiC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAA;IAChE,CAAC;IAEO,IAAI,CAAC,GAAyB;QACpC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;CACF;AApOD,8CAoOC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-support-agent/cli",
3
- "version": "0.1.23",
3
+ "version": "0.1.24",
4
4
  "description": "AI Support Agent CLI client",
5
5
  "main": "dist/index.js",
6
6
  "bin": {