botmux 3.18.7 → 3.18.8
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/dist/.runtime-build-id +1 -1
- package/dist/adapters/backend/tmux-pipe-backend.d.ts +57 -0
- package/dist/adapters/backend/tmux-pipe-backend.d.ts.map +1 -1
- package/dist/adapters/backend/tmux-pipe-backend.js +200 -21
- package/dist/adapters/backend/tmux-pipe-backend.js.map +1 -1
- package/dist/adapters/cli/pi-turn-boundary-extension.d.ts +66 -0
- package/dist/adapters/cli/pi-turn-boundary-extension.d.ts.map +1 -0
- package/dist/adapters/cli/pi-turn-boundary-extension.js +106 -0
- package/dist/adapters/cli/pi-turn-boundary-extension.js.map +1 -0
- package/dist/adapters/cli/pi.d.ts +29 -0
- package/dist/adapters/cli/pi.d.ts.map +1 -1
- package/dist/adapters/cli/pi.js +61 -10
- package/dist/adapters/cli/pi.js.map +1 -1
- package/dist/bot-registry.d.ts +9 -0
- package/dist/bot-registry.d.ts.map +1 -1
- package/dist/bot-registry.js +5 -0
- package/dist/bot-registry.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +8 -1
- package/dist/cli.js.map +1 -1
- package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
- package/dist/core/dashboard-ipc-server.js +24 -0
- package/dist/core/dashboard-ipc-server.js.map +1 -1
- package/dist/core/worker-pool.d.ts.map +1 -1
- package/dist/core/worker-pool.js +134 -17
- package/dist/core/worker-pool.js.map +1 -1
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +5 -3
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/bot-payload.d.ts +2 -0
- package/dist/dashboard/bot-payload.d.ts.map +1 -1
- package/dist/dashboard/bot-payload.js +2 -0
- package/dist/dashboard/bot-payload.js.map +1 -1
- package/dist/dashboard/groups-matrix-snapshot.d.ts +27 -0
- package/dist/dashboard/groups-matrix-snapshot.d.ts.map +1 -1
- package/dist/dashboard/groups-matrix-snapshot.js +16 -0
- package/dist/dashboard/groups-matrix-snapshot.js.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.d.ts +4 -0
- package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.js +52 -9
- package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
- package/dist/dashboard/web/bot-defaults.d.ts +29 -0
- package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults.js +45 -1
- package/dist/dashboard/web/bot-defaults.js.map +1 -1
- package/dist/dashboard/web/bot-onboarding.d.ts.map +1 -1
- package/dist/dashboard/web/bot-onboarding.js +5 -0
- package/dist/dashboard/web/bot-onboarding.js.map +1 -1
- package/dist/dashboard/web/dashboard-components.d.ts +29 -0
- package/dist/dashboard/web/dashboard-components.d.ts.map +1 -1
- package/dist/dashboard/web/dashboard-components.js +96 -4
- package/dist/dashboard/web/dashboard-components.js.map +1 -1
- package/dist/dashboard/web/groups-api.d.ts +11 -0
- package/dist/dashboard/web/groups-api.d.ts.map +1 -1
- package/dist/dashboard/web/groups-api.js +51 -0
- package/dist/dashboard/web/groups-api.js.map +1 -1
- package/dist/dashboard/web/i18n.d.ts.map +1 -1
- package/dist/dashboard/web/i18n.js +10 -0
- package/dist/dashboard/web/i18n.js.map +1 -1
- package/dist/dashboard/web/overview.d.ts.map +1 -1
- package/dist/dashboard/web/overview.js +11 -2
- package/dist/dashboard/web/overview.js.map +1 -1
- package/dist/dashboard/web/ui.d.ts.map +1 -1
- package/dist/dashboard/web/ui.js +12 -2
- package/dist/dashboard/web/ui.js.map +1 -1
- package/dist/dashboard-web/app.js +1 -1
- package/dist/dashboard-web/chunks/{agent-workbench-dock-page-6LC422N6.js → agent-workbench-dock-page-FAL2YGY5.js} +1 -1
- package/dist/dashboard-web/chunks/{agent-workbench-page-RSAWY7O2.js → agent-workbench-page-G65IOPLY.js} +1 -1
- package/dist/dashboard-web/chunks/bot-defaults-page-3BNFNZEO.js +1 -0
- package/dist/dashboard-web/chunks/chunk-2XHWGUTB.js +10 -0
- package/dist/dashboard-web/chunks/{chunk-R3LJUCEO.js → chunk-3OJQKYM3.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-K232GT3M.js → chunk-IRFGJSPL.js} +5 -5
- package/dist/dashboard-web/chunks/{chunk-IA5KMD5O.js → chunk-IYVXEFKU.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-YJA3KY3J.js → chunk-MYLVEXYF.js} +1 -1
- package/dist/dashboard-web/chunks/chunk-QALRQEKD.js +1 -0
- package/dist/dashboard-web/chunks/{connectors-page-DJCTHSFB.js → connectors-page-K6VZNYUQ.js} +1 -1
- package/dist/dashboard-web/chunks/{customization-page-VQJAEDZY.js → customization-page-FRP6RFOI.js} +1 -1
- package/dist/dashboard-web/chunks/{feedback-page-O7SZRKNM.js → feedback-page-4X7N5J33.js} +1 -1
- package/dist/dashboard-web/chunks/{groups-page-7PONUYHE.js → groups-page-RFQVUO6K.js} +1 -1
- package/dist/dashboard-web/chunks/{insights-page-J6DAAJ6D.js → insights-page-XWH77GX7.js} +1 -1
- package/dist/dashboard-web/chunks/{monitor-room-F3QNEW7N.js → monitor-room-WFU3745R.js} +1 -1
- package/dist/dashboard-web/chunks/{monitoring-page-JHDD2VS2.js → monitoring-page-3NYPZEQT.js} +1 -1
- package/dist/dashboard-web/chunks/{office-page-MMTN4IKD.js → office-page-4I3X6PTF.js} +1 -1
- package/dist/dashboard-web/chunks/overview-page-OQWLVTKT.js +1 -0
- package/dist/dashboard-web/chunks/{roles-page-FNI4MGX6.js → roles-page-RKUGNQOW.js} +1 -1
- package/dist/dashboard-web/chunks/{schedules-page-6PUU63KS.js → schedules-page-SAJKYRZ6.js} +1 -1
- package/dist/dashboard-web/chunks/{sessions-page-O4N72EXT.js → sessions-page-IU6VNSX4.js} +1 -1
- package/dist/dashboard-web/chunks/{settings-page-G7B3STUF.js → settings-page-WTIPX7BQ.js} +1 -1
- package/dist/dashboard-web/chunks/{skills-page-CEWKQOIG.js → skills-page-MKG3HJIU.js} +1 -1
- package/dist/dashboard-web/chunks/{team-federation-page-NUP4VK4H.js → team-federation-page-7SMZJWPT.js} +1 -1
- package/dist/dashboard-web/chunks/{v3-page-M4XF6D5Z.js → v3-page-JMCFLY4Y.js} +1 -1
- package/dist/dashboard-web/chunks/{whiteboards-page-L755NZX6.js → whiteboards-page-5YTWY5EB.js} +1 -1
- package/dist/dashboard-web/style.css +65 -3
- package/dist/dashboard.js +50 -4
- package/dist/dashboard.js.map +1 -1
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +4 -1
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/zh.d.ts.map +1 -1
- package/dist/i18n/zh.js +4 -1
- package/dist/i18n/zh.js.map +1 -1
- package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
- package/dist/im/lark/event-dispatcher.js +141 -38
- package/dist/im/lark/event-dispatcher.js.map +1 -1
- package/dist/services/card-prefs-store.d.ts +2 -0
- package/dist/services/card-prefs-store.d.ts.map +1 -1
- package/dist/services/card-prefs-store.js +9 -1
- package/dist/services/card-prefs-store.js.map +1 -1
- package/dist/services/pi-transcript.d.ts +21 -1
- package/dist/services/pi-transcript.d.ts.map +1 -1
- package/dist/services/pi-transcript.js +188 -8
- package/dist/services/pi-transcript.js.map +1 -1
- package/dist/services/session-store.d.ts.map +1 -1
- package/dist/services/session-store.js +495 -11
- package/dist/services/session-store.js.map +1 -1
- package/dist/services/under-review-notify-store.d.ts +18 -0
- package/dist/services/under-review-notify-store.d.ts.map +1 -0
- package/dist/services/under-review-notify-store.js +67 -0
- package/dist/services/under-review-notify-store.js.map +1 -0
- package/dist/setup/open-platform-automation.d.ts +210 -2
- package/dist/setup/open-platform-automation.d.ts.map +1 -1
- package/dist/setup/open-platform-automation.js +538 -44
- package/dist/setup/open-platform-automation.js.map +1 -1
- package/dist/setup/open-platform-outcome.d.ts.map +1 -1
- package/dist/setup/open-platform-outcome.js +5 -0
- package/dist/setup/open-platform-outcome.js.map +1 -1
- package/dist/workflows/events/payloads.d.ts +6 -6
- package/dist/workflows/events/schema.d.ts +12 -12
- package/package.json +9 -7
- package/dist/dashboard-web/chunks/bot-defaults-page-67RAWCSQ.js +0 -1
- package/dist/dashboard-web/chunks/chunk-MMLTCXHP.js +0 -10
- package/dist/dashboard-web/chunks/chunk-NYY66DNC.js +0 -1
- package/dist/dashboard-web/chunks/overview-page-IQ2UJAJP.js +0 -1
package/dist/.runtime-build-id
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
11468ac284074e6589e2a7d0775722e3f0a350ddcaadd61b7ac4818a396a8731
|
|
@@ -68,12 +68,31 @@ export declare function parsePaneModeFlags(out: string): PaneInputModes | null;
|
|
|
68
68
|
* offset keeps probes distributed without introducing test/runtime randomness.
|
|
69
69
|
*/
|
|
70
70
|
export declare function tmuxLifecycleInitialDelayMs(target: string): number;
|
|
71
|
+
/** Live fifo readers awaiting the exit-hook wake. Test-only: lets a regression
|
|
72
|
+
* assert that a failed spawn deregistered itself, which "the process exited"
|
|
73
|
+
* cannot show once the exit hook is in place. */
|
|
74
|
+
export declare function __testOnly_liveFifoReaderCount(): number;
|
|
71
75
|
export declare class TmuxPipeBackend implements SessionBackend {
|
|
72
76
|
readonly supportsRawCommandPasteLine = true;
|
|
73
77
|
/** Real tmux pane address (e.g. "0:2.0") or botmux session name (bmx-*). */
|
|
74
78
|
private readonly paneTarget;
|
|
75
79
|
private readonly fifoPath;
|
|
76
80
|
private readStream;
|
|
81
|
+
/** Read end of the fifo, kept so teardown can close it explicitly.
|
|
82
|
+
* `createReadStream(..., { autoClose: false })` never closes it for us. */
|
|
83
|
+
private fifoFd;
|
|
84
|
+
/** Set once teardownFifoReader() has run, so the reader's own EBADF-on-close
|
|
85
|
+
* (see the 'error' handler) is recognised as expected teardown noise. Not
|
|
86
|
+
* `exited`: the spawn-failure path tears the reader down without ever
|
|
87
|
+
* marking the backend exited. */
|
|
88
|
+
private fifoTornDown;
|
|
89
|
+
/** Write end, opened at spawn() and held for the lifetime of the reader.
|
|
90
|
+
* Teardown writes one byte here to unblock the parked read (see
|
|
91
|
+
* teardownFifoReader). Acquired UP FRONT on purpose: opening it at teardown
|
|
92
|
+
* instead would need the pathname to still exist and a spare fd at the worst
|
|
93
|
+
* possible moment — both verified to fail and re-wedge the process (fifo
|
|
94
|
+
* already unlinked → ENOENT; fd table exhausted → EMFILE). */
|
|
95
|
+
private fifoWakeFd;
|
|
77
96
|
/** Streaming UTF-8 decoder. The fifo read emits raw Buffer chunks at libuv's
|
|
78
97
|
* 64KB highWaterMark boundary, which can fall in the middle of a multi-byte
|
|
79
98
|
* character (CJK = 3 bytes, box-drawing = 3 bytes, emoji = 4 bytes). Decoding
|
|
@@ -262,6 +281,44 @@ export declare class TmuxPipeBackend implements SessionBackend {
|
|
|
262
281
|
* destructive on its own. */
|
|
263
282
|
private static tmuxServerReachability;
|
|
264
283
|
private stopLifecycleWatcher;
|
|
284
|
+
/**
|
|
285
|
+
* Tear down the fifo reader so this process can actually exit.
|
|
286
|
+
*
|
|
287
|
+
* `readStream.destroy()` alone is NOT enough, and getting this wrong wedges
|
|
288
|
+
* the whole worker: libuv services the (deliberately blocking, see spawn())
|
|
289
|
+
* fifo read from its threadpool, and destroy() only detaches the JS stream —
|
|
290
|
+
* the threadpool thread stays parked inside the kernel `read()`. Because we
|
|
291
|
+
* hold the fifo O_RDWR, a writer always exists, so that read never sees EOF
|
|
292
|
+
* and never returns. `process.exit()` then blocks forever in
|
|
293
|
+
* uv__threadpool_cleanup joining that thread, with the event loop already
|
|
294
|
+
* stopped so the process cannot even self-kill on a timer. Observed in
|
|
295
|
+
* production as every worker of a daemon stuck mid-exit: the daemon still
|
|
296
|
+
* considered them live and kept delivering turns, so each message came back
|
|
297
|
+
* as "Worker 未能接收这条消息" (worker.input_delivery_failed) forever.
|
|
298
|
+
*
|
|
299
|
+
* The wake-up byte is what unblocks that read. It goes through a SEPARATE
|
|
300
|
+
* write fd (never our own O_RDWR one) opened back in spawn(): at teardown
|
|
301
|
+
* nobody is draining the pipe any more, so if tmux left it full a blocking
|
|
302
|
+
* write would hang exactly like the bug we are fixing (verified). That fd is
|
|
303
|
+
* acquired UP FRONT rather than here because teardown is precisely when
|
|
304
|
+
* acquiring one can fail — the fifo may already be unlinked (ENOENT) or the
|
|
305
|
+
* fd table exhausted (EMFILE), and both were verified to re-wedge the
|
|
306
|
+
* process while the old code silently swallowed the error. The byte is never
|
|
307
|
+
* observed by callers: the stream is destroyed first, so nothing reads it and
|
|
308
|
+
* it dies with the fifo on the unlink below.
|
|
309
|
+
*/
|
|
310
|
+
/**
|
|
311
|
+
* Last-resort unblock for the process-exit hook.
|
|
312
|
+
*
|
|
313
|
+
* Writes the wake-up byte so the parked threadpool read can return and
|
|
314
|
+
* uv__threadpool_cleanup can join it, then unlinks the fifo: a named fifo is
|
|
315
|
+
* a filesystem object and outlives the process, so skipping this would strew
|
|
316
|
+
* /tmp with botmux-pipe-* on every exit that bypasses teardown. Deliberately
|
|
317
|
+
* minimal otherwise — no stream teardown, nothing that could block. Safe
|
|
318
|
+
* after a real teardown (fifoWakeFd is null by then) and safe to call twice.
|
|
319
|
+
*/
|
|
320
|
+
wakeFifoReaderForExit(): void;
|
|
321
|
+
private teardownFifoReader;
|
|
265
322
|
private handlePaneExit;
|
|
266
323
|
private createDetachedSession;
|
|
267
324
|
private applySessionOptions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tmux-pipe-backend.d.ts","sourceRoot":"","sources":["../../../src/adapters/backend/tmux-pipe-backend.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tmux-pipe-backend.d.ts","sourceRoot":"","sources":["../../../src/adapters/backend/tmux-pipe-backend.ts"],"names":[],"mappings":"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"}
|
|
@@ -169,12 +169,63 @@ export function tmuxLifecycleInitialDelayMs(target) {
|
|
|
169
169
|
}
|
|
170
170
|
return 1000 + ((hash >>> 0) % 750);
|
|
171
171
|
}
|
|
172
|
+
/**
|
|
173
|
+
* Every backend with a live fifo reader, so process exit can unblock them all.
|
|
174
|
+
*
|
|
175
|
+
* A parked fifo read wedges `process.exit()` forever in uv__threadpool_cleanup
|
|
176
|
+
* (see teardownFifoReader for the full mechanism), and several production exit
|
|
177
|
+
* paths never call kill(): sendFatalWorkerErrorAndExit(), the
|
|
178
|
+
* uncaughtException / unhandledRejection handlers, and the
|
|
179
|
+
* existing-App-Server parent-exit branch all exit directly. Making the fix
|
|
180
|
+
* depend on every caller remembering to tear down first would leave the
|
|
181
|
+
* original wedge reachable, so the backend registers itself here and the
|
|
182
|
+
* process-exit hook below is the backstop. Entries are removed on teardown, so
|
|
183
|
+
* a normally-closed backend leaves nothing behind.
|
|
184
|
+
*/
|
|
185
|
+
const liveFifoReaders = new Set();
|
|
186
|
+
let fifoExitHookInstalled = false;
|
|
187
|
+
function installFifoExitHook() {
|
|
188
|
+
if (fifoExitHookInstalled)
|
|
189
|
+
return;
|
|
190
|
+
fifoExitHookInstalled = true;
|
|
191
|
+
// 'exit' only admits synchronous work — which is exactly what this is: one
|
|
192
|
+
// write() plus one unlink() per reader. Cannot be an async cleanup.
|
|
193
|
+
process.on('exit', () => {
|
|
194
|
+
for (const backend of liveFifoReaders) {
|
|
195
|
+
try {
|
|
196
|
+
backend.wakeFifoReaderForExit();
|
|
197
|
+
}
|
|
198
|
+
catch { /* best-effort */ }
|
|
199
|
+
}
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
/** Live fifo readers awaiting the exit-hook wake. Test-only: lets a regression
|
|
203
|
+
* assert that a failed spawn deregistered itself, which "the process exited"
|
|
204
|
+
* cannot show once the exit hook is in place. */
|
|
205
|
+
export function __testOnly_liveFifoReaderCount() {
|
|
206
|
+
return liveFifoReaders.size;
|
|
207
|
+
}
|
|
172
208
|
export class TmuxPipeBackend {
|
|
173
209
|
supportsRawCommandPasteLine = true;
|
|
174
210
|
/** Real tmux pane address (e.g. "0:2.0") or botmux session name (bmx-*). */
|
|
175
211
|
paneTarget;
|
|
176
212
|
fifoPath;
|
|
177
213
|
readStream = null;
|
|
214
|
+
/** Read end of the fifo, kept so teardown can close it explicitly.
|
|
215
|
+
* `createReadStream(..., { autoClose: false })` never closes it for us. */
|
|
216
|
+
fifoFd = null;
|
|
217
|
+
/** Set once teardownFifoReader() has run, so the reader's own EBADF-on-close
|
|
218
|
+
* (see the 'error' handler) is recognised as expected teardown noise. Not
|
|
219
|
+
* `exited`: the spawn-failure path tears the reader down without ever
|
|
220
|
+
* marking the backend exited. */
|
|
221
|
+
fifoTornDown = false;
|
|
222
|
+
/** Write end, opened at spawn() and held for the lifetime of the reader.
|
|
223
|
+
* Teardown writes one byte here to unblock the parked read (see
|
|
224
|
+
* teardownFifoReader). Acquired UP FRONT on purpose: opening it at teardown
|
|
225
|
+
* instead would need the pathname to still exist and a spare fd at the worst
|
|
226
|
+
* possible moment — both verified to fail and re-wedge the process (fifo
|
|
227
|
+
* already unlinked → ENOENT; fd table exhausted → EMFILE). */
|
|
228
|
+
fifoWakeFd = null;
|
|
178
229
|
/** Streaming UTF-8 decoder. The fifo read emits raw Buffer chunks at libuv's
|
|
179
230
|
* 64KB highWaterMark boundary, which can fall in the middle of a multi-byte
|
|
180
231
|
* character (CJK = 3 bytes, box-drawing = 3 bytes, emoji = 4 bytes). Decoding
|
|
@@ -291,7 +342,50 @@ export class TmuxPipeBackend {
|
|
|
291
342
|
// exact bug ate the bridge final_output pipeline on first ship: an
|
|
292
343
|
// strace showed worker only read its IPC fd, never the fifo.)
|
|
293
344
|
const fd = fs.openSync(this.fifoPath, fs.constants.O_RDWR);
|
|
345
|
+
this.fifoFd = fd;
|
|
346
|
+
// Acquire the wake-up write end NOW, while the pathname exists and the fd
|
|
347
|
+
// table has room. Teardown must never need to allocate anything.
|
|
348
|
+
// O_NONBLOCK so a full pipe fails with EAGAIN instead of parking here.
|
|
349
|
+
//
|
|
350
|
+
// FAIL CLOSED if this fails. Without a wake fd the reader can be unblocked
|
|
351
|
+
// by nobody — not teardown, not the exit hook — so continuing would build
|
|
352
|
+
// exactly the unkillable reader this whole fix exists to prevent (verified:
|
|
353
|
+
// a wake-open failure alone re-wedges the process). This is also the only
|
|
354
|
+
// moment where bailing is safe: the read stream does not exist yet, so no
|
|
355
|
+
// read is parked and there is nothing to unblock. The failure modes all
|
|
356
|
+
// mean the session is doomed anyway — EMFILE will sink the following
|
|
357
|
+
// execSync(tmux …) too, and ENOENT means the fifo pathname is already gone.
|
|
358
|
+
try {
|
|
359
|
+
// Test seam: the fail-closed path below is only reachable when this open
|
|
360
|
+
// fails, and EMFILE/ENOENT cannot be provoked from a test without
|
|
361
|
+
// destabilising the whole process. The env var is read on every spawn but
|
|
362
|
+
// is only ever set by this repo's own test, so production behaviour is
|
|
363
|
+
// unchanged.
|
|
364
|
+
if (process.env.BOTMUX_TEST_FORCE_WAKE_OPEN_FAIL === '1') {
|
|
365
|
+
const injected = new Error('EMFILE: injected by test');
|
|
366
|
+
injected.code = 'EMFILE';
|
|
367
|
+
throw injected;
|
|
368
|
+
}
|
|
369
|
+
this.fifoWakeFd = fs.openSync(this.fifoPath, fs.constants.O_WRONLY | fs.constants.O_NONBLOCK);
|
|
370
|
+
}
|
|
371
|
+
catch (err) {
|
|
372
|
+
this.fifoWakeFd = null;
|
|
373
|
+
try {
|
|
374
|
+
fs.closeSync(fd);
|
|
375
|
+
}
|
|
376
|
+
catch { /* best effort */ }
|
|
377
|
+
this.fifoFd = null;
|
|
378
|
+
try {
|
|
379
|
+
fs.unlinkSync(this.fifoPath);
|
|
380
|
+
}
|
|
381
|
+
catch { /* best effort */ }
|
|
382
|
+
throw err;
|
|
383
|
+
}
|
|
294
384
|
this.readStream = fs.createReadStream('', { fd, autoClose: false, highWaterMark: 64 * 1024 });
|
|
385
|
+
// From here on a parked read can wedge process exit, so make this reader
|
|
386
|
+
// reachable from the exit hook even if nothing ever calls kill().
|
|
387
|
+
installFifoExitHook();
|
|
388
|
+
liveFifoReaders.add(this);
|
|
295
389
|
this.readStream.on('data', (chunk) => {
|
|
296
390
|
// StringDecoder reassembles multi-byte chars split across chunk
|
|
297
391
|
// boundaries (see `decoder` field doc). A string chunk would only
|
|
@@ -309,6 +403,13 @@ export class TmuxPipeBackend {
|
|
|
309
403
|
}
|
|
310
404
|
});
|
|
311
405
|
this.readStream.on('error', (err) => {
|
|
406
|
+
// Teardown noise, not a fault: destroy() closes the read fd itself when
|
|
407
|
+
// no read is in flight (despite autoClose:false), so our own backstop
|
|
408
|
+
// close races it and the stream reports EBADF on a reader we are
|
|
409
|
+
// deliberately dismantling. Logging it would put a scary line in every
|
|
410
|
+
// worker's stderr on every normal close.
|
|
411
|
+
if (this.fifoTornDown && err?.code === 'EBADF')
|
|
412
|
+
return;
|
|
312
413
|
// Errors are best-effort logged via the worker's stderr (we can't
|
|
313
414
|
// pull a logger in a backend without circular imports). Don't fire
|
|
314
415
|
// exit — the user's CLI is still alive, we just lost realtime view.
|
|
@@ -332,6 +433,12 @@ export class TmuxPipeBackend {
|
|
|
332
433
|
}
|
|
333
434
|
catch (err) {
|
|
334
435
|
if (!isRetryableStartupTmuxFailure(err) || attempt >= STARTUP_TMUX_RETRY_DELAYS_MS.length) {
|
|
436
|
+
// The fifo reader is already live (step 2) with a blocking read parked
|
|
437
|
+
// on it. Throwing out of spawn() without this leaves that read alive
|
|
438
|
+
// forever and wedges the process at exit exactly like the bug
|
|
439
|
+
// teardownFifoReader() exists to prevent — the caller only sees a
|
|
440
|
+
// failed spawn and has no handle to clean up.
|
|
441
|
+
this.teardownFifoReader();
|
|
335
442
|
this.fireExit(1, null);
|
|
336
443
|
throw err;
|
|
337
444
|
}
|
|
@@ -541,17 +648,7 @@ export class TmuxPipeBackend {
|
|
|
541
648
|
catch { /* pane may already be gone — benign */ }
|
|
542
649
|
this.pipeAttached = false;
|
|
543
650
|
}
|
|
544
|
-
|
|
545
|
-
try {
|
|
546
|
-
this.readStream.destroy();
|
|
547
|
-
}
|
|
548
|
-
catch { /* already closed */ }
|
|
549
|
-
this.readStream = null;
|
|
550
|
-
}
|
|
551
|
-
try {
|
|
552
|
-
fs.unlinkSync(this.fifoPath);
|
|
553
|
-
}
|
|
554
|
-
catch { /* already gone */ }
|
|
651
|
+
this.teardownFifoReader();
|
|
555
652
|
}
|
|
556
653
|
destroySession() {
|
|
557
654
|
this.kill();
|
|
@@ -796,18 +893,57 @@ export class TmuxPipeBackend {
|
|
|
796
893
|
this.lifecycleTimer = null;
|
|
797
894
|
}
|
|
798
895
|
}
|
|
799
|
-
|
|
800
|
-
|
|
896
|
+
/**
|
|
897
|
+
* Tear down the fifo reader so this process can actually exit.
|
|
898
|
+
*
|
|
899
|
+
* `readStream.destroy()` alone is NOT enough, and getting this wrong wedges
|
|
900
|
+
* the whole worker: libuv services the (deliberately blocking, see spawn())
|
|
901
|
+
* fifo read from its threadpool, and destroy() only detaches the JS stream —
|
|
902
|
+
* the threadpool thread stays parked inside the kernel `read()`. Because we
|
|
903
|
+
* hold the fifo O_RDWR, a writer always exists, so that read never sees EOF
|
|
904
|
+
* and never returns. `process.exit()` then blocks forever in
|
|
905
|
+
* uv__threadpool_cleanup joining that thread, with the event loop already
|
|
906
|
+
* stopped so the process cannot even self-kill on a timer. Observed in
|
|
907
|
+
* production as every worker of a daemon stuck mid-exit: the daemon still
|
|
908
|
+
* considered them live and kept delivering turns, so each message came back
|
|
909
|
+
* as "Worker 未能接收这条消息" (worker.input_delivery_failed) forever.
|
|
910
|
+
*
|
|
911
|
+
* The wake-up byte is what unblocks that read. It goes through a SEPARATE
|
|
912
|
+
* write fd (never our own O_RDWR one) opened back in spawn(): at teardown
|
|
913
|
+
* nobody is draining the pipe any more, so if tmux left it full a blocking
|
|
914
|
+
* write would hang exactly like the bug we are fixing (verified). That fd is
|
|
915
|
+
* acquired UP FRONT rather than here because teardown is precisely when
|
|
916
|
+
* acquiring one can fail — the fifo may already be unlinked (ENOENT) or the
|
|
917
|
+
* fd table exhausted (EMFILE), and both were verified to re-wedge the
|
|
918
|
+
* process while the old code silently swallowed the error. The byte is never
|
|
919
|
+
* observed by callers: the stream is destroyed first, so nothing reads it and
|
|
920
|
+
* it dies with the fifo on the unlink below.
|
|
921
|
+
*/
|
|
922
|
+
/**
|
|
923
|
+
* Last-resort unblock for the process-exit hook.
|
|
924
|
+
*
|
|
925
|
+
* Writes the wake-up byte so the parked threadpool read can return and
|
|
926
|
+
* uv__threadpool_cleanup can join it, then unlinks the fifo: a named fifo is
|
|
927
|
+
* a filesystem object and outlives the process, so skipping this would strew
|
|
928
|
+
* /tmp with botmux-pipe-* on every exit that bypasses teardown. Deliberately
|
|
929
|
+
* minimal otherwise — no stream teardown, nothing that could block. Safe
|
|
930
|
+
* after a real teardown (fifoWakeFd is null by then) and safe to call twice.
|
|
931
|
+
*/
|
|
932
|
+
wakeFifoReaderForExit() {
|
|
933
|
+
if (this.fifoWakeFd === null)
|
|
801
934
|
return;
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
if (this.pipeAttached) {
|
|
805
|
-
try {
|
|
806
|
-
execSync(`tmux pipe-pane -t ${shellescape(this.paneTarget)}`, { stdio: 'ignore', timeout: 3000, env: tmuxEnv() });
|
|
807
|
-
}
|
|
808
|
-
catch { /* pane may already be gone — benign */ }
|
|
809
|
-
this.pipeAttached = false;
|
|
935
|
+
try {
|
|
936
|
+
fs.writeSync(this.fifoWakeFd, '\0');
|
|
810
937
|
}
|
|
938
|
+
catch { /* already unblocked */ }
|
|
939
|
+
try {
|
|
940
|
+
fs.unlinkSync(this.fifoPath);
|
|
941
|
+
}
|
|
942
|
+
catch { /* already gone */ }
|
|
943
|
+
}
|
|
944
|
+
teardownFifoReader() {
|
|
945
|
+
liveFifoReaders.delete(this);
|
|
946
|
+
this.fifoTornDown = true;
|
|
811
947
|
if (this.readStream) {
|
|
812
948
|
try {
|
|
813
949
|
this.readStream.destroy();
|
|
@@ -815,10 +951,53 @@ export class TmuxPipeBackend {
|
|
|
815
951
|
catch { /* already closed */ }
|
|
816
952
|
this.readStream = null;
|
|
817
953
|
}
|
|
954
|
+
if (this.fifoWakeFd !== null) {
|
|
955
|
+
// EAGAIN (pipe full) is fine: a full pipe means the read already has data
|
|
956
|
+
// to return, so it is not parked. Any other error is equally non-fatal —
|
|
957
|
+
// we are tearing down regardless.
|
|
958
|
+
try {
|
|
959
|
+
fs.writeSync(this.fifoWakeFd, '\0');
|
|
960
|
+
}
|
|
961
|
+
catch { /* already unblocked */ }
|
|
962
|
+
try {
|
|
963
|
+
fs.closeSync(this.fifoWakeFd);
|
|
964
|
+
}
|
|
965
|
+
catch { /* already closed */ }
|
|
966
|
+
this.fifoWakeFd = null;
|
|
967
|
+
}
|
|
968
|
+
if (this.fifoFd !== null) {
|
|
969
|
+
// Closing the read fd is nominally ours (autoClose:false), but destroy()
|
|
970
|
+
// DOES close it itself when no read is in flight — verified: after a
|
|
971
|
+
// synchronous destroy() the fd is already EBADF. So this close is a
|
|
972
|
+
// best-effort backstop for the in-flight case, and EBADF here is the
|
|
973
|
+
// normal, expected outcome rather than a fault. Clear the field first so
|
|
974
|
+
// a late 'error' handler re-entering teardown cannot close it twice (by
|
|
975
|
+
// then the number could name a freshly-opened unrelated file).
|
|
976
|
+
const fd = this.fifoFd;
|
|
977
|
+
this.fifoFd = null;
|
|
978
|
+
try {
|
|
979
|
+
fs.closeSync(fd);
|
|
980
|
+
}
|
|
981
|
+
catch { /* stream already closed it */ }
|
|
982
|
+
}
|
|
818
983
|
try {
|
|
819
984
|
fs.unlinkSync(this.fifoPath);
|
|
820
985
|
}
|
|
821
986
|
catch { /* already gone */ }
|
|
987
|
+
}
|
|
988
|
+
handlePaneExit() {
|
|
989
|
+
if (this.exited)
|
|
990
|
+
return;
|
|
991
|
+
this.exited = true;
|
|
992
|
+
this.stopLifecycleWatcher();
|
|
993
|
+
if (this.pipeAttached) {
|
|
994
|
+
try {
|
|
995
|
+
execSync(`tmux pipe-pane -t ${shellescape(this.paneTarget)}`, { stdio: 'ignore', timeout: 3000, env: tmuxEnv() });
|
|
996
|
+
}
|
|
997
|
+
catch { /* pane may already be gone — benign */ }
|
|
998
|
+
this.pipeAttached = false;
|
|
999
|
+
}
|
|
1000
|
+
this.teardownFifoReader();
|
|
822
1001
|
this.fireExit(1, null);
|
|
823
1002
|
}
|
|
824
1003
|
createDetachedSession(bin, args, opts) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tmux-pipe-backend.js","sourceRoot":"","sources":["../../../src/adapters/backend/tmux-pipe-backend.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tmux-pipe-backend.js","sourceRoot":"","sources":["../../../src/adapters/backend/tmux-pipe-backend.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pi turn-boundary extension.
|
|
3
|
+
*
|
|
4
|
+
* ## Why this exists
|
|
5
|
+
*
|
|
6
|
+
* Pi is an agent-loop CLI: its `stopReason` describes ONE model request, not
|
|
7
|
+
* the user turn. When a provider request fails transiently, Pi persists an
|
|
8
|
+
* assistant record with `stopReason:"error"` and then RETRIES inside the same
|
|
9
|
+
* turn — `agent-session.ts` even strips that record from the LLM context while
|
|
10
|
+
* deliberately keeping it in the session file ("Remove error message from agent
|
|
11
|
+
* state (keep in session for history)"). So a mid-turn `error` record is a
|
|
12
|
+
* historical breadcrumb, not a verdict.
|
|
13
|
+
*
|
|
14
|
+
* Reading those records as turn terminals made Botmux post a "model gateway
|
|
15
|
+
* failure" card — and @mention a human — for turns that went on to succeed.
|
|
16
|
+
* Measured over 231 real local sessions: 229 of 339 `error` records (67.6%)
|
|
17
|
+
* were followed by the SAME turn continuing.
|
|
18
|
+
*
|
|
19
|
+
* Neither the error text nor the record shape separates the two cases (the
|
|
20
|
+
* identical "EOF wait read" string appears 34x continuing and 1x ending; the
|
|
21
|
+
* field sets are byte-identical). Only Pi itself knows, and it already says so:
|
|
22
|
+
* `agent_settled` fires exactly once, after the whole retry / compaction /
|
|
23
|
+
* queued-continuation loop drains.
|
|
24
|
+
*
|
|
25
|
+
* ## What it writes
|
|
26
|
+
*
|
|
27
|
+
* On `agent_settled` we append ONE `custom` entry to Pi's own session JSONL —
|
|
28
|
+
* the very file the Botmux bridge already tails:
|
|
29
|
+
*
|
|
30
|
+
* {"type":"custom","customType":"botmux-turn-settled","data":{"lastStopReason":"error"}}
|
|
31
|
+
*
|
|
32
|
+
* In-band placement is the point: the entry is ordered AFTER the assistant
|
|
33
|
+
* records of the turn it closes, so the reader never has to correlate two files
|
|
34
|
+
* by timestamp or worry about cross-file write races. `lastStopReason` is the
|
|
35
|
+
* stop reason of the last assistant message of the last agent run — `"error"`
|
|
36
|
+
* means the turn really ended in failure, anything else means it recovered.
|
|
37
|
+
*
|
|
38
|
+
* Custom entries never enter LLM context (`sessionEntryToContextMessages`
|
|
39
|
+
* returns [] for them), so this cannot perturb the model.
|
|
40
|
+
*
|
|
41
|
+
* Loaded per-invocation via `--extension`, so it applies ONLY to Pi processes
|
|
42
|
+
* Botmux spawns — a Pi the user starts by hand in a terminal is unaffected.
|
|
43
|
+
*/
|
|
44
|
+
export declare const PI_TURN_BOUNDARY_CUSTOM_TYPE = "botmux-turn-settled";
|
|
45
|
+
/** Value written when the settled turn's last agent run ended in a provider
|
|
46
|
+
* error. The reader treats exactly this value as "report the failure". */
|
|
47
|
+
export declare const PI_TURN_BOUNDARY_STOP_REASON_ERROR = "error";
|
|
48
|
+
export interface PiTurnBoundaryEntryData {
|
|
49
|
+
/** Stop reason of the final assistant message in the settled turn, or null
|
|
50
|
+
* when the run produced no assistant message at all. */
|
|
51
|
+
lastStopReason: string | null;
|
|
52
|
+
}
|
|
53
|
+
interface PiTurnBoundaryExtensionApi {
|
|
54
|
+
on(event: 'session_start', handler: (event: unknown) => void): void;
|
|
55
|
+
on(event: 'agent_end', handler: (event: unknown) => void): void;
|
|
56
|
+
on(event: 'agent_settled', handler: (event: unknown) => void): void;
|
|
57
|
+
appendEntry(customType: string, data?: unknown): void;
|
|
58
|
+
}
|
|
59
|
+
/** Last assistant message's stopReason within one agent run, or undefined when
|
|
60
|
+
* the run carried none. Exported for direct unit testing: the event payload
|
|
61
|
+
* shape (`messages[]`, newest last) is the part most likely to drift with Pi
|
|
62
|
+
* versions, and it must never throw inside a lifecycle handler. */
|
|
63
|
+
export declare function lastAssistantStopReason(event: unknown): string | undefined;
|
|
64
|
+
export default function registerBotmuxTurnBoundaryExtension(pi: PiTurnBoundaryExtensionApi): void;
|
|
65
|
+
export {};
|
|
66
|
+
//# sourceMappingURL=pi-turn-boundary-extension.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pi-turn-boundary-extension.d.ts","sourceRoot":"","sources":["../../../src/adapters/cli/pi-turn-boundary-extension.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,eAAO,MAAM,4BAA4B,wBAAwB,CAAC;AAElE;2EAC2E;AAC3E,eAAO,MAAM,kCAAkC,UAAU,CAAC;AAE1D,MAAM,WAAW,uBAAuB;IACtC;6DACyD;IACzD,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,UAAU,0BAA0B;IAClC,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAAC;IACpE,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAAC;IAChE,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAAC;IACpE,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CACvD;AAED;;;oEAGoE;AACpE,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAS1E;AAED,MAAM,CAAC,OAAO,UAAU,mCAAmC,CAAC,EAAE,EAAE,0BAA0B,GAAG,IAAI,CAyChG"}
|