@vibes.diy/call-ai-v2 12.2.8 → 12.2.9
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/package.json +2 -2
- package/stats-stream.js +13 -5
- package/stats-stream.js.map +1 -1
- package/stats-stream.test.js +12 -0
- package/stats-stream.test.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vibes.diy/call-ai-v2",
|
|
3
|
-
"version": "12.2.
|
|
3
|
+
"version": "12.2.9",
|
|
4
4
|
"description": "",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "index.js",
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"license": "Apache-2.0",
|
|
16
16
|
"dependencies": {
|
|
17
17
|
"@adviser/cement": "~0.5.34",
|
|
18
|
-
"@vibes.diy/identity": "^12.2.
|
|
18
|
+
"@vibes.diy/identity": "^12.2.9",
|
|
19
19
|
"arktype": "~2.2.3",
|
|
20
20
|
"cmd-ts": "~0.15.0",
|
|
21
21
|
"mime": "~4.1.0",
|
package/stats-stream.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { exception2Result } from "@adviser/cement";
|
|
1
2
|
import { type } from "arktype";
|
|
2
3
|
import { CoercedDate } from "./types.js";
|
|
3
4
|
export const StatsCollectMsg = type({
|
|
@@ -9,24 +10,31 @@ export const isStatsCollect = (msg, streamId) => !(StatsCollectMsg(msg) instance
|
|
|
9
10
|
export function createStatsCollector(streamId, intervalMs = 1000) {
|
|
10
11
|
let intervalId;
|
|
11
12
|
let controller;
|
|
13
|
+
function stopCollecting() {
|
|
14
|
+
if (intervalId !== undefined) {
|
|
15
|
+
clearInterval(intervalId);
|
|
16
|
+
intervalId = undefined;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
12
19
|
return new TransformStream({
|
|
13
20
|
start(ctrl) {
|
|
14
21
|
controller = ctrl;
|
|
15
22
|
intervalId = setInterval(() => {
|
|
16
|
-
controller?.enqueue({
|
|
23
|
+
const injected = exception2Result(() => controller?.enqueue({
|
|
17
24
|
type: "stats.collect",
|
|
18
25
|
streamId,
|
|
19
26
|
timestamp: new Date(),
|
|
20
|
-
});
|
|
27
|
+
}));
|
|
28
|
+
if (injected.isErr()) {
|
|
29
|
+
stopCollecting();
|
|
30
|
+
}
|
|
21
31
|
}, intervalMs);
|
|
22
32
|
},
|
|
23
33
|
transform(chunk, ctrl) {
|
|
24
34
|
ctrl.enqueue(chunk);
|
|
25
35
|
},
|
|
26
36
|
flush() {
|
|
27
|
-
|
|
28
|
-
clearInterval(intervalId);
|
|
29
|
-
}
|
|
37
|
+
stopCollecting();
|
|
30
38
|
controller?.enqueue({
|
|
31
39
|
type: "stats.collect",
|
|
32
40
|
streamId,
|
package/stats-stream.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stats-stream.js","sourceRoot":"","sources":["../jsr/stats-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;IAClC,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,WAAW;CACvB,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAY,EAAE,QAAiB,EAA0B,EAAE,CACxF,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAK,GAAuB,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;AAKlH,MAAM,UAAU,oBAAoB,CAAI,QAAgB,EAAE,UAAU,GAAG,IAAI;IACzE,IAAI,UAAsD,CAAC;IAC3D,IAAI,UAA6E,CAAC;IAElF,OAAO,IAAI,eAAe,CAAyB;QACjD,KAAK,CAAC,IAAI;YACR,UAAU,GAAG,IAAI,CAAC;YAClB,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;
|
|
1
|
+
{"version":3,"file":"stats-stream.js","sourceRoot":"","sources":["../jsr/stats-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;IAClC,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,WAAW;CACvB,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAY,EAAE,QAAiB,EAA0B,EAAE,CACxF,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAK,GAAuB,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;AAKlH,MAAM,UAAU,oBAAoB,CAAI,QAAgB,EAAE,UAAU,GAAG,IAAI;IACzE,IAAI,UAAsD,CAAC;IAC3D,IAAI,UAA6E,CAAC;IAElF,SAAS,cAAc;QACrB,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,aAAa,CAAC,UAAU,CAAC,CAAC;YAC1B,UAAU,GAAG,SAAS,CAAC;QACzB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,eAAe,CAAyB;QACjD,KAAK,CAAC,IAAI;YACR,UAAU,GAAG,IAAI,CAAC;YAClB,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;gBAM5B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,EAAE,CACrC,UAAU,EAAE,OAAO,CAAC;oBAClB,IAAI,EAAE,eAAe;oBACrB,QAAQ;oBACR,SAAS,EAAE,IAAI,IAAI,EAAE;iBACtB,CAAC,CACH,CAAC;gBACF,IAAI,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;oBACrB,cAAc,EAAE,CAAC;gBACnB,CAAC;YACH,CAAC,EAAE,UAAU,CAAC,CAAC;QACjB,CAAC;QACD,SAAS,CAAC,KAAK,EAAE,IAAI;YACnB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;QACD,KAAK;YACH,cAAc,EAAE,CAAC;YAEjB,UAAU,EAAE,OAAO,CAAC;gBAClB,IAAI,EAAE,eAAe;gBACrB,QAAQ;gBACR,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
package/stats-stream.test.js
CHANGED
|
@@ -71,6 +71,18 @@ describe("stats-stream", () => {
|
|
|
71
71
|
streamId: "test-stream",
|
|
72
72
|
});
|
|
73
73
|
});
|
|
74
|
+
it("stops the interval when the stream is cancelled instead of leaking it", async () => {
|
|
75
|
+
const collector = createStatsCollector("cancelled-stream", 100);
|
|
76
|
+
const input = new ReadableStream({
|
|
77
|
+
start(controller) {
|
|
78
|
+
controller.enqueue(new Uint8Array([1]));
|
|
79
|
+
},
|
|
80
|
+
});
|
|
81
|
+
const output = input.pipeThrough(collector);
|
|
82
|
+
await output.cancel("caller went away");
|
|
83
|
+
await vi.advanceTimersByTimeAsync(500);
|
|
84
|
+
expect(vi.getTimerCount()).toBe(0);
|
|
85
|
+
});
|
|
74
86
|
it("uses correct streamId in emitted messages", async () => {
|
|
75
87
|
const collector = createStatsCollector("my-unique-id", 10000);
|
|
76
88
|
const input = new ReadableStream({
|
package/stats-stream.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stats-stream.test.js","sourceRoot":"","sources":["../jsr/stats-stream.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"stats-stream.test.js","sourceRoot":"","sources":["../jsr/stats-stream.test.ts"],"names":[],"mappings":"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"}
|