@botiverse/oar 0.1.3 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -7
- package/dist/contracts/records.d.ts +74 -19
- package/dist/contracts/records.d.ts.map +1 -1
- package/dist/contracts/records.js +11 -2
- package/dist/contracts/records.js.map +1 -1
- package/dist/contracts/session.d.ts +33 -7
- package/dist/contracts/session.d.ts.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/observe/agent-status.d.ts +3 -3
- package/dist/observe/agent-status.d.ts.map +1 -1
- package/dist/observe/agent-status.js +9 -9
- package/dist/observe/agent-status.js.map +1 -1
- package/dist/observe/events.d.ts +29 -0
- package/dist/observe/events.d.ts.map +1 -0
- package/dist/observe/events.js +134 -0
- package/dist/observe/events.js.map +1 -0
- package/dist/observe/index.d.ts +2 -2
- package/dist/observe/index.d.ts.map +1 -1
- package/dist/observe/index.js +2 -2
- package/dist/observe/index.js.map +1 -1
- package/dist/observe/observe-agent.js +1 -1
- package/dist/observe/stall-observer.d.ts +1 -1
- package/dist/observe/stall-observer.d.ts.map +1 -1
- package/dist/observe/stall-observer.js +3 -3
- package/dist/observe/stall-observer.js.map +1 -1
- package/dist/observe/tool-activity.d.ts +2 -2
- package/dist/observe/tool-activity.d.ts.map +1 -1
- package/dist/observe/tool-activity.js +1 -1
- package/dist/observe/tool-activity.js.map +1 -1
- package/dist/observe/turns.d.ts +3 -3
- package/dist/observe/turns.d.ts.map +1 -1
- package/dist/observe/turns.js +4 -4
- package/dist/observe/turns.js.map +1 -1
- package/dist/observe/usage.d.ts +4 -4
- package/dist/observe/usage.d.ts.map +1 -1
- package/dist/observe/usage.js +12 -12
- package/dist/observe/usage.js.map +1 -1
- package/dist/runtimes/claude/projection.d.ts +6 -6
- package/dist/runtimes/claude/projection.js +10 -10
- package/dist/runtimes/claude/projection.js.map +1 -1
- package/dist/runtimes/claude/session.js +6 -6
- package/dist/runtimes/claude/session.js.map +1 -1
- package/dist/runtimes/codex/projection.d.ts +3 -3
- package/dist/runtimes/codex/projection.js +3 -3
- package/dist/runtimes/codex/projection.js.map +1 -1
- package/dist/runtimes/codex/session.js +8 -8
- package/dist/runtimes/codex/session.js.map +1 -1
- package/dist/runtimes/pi/projection.d.ts +7 -7
- package/dist/runtimes/pi/projection.js +24 -24
- package/dist/runtimes/pi/projection.js.map +1 -1
- package/dist/runtimes/pi/session.js +11 -11
- package/dist/runtimes/pi/session.js.map +1 -1
- package/dist/shared/acp/model.d.ts +1 -1
- package/dist/shared/acp/model.js +1 -1
- package/dist/shared/acp/profile.d.ts +1 -1
- package/dist/shared/acp/projection.d.ts +6 -6
- package/dist/shared/acp/projection.d.ts.map +1 -1
- package/dist/shared/acp/projection.js +12 -12
- package/dist/shared/acp/projection.js.map +1 -1
- package/dist/shared/acp/records.d.ts +2 -2
- package/dist/shared/acp/records.d.ts.map +1 -1
- package/dist/shared/acp/records.js +5 -5
- package/dist/shared/acp/records.js.map +1 -1
- package/dist/shared/acp/session.js +1 -1
- package/dist/shared/acp/turns.d.ts +2 -2
- package/dist/shared/acp/turns.js +4 -4
- package/dist/shared/acp/turns.js.map +1 -1
- package/dist/shared/acp/usage-wait.d.ts +1 -1
- package/dist/shared/acp/usage-wait.d.ts.map +1 -1
- package/dist/shared/seal-session.d.ts +4 -3
- package/dist/shared/seal-session.d.ts.map +1 -1
- package/dist/shared/seal-session.js +12 -3
- package/dist/shared/seal-session.js.map +1 -1
- package/dist/shared/session-kernel.d.ts +6 -6
- package/dist/shared/session-kernel.d.ts.map +1 -1
- package/dist/shared/session-kernel.js +2 -2
- package/dist/shared/session-kernel.js.map +1 -1
- package/dist/voyage.d.ts +4 -4
- package/dist/voyage.d.ts.map +1 -1
- package/dist/voyage.js +4 -3
- package/dist/voyage.js.map +1 -1
- package/package.json +1 -1
- package/dist/observe/aggregate-events.d.ts +0 -16
- package/dist/observe/aggregate-events.d.ts.map +0 -1
- package/dist/observe/aggregate-events.js +0 -80
- package/dist/observe/aggregate-events.js.map +0 -1
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
/** The single text-bearing view of a record, when the record carries exactly one view. */
|
|
2
|
-
function soleView(record) {
|
|
3
|
-
return record.body.views.length === 1 ? (record.body.views[0] ?? null) : null;
|
|
4
|
-
}
|
|
5
|
-
function textOf(record) {
|
|
6
|
-
const view = soleView(record);
|
|
7
|
-
if (view?.kind === "text_delta") {
|
|
8
|
-
return view.text;
|
|
9
|
-
}
|
|
10
|
-
return view?.kind === "reasoning" && view.content.kind === "text" ? view.content.text : null;
|
|
11
|
-
}
|
|
12
|
-
function withText(record, text) {
|
|
13
|
-
const view = soleView(record);
|
|
14
|
-
if (view?.kind === "reasoning") {
|
|
15
|
-
return { ...record, body: { ...record.body, views: [{ kind: "reasoning", content: { kind: "text", text } }] } };
|
|
16
|
-
}
|
|
17
|
-
if (view?.kind === "text_delta") {
|
|
18
|
-
return { ...record, body: { ...record.body, views: [{ kind: "text_delta", text }] } };
|
|
19
|
-
}
|
|
20
|
-
return record;
|
|
21
|
-
}
|
|
22
|
-
function sameLane(held, next) {
|
|
23
|
-
return soleView(held)?.kind === soleView(next)?.kind
|
|
24
|
-
&& held.sessionId === next.sessionId
|
|
25
|
-
&& held.agentPath.length === next.agentPath.length
|
|
26
|
-
&& held.agentPath.every((segment, index) => segment === next.agentPath[index]);
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Optional consumer-side aggregation: wrap an observer so consecutive
|
|
30
|
-
* text/reasoning deltas of one agent arrive as one merged record instead of a
|
|
31
|
-
* token stream. A merged record flushes when the view kind or agent changes,
|
|
32
|
-
* a non-delta record arrives, or (when `maxHoldMs` is set) the stream goes
|
|
33
|
-
* quiet for that long (a stalled model pause must not hold text hostage;
|
|
34
|
-
* order is safe because only consecutive same-lane deltas are ever held). It
|
|
35
|
-
* carries the LAST delta's envelope and native frame with the concatenated
|
|
36
|
-
* text. Purely a decorator over the side-tap: adapters and the kernel are
|
|
37
|
-
* unaware, and the retained log keeps every original record.
|
|
38
|
-
*/
|
|
39
|
-
export function aggregateDeltas(observer, options = {}) {
|
|
40
|
-
let held = null;
|
|
41
|
-
let holdTimer = null;
|
|
42
|
-
const flush = () => {
|
|
43
|
-
if (holdTimer !== null) {
|
|
44
|
-
clearTimeout(holdTimer);
|
|
45
|
-
holdTimer = null;
|
|
46
|
-
}
|
|
47
|
-
if (held !== null) {
|
|
48
|
-
const record = held;
|
|
49
|
-
held = null;
|
|
50
|
-
observer(record);
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
const armHoldTimer = () => {
|
|
54
|
-
if (options.maxHoldMs === undefined) {
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
if (holdTimer !== null) {
|
|
58
|
-
clearTimeout(holdTimer);
|
|
59
|
-
}
|
|
60
|
-
holdTimer = setTimeout(flush, options.maxHoldMs);
|
|
61
|
-
};
|
|
62
|
-
return (record) => {
|
|
63
|
-
const text = record.kind === "event" ? textOf(record) : null;
|
|
64
|
-
if (record.kind === "event" && text !== null) {
|
|
65
|
-
const previousText = held === null ? null : textOf(held);
|
|
66
|
-
if (held !== null && previousText !== null && sameLane(held, record)) {
|
|
67
|
-
held = withText(record, `${previousText}${text}`);
|
|
68
|
-
armHoldTimer();
|
|
69
|
-
return;
|
|
70
|
-
}
|
|
71
|
-
flush();
|
|
72
|
-
held = record;
|
|
73
|
-
armHoldTimer();
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
|
-
flush();
|
|
77
|
-
observer(record);
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
//# sourceMappingURL=aggregate-events.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aggregate-events.js","sourceRoot":"","sources":["../../src/observe/aggregate-events.ts"],"names":[],"mappings":"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"}
|