@trigger.dev/core 4.5.0-rc.5 → 4.5.0-rc.6
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/commonjs/v3/apiClient/index.d.ts +7 -6
- package/dist/commonjs/v3/apiClient/index.js +7 -1
- package/dist/commonjs/v3/apiClient/index.js.map +1 -1
- package/dist/commonjs/v3/apiClient/runStream.js +15 -1
- package/dist/commonjs/v3/apiClient/runStream.js.map +1 -1
- package/dist/commonjs/v3/errors.d.ts +8 -0
- package/dist/commonjs/v3/errors.js +28 -1
- package/dist/commonjs/v3/errors.js.map +1 -1
- package/dist/commonjs/v3/errors.test.d.ts +1 -0
- package/dist/commonjs/v3/errors.test.js +38 -0
- package/dist/commonjs/v3/errors.test.js.map +1 -0
- package/dist/commonjs/v3/resource-catalog/catalog.d.ts +4 -0
- package/dist/commonjs/v3/resource-catalog/index.d.ts +4 -0
- package/dist/commonjs/v3/resource-catalog/index.js +3 -0
- package/dist/commonjs/v3/resource-catalog/index.js.map +1 -1
- package/dist/commonjs/v3/resource-catalog/noopResourceCatalog.d.ts +4 -0
- package/dist/commonjs/v3/resource-catalog/noopResourceCatalog.js +3 -0
- package/dist/commonjs/v3/resource-catalog/noopResourceCatalog.js.map +1 -1
- package/dist/commonjs/v3/resource-catalog/standardResourceCatalog.d.ts +5 -0
- package/dist/commonjs/v3/resource-catalog/standardResourceCatalog.js +28 -0
- package/dist/commonjs/v3/resource-catalog/standardResourceCatalog.js.map +1 -1
- package/dist/commonjs/v3/runEngineWorker/supervisor/consumerPool.js +4 -0
- package/dist/commonjs/v3/runEngineWorker/supervisor/consumerPool.js.map +1 -1
- package/dist/commonjs/v3/runEngineWorker/supervisor/consumerPool.test.js +30 -0
- package/dist/commonjs/v3/runEngineWorker/supervisor/consumerPool.test.js.map +1 -1
- package/dist/commonjs/v3/runEngineWorker/supervisor/consumerPoolMetrics.d.ts +16 -1
- package/dist/commonjs/v3/runEngineWorker/supervisor/consumerPoolMetrics.js +26 -0
- package/dist/commonjs/v3/runEngineWorker/supervisor/consumerPoolMetrics.js.map +1 -1
- package/dist/commonjs/v3/runEngineWorker/supervisor/queueConsumer.d.ts +4 -0
- package/dist/commonjs/v3/runEngineWorker/supervisor/queueConsumer.js +11 -2
- package/dist/commonjs/v3/runEngineWorker/supervisor/queueConsumer.js.map +1 -1
- package/dist/commonjs/v3/runEngineWorker/supervisor/queueConsumer.test.d.ts +1 -0
- package/dist/commonjs/v3/runEngineWorker/supervisor/queueConsumer.test.js +77 -0
- package/dist/commonjs/v3/runEngineWorker/supervisor/queueConsumer.test.js.map +1 -0
- package/dist/commonjs/v3/schemas/api.d.ts +51 -0
- package/dist/commonjs/v3/schemas/api.js +20 -4
- package/dist/commonjs/v3/schemas/api.js.map +1 -1
- package/dist/commonjs/v3/schemas/messages.d.ts +25 -0
- package/dist/commonjs/v3/schemas/messages.js +4 -0
- package/dist/commonjs/v3/schemas/messages.js.map +1 -1
- package/dist/commonjs/v3/schemas/queues.d.ts +2 -2
- package/dist/commonjs/v3/sessionStreams/chatSnapshot.d.ts +11 -0
- package/dist/commonjs/v3/sessionStreams/chatSnapshot.js +1 -0
- package/dist/commonjs/v3/sessionStreams/chatSnapshot.js.map +1 -1
- package/dist/commonjs/v3/sessionStreams/index.d.ts +1 -1
- package/dist/commonjs/v3/sessionStreams/index.js.map +1 -1
- package/dist/commonjs/v3/sessionStreams/manager.d.ts +1 -1
- package/dist/commonjs/v3/sessionStreams/manager.js +58 -28
- package/dist/commonjs/v3/sessionStreams/manager.js.map +1 -1
- package/dist/commonjs/v3/sessionStreams/noopManager.d.ts +1 -1
- package/dist/commonjs/v3/sessionStreams/noopManager.js.map +1 -1
- package/dist/commonjs/v3/sessionStreams/types.d.ts +11 -2
- package/dist/commonjs/v3/test/test-session-stream-manager.d.ts +15 -14
- package/dist/commonjs/v3/test/test-session-stream-manager.js +90 -42
- package/dist/commonjs/v3/test/test-session-stream-manager.js.map +1 -1
- package/dist/commonjs/version.js +1 -1
- package/dist/esm/v3/apiClient/index.d.ts +7 -6
- package/dist/esm/v3/apiClient/index.js +7 -1
- package/dist/esm/v3/apiClient/index.js.map +1 -1
- package/dist/esm/v3/apiClient/runStream.js +15 -1
- package/dist/esm/v3/apiClient/runStream.js.map +1 -1
- package/dist/esm/v3/errors.d.ts +8 -0
- package/dist/esm/v3/errors.js +26 -0
- package/dist/esm/v3/errors.js.map +1 -1
- package/dist/esm/v3/errors.test.d.ts +1 -0
- package/dist/esm/v3/errors.test.js +36 -0
- package/dist/esm/v3/errors.test.js.map +1 -0
- package/dist/esm/v3/resource-catalog/catalog.d.ts +4 -0
- package/dist/esm/v3/resource-catalog/index.d.ts +4 -0
- package/dist/esm/v3/resource-catalog/index.js +3 -0
- package/dist/esm/v3/resource-catalog/index.js.map +1 -1
- package/dist/esm/v3/resource-catalog/noopResourceCatalog.d.ts +4 -0
- package/dist/esm/v3/resource-catalog/noopResourceCatalog.js +3 -0
- package/dist/esm/v3/resource-catalog/noopResourceCatalog.js.map +1 -1
- package/dist/esm/v3/resource-catalog/standardResourceCatalog.d.ts +5 -0
- package/dist/esm/v3/resource-catalog/standardResourceCatalog.js +28 -0
- package/dist/esm/v3/resource-catalog/standardResourceCatalog.js.map +1 -1
- package/dist/esm/v3/runEngineWorker/supervisor/consumerPool.js +4 -0
- package/dist/esm/v3/runEngineWorker/supervisor/consumerPool.js.map +1 -1
- package/dist/esm/v3/runEngineWorker/supervisor/consumerPool.test.js +30 -0
- package/dist/esm/v3/runEngineWorker/supervisor/consumerPool.test.js.map +1 -1
- package/dist/esm/v3/runEngineWorker/supervisor/consumerPoolMetrics.d.ts +16 -1
- package/dist/esm/v3/runEngineWorker/supervisor/consumerPoolMetrics.js +27 -1
- package/dist/esm/v3/runEngineWorker/supervisor/consumerPoolMetrics.js.map +1 -1
- package/dist/esm/v3/runEngineWorker/supervisor/queueConsumer.d.ts +4 -0
- package/dist/esm/v3/runEngineWorker/supervisor/queueConsumer.js +11 -2
- package/dist/esm/v3/runEngineWorker/supervisor/queueConsumer.js.map +1 -1
- package/dist/esm/v3/runEngineWorker/supervisor/queueConsumer.test.d.ts +1 -0
- package/dist/esm/v3/runEngineWorker/supervisor/queueConsumer.test.js +75 -0
- package/dist/esm/v3/runEngineWorker/supervisor/queueConsumer.test.js.map +1 -0
- package/dist/esm/v3/schemas/api.d.ts +51 -0
- package/dist/esm/v3/schemas/api.js +16 -0
- package/dist/esm/v3/schemas/api.js.map +1 -1
- package/dist/esm/v3/schemas/messages.d.ts +25 -0
- package/dist/esm/v3/schemas/messages.js +4 -0
- package/dist/esm/v3/schemas/messages.js.map +1 -1
- package/dist/esm/v3/schemas/queues.d.ts +2 -2
- package/dist/esm/v3/sessionStreams/chatSnapshot.d.ts +11 -0
- package/dist/esm/v3/sessionStreams/chatSnapshot.js +1 -0
- package/dist/esm/v3/sessionStreams/chatSnapshot.js.map +1 -1
- package/dist/esm/v3/sessionStreams/index.d.ts +1 -1
- package/dist/esm/v3/sessionStreams/index.js.map +1 -1
- package/dist/esm/v3/sessionStreams/manager.d.ts +1 -1
- package/dist/esm/v3/sessionStreams/manager.js +58 -28
- package/dist/esm/v3/sessionStreams/manager.js.map +1 -1
- package/dist/esm/v3/sessionStreams/noopManager.d.ts +1 -1
- package/dist/esm/v3/sessionStreams/noopManager.js.map +1 -1
- package/dist/esm/v3/sessionStreams/types.d.ts +11 -2
- package/dist/esm/v3/test/test-session-stream-manager.d.ts +15 -14
- package/dist/esm/v3/test/test-session-stream-manager.js +90 -42
- package/dist/esm/v3/test/test-session-stream-manager.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/package.json +3 -2
|
@@ -81,31 +81,44 @@ class StandardSessionStreamManager {
|
|
|
81
81
|
// so the tail can subscribe again now that callers want delivery back.
|
|
82
82
|
this.explicitlyDisconnected.delete(key);
|
|
83
83
|
this.#ensureTailConnected(sessionId, io);
|
|
84
|
+
// Selective drain: offer each buffered record to the new handler and
|
|
85
|
+
// remove ONLY the ones it consumed (returned `true` — e.g. the
|
|
86
|
+
// messages facade for message-kind records). Consumed records advance
|
|
87
|
+
// the committed-consume cursor, so a worker using `messagesInput.on()`
|
|
88
|
+
// for user-message delivery persists a `.in` cursor that matches what
|
|
89
|
+
// the handler processed. Records the handler did not consume (other
|
|
90
|
+
// kinds) STAY buffered for a future `once()` or a different handler —
|
|
91
|
+
// a blind drain here either swallowed them (delivered to a handler
|
|
92
|
+
// that filtered them out, then deleted) or re-delivered already-
|
|
93
|
+
// processed messages into every newly attached per-turn handler,
|
|
94
|
+
// duplicating turns.
|
|
84
95
|
const buffered = this.buffer.get(key);
|
|
85
96
|
if (buffered && buffered.length > 0) {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
//
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
// that lags behind the records the handler already processed, and
|
|
96
|
-
// the next boot would re-deliver them.
|
|
97
|
-
const seqList = this.bufferSeqNums.get(key);
|
|
98
|
-
if (seqList) {
|
|
99
|
-
for (const s of seqList) {
|
|
97
|
+
const seqList = this.bufferSeqNums.get(key) ?? [];
|
|
98
|
+
const keptRecords = [];
|
|
99
|
+
// Kept in lock-step with `keptRecords` — drifting lengths would map
|
|
100
|
+
// seq_nums to the wrong records on subsequent shifts.
|
|
101
|
+
const keptSeqNums = [];
|
|
102
|
+
for (let i = 0; i < buffered.length; i++) {
|
|
103
|
+
const consumed = this.#invokeHandler(handler, buffered[i]);
|
|
104
|
+
if (consumed) {
|
|
105
|
+
const s = seqList[i];
|
|
100
106
|
if (s !== undefined)
|
|
101
107
|
this.#advanceLastDispatched(key, s);
|
|
102
108
|
}
|
|
109
|
+
else {
|
|
110
|
+
keptRecords.push(buffered[i]);
|
|
111
|
+
keptSeqNums.push(seqList[i]);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
if (keptRecords.length > 0) {
|
|
115
|
+
this.buffer.set(key, keptRecords);
|
|
116
|
+
this.bufferSeqNums.set(key, keptSeqNums);
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
this.buffer.delete(key);
|
|
120
|
+
this.bufferSeqNums.delete(key);
|
|
103
121
|
}
|
|
104
|
-
this.buffer.delete(key);
|
|
105
|
-
// Keep `bufferSeqNums` in lock-step with `buffer` — without this,
|
|
106
|
-
// the parallel array desyncs and the next `#dispatch` that buffers
|
|
107
|
-
// a record would shift a stale seqNum into `lastDispatchedSeqNum`.
|
|
108
|
-
this.bufferSeqNums.delete(key);
|
|
109
122
|
}
|
|
110
123
|
return {
|
|
111
124
|
off: () => {
|
|
@@ -440,13 +453,21 @@ class StandardSessionStreamManager {
|
|
|
440
453
|
this.#invokeHandlers(key, data);
|
|
441
454
|
return;
|
|
442
455
|
}
|
|
443
|
-
// Persistent handlers
|
|
444
|
-
//
|
|
445
|
-
//
|
|
446
|
-
//
|
|
447
|
-
// chat.agent's
|
|
448
|
-
//
|
|
449
|
-
|
|
456
|
+
// Persistent handlers get a copy of the chunk. A handler that
|
|
457
|
+
// synchronously returns `true` CONSUMES it (e.g. the messages facade
|
|
458
|
+
// for message-kind records): the record must not also be buffered, or
|
|
459
|
+
// the next `on()` attach / `once()` would deliver it a second time —
|
|
460
|
+
// in chat.agent's turn loop that duplicated user messages into a
|
|
461
|
+
// second turn. Records no handler consumed (e.g. a message arriving
|
|
462
|
+
// while only the stop facade is attached during preload) are buffered
|
|
463
|
+
// so a subsequent `once()` can still pick them up.
|
|
464
|
+
const consumed = this.#invokeHandlers(key, data);
|
|
465
|
+
if (consumed) {
|
|
466
|
+
if (seqNum !== undefined) {
|
|
467
|
+
this.#advanceLastDispatched(key, seqNum);
|
|
468
|
+
}
|
|
469
|
+
return;
|
|
470
|
+
}
|
|
450
471
|
let buffered = this.buffer.get(key);
|
|
451
472
|
if (!buffered) {
|
|
452
473
|
buffered = [];
|
|
@@ -464,17 +485,25 @@ class StandardSessionStreamManager {
|
|
|
464
485
|
// shift.
|
|
465
486
|
bufferedSeqs.push(seqNum);
|
|
466
487
|
}
|
|
488
|
+
/** Returns true when any handler consumed the record. All handlers are invoked regardless. */
|
|
467
489
|
#invokeHandlers(key, data) {
|
|
468
490
|
const handlers = this.handlers.get(key);
|
|
469
491
|
if (!handlers)
|
|
470
|
-
return;
|
|
492
|
+
return false;
|
|
493
|
+
let consumed = false;
|
|
471
494
|
for (const handler of handlers) {
|
|
472
|
-
this.#invokeHandler(handler, data)
|
|
495
|
+
if (this.#invokeHandler(handler, data)) {
|
|
496
|
+
consumed = true;
|
|
497
|
+
}
|
|
473
498
|
}
|
|
499
|
+
return consumed;
|
|
474
500
|
}
|
|
501
|
+
/** Returns true when the handler synchronously consumed the record (returned `true`). */
|
|
475
502
|
#invokeHandler(handler, data) {
|
|
476
503
|
try {
|
|
477
504
|
const result = handler(data);
|
|
505
|
+
if (result === true)
|
|
506
|
+
return true;
|
|
478
507
|
if (result && typeof result === "object" && "catch" in result) {
|
|
479
508
|
result.catch((error) => {
|
|
480
509
|
if (this.debug) {
|
|
@@ -488,6 +517,7 @@ class StandardSessionStreamManager {
|
|
|
488
517
|
console.error("[SessionStreamManager] Handler error:", error);
|
|
489
518
|
}
|
|
490
519
|
}
|
|
520
|
+
return false;
|
|
491
521
|
}
|
|
492
522
|
#removeOnceWaiter(key, waiter) {
|
|
493
523
|
// Centralized cleanup — both timeout and explicit abort paths funnel
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../../src/v3/sessionStreams/manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../../src/v3/sessionStreams/manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { InputStreamOnceOptions } from "../realtimeStreams/types.js";
|
|
|
2
2
|
import { InputStreamOncePromise } from "../inputStreams/types.js";
|
|
3
3
|
import { SessionChannelIO, SessionStreamManager } from "./types.js";
|
|
4
4
|
export declare class NoopSessionStreamManager implements SessionStreamManager {
|
|
5
|
-
on(_sessionId: string, _io: SessionChannelIO, _handler: (data: unknown) => void | Promise<void>): {
|
|
5
|
+
on(_sessionId: string, _io: SessionChannelIO, _handler: (data: unknown) => void | boolean | Promise<void>): {
|
|
6
6
|
off: () => void;
|
|
7
7
|
};
|
|
8
8
|
once(_sessionId: string, _io: SessionChannelIO, _options?: InputStreamOnceOptions): InputStreamOncePromise<unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"noopManager.js","sourceRoot":"","sources":["../../../../src/v3/sessionStreams/noopManager.ts"],"names":[],"mappings":";;;AACA,uDAAkE;AAGlE,MAAa,wBAAwB;IACnC,EAAE,CACA,UAAkB,EAClB,GAAqB,EACrB,
|
|
1
|
+
{"version":3,"file":"noopManager.js","sourceRoot":"","sources":["../../../../src/v3/sessionStreams/noopManager.ts"],"names":[],"mappings":";;;AACA,uDAAkE;AAGlE,MAAa,wBAAwB;IACnC,EAAE,CACA,UAAkB,EAClB,GAAqB,EACrB,QAA2D;QAE3D,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,CACF,UAAkB,EAClB,GAAqB,EACrB,QAAiC;QAEjC,OAAO,IAAI,iCAAsB,CAAC,GAAG,EAAE;YACrC,+BAA+B;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,UAAkB,EAAE,GAAqB;QAC5C,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,UAAU,CAAC,UAAkB,EAAE,GAAqB;QAClD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,aAAa,CAAC,UAAkB,EAAE,GAAqB,EAAE,OAAe,IAAS,CAAC;IAElF,oBAAoB,CAAC,UAAkB,EAAE,GAAqB;QAC5D,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,uBAAuB,CACrB,UAAkB,EAClB,GAAqB,EACrB,OAAe,IACR,CAAC;IAEV,eAAe,CACb,UAAkB,EAClB,GAAqB,EACrB,aAAiC,IAC1B,CAAC;IAEV,WAAW,CAAC,UAAkB,EAAE,GAAqB;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB,CAAC,UAAkB,EAAE,GAAqB,IAAS,CAAC;IAEpE,aAAa,KAAU,CAAC;IAExB,KAAK,KAAU,CAAC;IAEhB,UAAU,KAAU,CAAC;CACtB;AAxDD,4DAwDC"}
|
|
@@ -15,8 +15,17 @@ export type SessionChannelIO = "out" | "in";
|
|
|
15
15
|
* `.on` / `.once` / `.peek` / `.wait` / `.waitWithIdleTimeout`.
|
|
16
16
|
*/
|
|
17
17
|
export interface SessionStreamManager {
|
|
18
|
-
/**
|
|
19
|
-
|
|
18
|
+
/**
|
|
19
|
+
* Register a handler that fires every time data arrives on the given channel.
|
|
20
|
+
*
|
|
21
|
+
* A handler that synchronously returns `true` CONSUMES the record: it is
|
|
22
|
+
* not buffered for a later `once()` and the committed-consume cursor
|
|
23
|
+
* advances past it. Any other return value (including a Promise) leaves
|
|
24
|
+
* the record available to other consumers. Kind-filtering facades return
|
|
25
|
+
* `true` for the kinds they own so the same record is never delivered
|
|
26
|
+
* twice — once to the handler and again via a buffer drain.
|
|
27
|
+
*/
|
|
28
|
+
on(sessionId: string, io: SessionChannelIO, handler: (data: unknown) => void | boolean | Promise<void>): {
|
|
20
29
|
off: () => void;
|
|
21
30
|
};
|
|
22
31
|
/** Wait for the next record on the given channel (buffered or live). */
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { InputStreamOncePromise } from "../inputStreams/types.js";
|
|
2
2
|
import type { InputStreamOnceOptions } from "../realtimeStreams/types.js";
|
|
3
3
|
import type { SessionChannelIO, SessionStreamManager } from "../sessionStreams/types.js";
|
|
4
|
-
type Handler = (data: unknown) => void | Promise<void>;
|
|
4
|
+
type Handler = (data: unknown) => void | boolean | Promise<void>;
|
|
5
5
|
/**
|
|
6
6
|
* In-memory implementation of `SessionStreamManager` for unit tests. Same
|
|
7
7
|
* shape as {@link TestInputStreamManager} but keyed on `(sessionId, io)`.
|
|
@@ -12,6 +12,7 @@ type Handler = (data: unknown) => void | Promise<void>;
|
|
|
12
12
|
* registered are buffered so the first `once()` picks them up.
|
|
13
13
|
*/
|
|
14
14
|
export declare class TestSessionStreamManager implements SessionStreamManager {
|
|
15
|
+
#private;
|
|
15
16
|
private handlers;
|
|
16
17
|
private onceWaiters;
|
|
17
18
|
private buffer;
|
|
@@ -34,20 +35,20 @@ export declare class TestSessionStreamManager implements SessionStreamManager {
|
|
|
34
35
|
/**
|
|
35
36
|
* Push a record onto the given channel.
|
|
36
37
|
*
|
|
37
|
-
* Dispatch rules —
|
|
38
|
-
* that makes unit tests deterministic:
|
|
38
|
+
* Dispatch rules — same as the production manager:
|
|
39
39
|
*
|
|
40
|
-
* 1. **
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
40
|
+
* 1. **A pending `.once` waiter consumes first.** Handlers still observe
|
|
41
|
+
* a copy.
|
|
42
|
+
* 2. **Otherwise handlers observe.** A handler that synchronously
|
|
43
|
+
* returns `true` consumes the record (kind-filtering facades do this
|
|
44
|
+
* for the kinds they own) — it is NOT buffered.
|
|
45
|
+
* 3. **Records no one consumed are buffered** for the next `.once` call
|
|
46
|
+
* or the next consuming `on()` attach.
|
|
47
|
+
*
|
|
48
|
+
* Handler promises are awaited before resolving so test code can rely
|
|
49
|
+
* on async handler work having settled by the time `__sendFromTest`
|
|
50
|
+
* resolves. Consumption is decided on the synchronous return value,
|
|
51
|
+
* exactly like production.
|
|
51
52
|
*/
|
|
52
53
|
__sendFromTest(sessionId: string, io: SessionChannelIO, data: unknown): Promise<void>;
|
|
53
54
|
/**
|
|
@@ -27,20 +27,35 @@ class TestSessionStreamManager {
|
|
|
27
27
|
this.handlers.set(key, set);
|
|
28
28
|
}
|
|
29
29
|
set.add(handler);
|
|
30
|
-
//
|
|
31
|
-
//
|
|
32
|
-
//
|
|
33
|
-
//
|
|
34
|
-
//
|
|
35
|
-
//
|
|
36
|
-
//
|
|
37
|
-
//
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
30
|
+
// Selective drain, matching the production manager: offer each
|
|
31
|
+
// buffered record to the new handler and remove ONLY the ones it
|
|
32
|
+
// consumed (returned `true`). Records the handler filtered out (other
|
|
33
|
+
// kinds) stay buffered for a future `once()`. This is the corrected
|
|
34
|
+
// form of two historical bugs: a blind drain swallowed boot-phase user
|
|
35
|
+
// messages into the stop facade (which ignores `kind: "message"`),
|
|
36
|
+
// and no-drain-at-all let production re-deliver already-processed
|
|
37
|
+
// messages into every newly attached per-turn handler.
|
|
38
|
+
const buffered = this.buffer.get(key);
|
|
39
|
+
if (buffered && buffered.length > 0) {
|
|
40
|
+
const kept = [];
|
|
41
|
+
for (const data of buffered) {
|
|
42
|
+
let consumed = false;
|
|
43
|
+
try {
|
|
44
|
+
consumed = handler(data) === true;
|
|
45
|
+
}
|
|
46
|
+
catch {
|
|
47
|
+
// Never let a handler error break test state
|
|
48
|
+
}
|
|
49
|
+
if (!consumed)
|
|
50
|
+
kept.push(data);
|
|
51
|
+
}
|
|
52
|
+
if (kept.length > 0) {
|
|
53
|
+
this.buffer.set(key, kept);
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
this.buffer.delete(key);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
44
59
|
return {
|
|
45
60
|
off: () => {
|
|
46
61
|
this.handlers.get(key)?.delete(handler);
|
|
@@ -160,38 +175,23 @@ class TestSessionStreamManager {
|
|
|
160
175
|
/**
|
|
161
176
|
* Push a record onto the given channel.
|
|
162
177
|
*
|
|
163
|
-
* Dispatch rules —
|
|
164
|
-
*
|
|
178
|
+
* Dispatch rules — same as the production manager:
|
|
179
|
+
*
|
|
180
|
+
* 1. **A pending `.once` waiter consumes first.** Handlers still observe
|
|
181
|
+
* a copy.
|
|
182
|
+
* 2. **Otherwise handlers observe.** A handler that synchronously
|
|
183
|
+
* returns `true` consumes the record (kind-filtering facades do this
|
|
184
|
+
* for the kinds they own) — it is NOT buffered.
|
|
185
|
+
* 3. **Records no one consumed are buffered** for the next `.once` call
|
|
186
|
+
* or the next consuming `on()` attach.
|
|
165
187
|
*
|
|
166
|
-
*
|
|
167
|
-
*
|
|
168
|
-
*
|
|
169
|
-
*
|
|
170
|
-
* 3. **If no waiter, the record is buffered for the next `.once` call.**
|
|
171
|
-
* Production discards records that only match handlers — but in
|
|
172
|
-
* production the SSE tail introduces enough latency that the next
|
|
173
|
-
* `.once` is usually registered before the next record arrives. Tests
|
|
174
|
-
* send synchronously right after `turn-complete`, so without this
|
|
175
|
-
* buffer the next `waitWithIdleTimeout` would race and lose the
|
|
176
|
-
* message. The buffer is the only deviation from production semantics.
|
|
188
|
+
* Handler promises are awaited before resolving so test code can rely
|
|
189
|
+
* on async handler work having settled by the time `__sendFromTest`
|
|
190
|
+
* resolves. Consumption is decided on the synchronous return value,
|
|
191
|
+
* exactly like production.
|
|
177
192
|
*/
|
|
178
193
|
async __sendFromTest(sessionId, io, data) {
|
|
179
194
|
const key = keyFor(sessionId, io);
|
|
180
|
-
const handlers = this.handlers.get(key);
|
|
181
|
-
if (handlers && handlers.size > 0) {
|
|
182
|
-
// Awaited so test code can rely on handlers having completed by the
|
|
183
|
-
// time `__sendFromTest` resolves. Wrapped per-handler so a
|
|
184
|
-
// throwing/rejecting handler doesn't poison Promise.all and break
|
|
185
|
-
// unrelated test state.
|
|
186
|
-
await Promise.all(Array.from(handlers).map(async (h) => {
|
|
187
|
-
try {
|
|
188
|
-
await h(data);
|
|
189
|
-
}
|
|
190
|
-
catch {
|
|
191
|
-
// Never let a handler error break test state
|
|
192
|
-
}
|
|
193
|
-
}));
|
|
194
|
-
}
|
|
195
195
|
const waiters = this.onceWaiters.get(key);
|
|
196
196
|
if (waiters && waiters.length > 0) {
|
|
197
197
|
const w = waiters.shift();
|
|
@@ -203,6 +203,28 @@ class TestSessionStreamManager {
|
|
|
203
203
|
w.signal.removeEventListener("abort", w.abortHandler);
|
|
204
204
|
}
|
|
205
205
|
w.resolve({ ok: true, output: data });
|
|
206
|
+
await this.#invokeHandlers(key, data);
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
const consumed = await this.#invokeHandlers(key, data);
|
|
210
|
+
if (consumed)
|
|
211
|
+
return;
|
|
212
|
+
// Re-check waiters: handler invocation above is awaited (unlike the
|
|
213
|
+
// synchronous production dispatch), and the runtime commonly registers
|
|
214
|
+
// its next `once()` during that window — e.g. the turn loop reaching
|
|
215
|
+
// `waitWithIdleTimeout` while a handler settles. Without this second
|
|
216
|
+
// look the record would be buffered while the fresh waiter hangs.
|
|
217
|
+
const lateWaiters = this.onceWaiters.get(key);
|
|
218
|
+
if (lateWaiters && lateWaiters.length > 0) {
|
|
219
|
+
const w = lateWaiters.shift();
|
|
220
|
+
if (lateWaiters.length === 0)
|
|
221
|
+
this.onceWaiters.delete(key);
|
|
222
|
+
if (w.timer)
|
|
223
|
+
clearTimeout(w.timer);
|
|
224
|
+
if (w.signal && w.abortHandler) {
|
|
225
|
+
w.signal.removeEventListener("abort", w.abortHandler);
|
|
226
|
+
}
|
|
227
|
+
w.resolve({ ok: true, output: data });
|
|
206
228
|
return;
|
|
207
229
|
}
|
|
208
230
|
let buffered = this.buffer.get(key);
|
|
@@ -212,6 +234,32 @@ class TestSessionStreamManager {
|
|
|
212
234
|
}
|
|
213
235
|
buffered.push(data);
|
|
214
236
|
}
|
|
237
|
+
/**
|
|
238
|
+
* Invoke all handlers; resolves once any returned promises settle.
|
|
239
|
+
* Returns true when any handler synchronously consumed the record.
|
|
240
|
+
* Wrapped per-handler so a throwing/rejecting handler doesn't poison
|
|
241
|
+
* Promise.all and break unrelated test state.
|
|
242
|
+
*/
|
|
243
|
+
async #invokeHandlers(key, data) {
|
|
244
|
+
const handlers = this.handlers.get(key);
|
|
245
|
+
if (!handlers || handlers.size === 0)
|
|
246
|
+
return false;
|
|
247
|
+
let consumed = false;
|
|
248
|
+
await Promise.all(Array.from(handlers).map(async (h) => {
|
|
249
|
+
try {
|
|
250
|
+
const result = h(data);
|
|
251
|
+
if (result === true) {
|
|
252
|
+
consumed = true;
|
|
253
|
+
return;
|
|
254
|
+
}
|
|
255
|
+
await result;
|
|
256
|
+
}
|
|
257
|
+
catch {
|
|
258
|
+
// Never let a handler error break test state
|
|
259
|
+
}
|
|
260
|
+
}));
|
|
261
|
+
return consumed;
|
|
262
|
+
}
|
|
215
263
|
/**
|
|
216
264
|
* Immediately resolve every pending `once()` waiter for the given channel
|
|
217
265
|
* with a timeout error. Simulates a closed stream (e.g. session closed).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-session-stream-manager.js","sourceRoot":"","sources":["../../../../src/v3/test/test-session-stream-manager.ts"],"names":[],"mappings":";;;AAAA,uDAIkC;
|
|
1
|
+
{"version":3,"file":"test-session-stream-manager.js","sourceRoot":"","sources":["../../../../src/v3/test/test-session-stream-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/commonjs/version.js
CHANGED
|
@@ -866,6 +866,7 @@ export declare class ApiClient {
|
|
|
866
866
|
id: string;
|
|
867
867
|
seqNum: number;
|
|
868
868
|
data?: unknown;
|
|
869
|
+
headers?: [string, string][] | undefined;
|
|
869
870
|
}[];
|
|
870
871
|
}>;
|
|
871
872
|
/**
|
|
@@ -926,9 +927,9 @@ export declare class ApiClient {
|
|
|
926
927
|
name: string;
|
|
927
928
|
id: string;
|
|
928
929
|
concurrencyLimit: number | null;
|
|
930
|
+
paused: boolean;
|
|
929
931
|
running: number;
|
|
930
932
|
queued: number;
|
|
931
|
-
paused: boolean;
|
|
932
933
|
concurrency?: {
|
|
933
934
|
base: number | null;
|
|
934
935
|
override: number | null;
|
|
@@ -941,9 +942,9 @@ export declare class ApiClient {
|
|
|
941
942
|
name: string;
|
|
942
943
|
id: string;
|
|
943
944
|
concurrencyLimit: number | null;
|
|
945
|
+
paused: boolean;
|
|
944
946
|
running: number;
|
|
945
947
|
queued: number;
|
|
946
|
-
paused: boolean;
|
|
947
948
|
concurrency?: {
|
|
948
949
|
base: number | null;
|
|
949
950
|
override: number | null;
|
|
@@ -957,9 +958,9 @@ export declare class ApiClient {
|
|
|
957
958
|
name: string;
|
|
958
959
|
id: string;
|
|
959
960
|
concurrencyLimit: number | null;
|
|
961
|
+
paused: boolean;
|
|
960
962
|
running: number;
|
|
961
963
|
queued: number;
|
|
962
|
-
paused: boolean;
|
|
963
964
|
concurrency?: {
|
|
964
965
|
base: number | null;
|
|
965
966
|
override: number | null;
|
|
@@ -973,9 +974,9 @@ export declare class ApiClient {
|
|
|
973
974
|
name: string;
|
|
974
975
|
id: string;
|
|
975
976
|
concurrencyLimit: number | null;
|
|
977
|
+
paused: boolean;
|
|
976
978
|
running: number;
|
|
977
979
|
queued: number;
|
|
978
|
-
paused: boolean;
|
|
979
980
|
concurrency?: {
|
|
980
981
|
base: number | null;
|
|
981
982
|
override: number | null;
|
|
@@ -989,9 +990,9 @@ export declare class ApiClient {
|
|
|
989
990
|
name: string;
|
|
990
991
|
id: string;
|
|
991
992
|
concurrencyLimit: number | null;
|
|
993
|
+
paused: boolean;
|
|
992
994
|
running: number;
|
|
993
995
|
queued: number;
|
|
994
|
-
paused: boolean;
|
|
995
996
|
concurrency?: {
|
|
996
997
|
base: number | null;
|
|
997
998
|
override: number | null;
|
|
@@ -1005,9 +1006,9 @@ export declare class ApiClient {
|
|
|
1005
1006
|
name: string;
|
|
1006
1007
|
id: string;
|
|
1007
1008
|
concurrencyLimit: number | null;
|
|
1009
|
+
paused: boolean;
|
|
1008
1010
|
running: number;
|
|
1009
1011
|
queued: number;
|
|
1010
|
-
paused: boolean;
|
|
1011
1012
|
concurrency?: {
|
|
1012
1013
|
base: number | null;
|
|
1013
1014
|
override: number | null;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { nanoid } from "nanoid";
|
|
1
2
|
import { z } from "zod";
|
|
2
3
|
import { VERSION } from "../../version.js";
|
|
3
4
|
import { generateJWT } from "../jwt.js";
|
|
@@ -648,9 +649,14 @@ export class ApiClient {
|
|
|
648
649
|
}));
|
|
649
650
|
}
|
|
650
651
|
async appendToSessionStream(sessionIdOrExternalId, io, part, requestOptions) {
|
|
652
|
+
// Generated once per logical append, outside zodfetch, so its internal
|
|
653
|
+
// retries reuse the same part id and the server-side dedupe collapses a
|
|
654
|
+
// retried POST whose first attempt actually committed. Full-length nanoid
|
|
655
|
+
// (~126 bits) to match the browser transport's randomUUID entropy.
|
|
656
|
+
const partId = nanoid();
|
|
651
657
|
return zodfetch(AppendToStreamResponseBody, `${this.baseUrl}/realtime/v1/sessions/${encodeURIComponent(sessionIdOrExternalId)}/${io}/append`, {
|
|
652
658
|
method: "POST",
|
|
653
|
-
headers: this.#getHeaders(false),
|
|
659
|
+
headers: { ...this.#getHeaders(false), "X-Part-Id": partId },
|
|
654
660
|
body: part,
|
|
655
661
|
}, mergeRequestOptions(this.defaultRequestOptions, requestOptions));
|
|
656
662
|
}
|