@lloyal-labs/sdk 3.0.1 → 3.0.3
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/LICENSE-FAQ.md +2 -2
- package/dist/Session.d.ts +20 -1
- package/dist/Session.d.ts.map +1 -1
- package/dist/Session.js +10 -2
- package/dist/Session.js.map +1 -1
- package/package.json +1 -1
package/LICENSE-FAQ.md
CHANGED
|
@@ -17,8 +17,8 @@ of this page is illustration.
|
|
|
17
17
|
|
|
18
18
|
HDK 3.0 runtime packages — `liblloyal`, `lloyal-node`, and the lloyal-sdk
|
|
19
19
|
packages (`agents`, `sdk`, `rig`, `apps/corpus`, `apps/web`) — are
|
|
20
|
-
|
|
21
|
-
Apache 2.0 future grant).
|
|
20
|
+
**[Fair Source](https://fair.io)** under **FSL-1.1-Apache-2.0** (the Functional
|
|
21
|
+
Source License, Apache 2.0 future grant).
|
|
22
22
|
|
|
23
23
|
Each version converts to Apache 2.0 two years after its release. The
|
|
24
24
|
restriction during those two years is narrow: **you cannot offer a competing
|
package/dist/Session.d.ts
CHANGED
|
@@ -1,6 +1,23 @@
|
|
|
1
1
|
import { Branch } from './Branch';
|
|
2
2
|
import type { BranchStore } from './BranchStore';
|
|
3
3
|
import type { SessionContext } from './types';
|
|
4
|
+
/**
|
|
5
|
+
* Observer invoked after each trunk conversation prefill lands.
|
|
6
|
+
*
|
|
7
|
+
* Lets a consumer make the spine's accreting turns observable (e.g. the
|
|
8
|
+
* agents-layer tracer emits a `branch:prefill` event) WITHOUT coupling
|
|
9
|
+
* Session to any trace type — the callback is sdk-native. Pure
|
|
10
|
+
* observability: it runs after the prefill and never affects it. `content`
|
|
11
|
+
* is the verbatim turn text; `tokenCount` is the prefilled delta length.
|
|
12
|
+
*
|
|
13
|
+
* @category Branching
|
|
14
|
+
*/
|
|
15
|
+
export type TrunkPrefillObserver = (info: {
|
|
16
|
+
role: 'user' | 'assistant' | 'turn' | 'tool';
|
|
17
|
+
content: string;
|
|
18
|
+
tokenCount: number;
|
|
19
|
+
branchHandle: number;
|
|
20
|
+
}) => void;
|
|
4
21
|
/**
|
|
5
22
|
* Session - Trunk lifecycle + conversation delta helpers
|
|
6
23
|
*
|
|
@@ -36,9 +53,11 @@ export declare class Session {
|
|
|
36
53
|
private _ctx;
|
|
37
54
|
private _store;
|
|
38
55
|
private _trunk;
|
|
39
|
-
|
|
56
|
+
private _onPrefill?;
|
|
57
|
+
constructor({ ctx, store, onPrefill }: {
|
|
40
58
|
ctx: SessionContext;
|
|
41
59
|
store: BranchStore;
|
|
60
|
+
onPrefill?: TrunkPrefillObserver;
|
|
42
61
|
});
|
|
43
62
|
/** Current trunk branch */
|
|
44
63
|
get trunk(): Branch | null;
|
package/dist/Session.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../src/Session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAG9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,IAAI,CAAiB;IAC7B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAgB;
|
|
1
|
+
{"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../src/Session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAG9C;;;;;;;;;;GAUG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE;IACxC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,MAAM,CAAC;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,KAAK,IAAI,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,IAAI,CAAiB;IAC7B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,UAAU,CAAC,CAAuB;gBAE9B,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;QAAE,GAAG,EAAE,cAAc,CAAC;QAAC,KAAK,EAAE,WAAW,CAAC;QAAC,SAAS,CAAC,EAAE,oBAAoB,CAAA;KAAE;IAOpH,2BAA2B;IAC3B,IAAI,KAAK,IAAI,MAAM,GAAG,IAAI,CAEzB;IAED,wCAAwC;IACxC,IAAI,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,EAE9B;IAED;;;;OAIG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5C;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAO9B;;;;;OAKG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAMhF;;;;;;;;;;;;;;OAcG;IACG,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAM/F;;;;;OAKG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMzE;;;;;;;;;OASG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BhE;;;;;;;;;;;;OAYG;IACG,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAWxE"}
|
package/dist/Session.js
CHANGED
|
@@ -38,10 +38,12 @@ class Session {
|
|
|
38
38
|
_ctx;
|
|
39
39
|
_store;
|
|
40
40
|
_trunk;
|
|
41
|
-
|
|
41
|
+
_onPrefill;
|
|
42
|
+
constructor({ ctx, store, onPrefill }) {
|
|
42
43
|
this._ctx = ctx;
|
|
43
44
|
this._store = store;
|
|
44
45
|
this._trunk = null;
|
|
46
|
+
this._onPrefill = onPrefill;
|
|
45
47
|
}
|
|
46
48
|
/** Current trunk branch */
|
|
47
49
|
get trunk() {
|
|
@@ -78,6 +80,7 @@ class Session {
|
|
|
78
80
|
async prefillUser(content, opts = {}) {
|
|
79
81
|
const tokens = (0, deltas_1.buildUserDelta)(this._ctx, content, opts);
|
|
80
82
|
await this._trunk.prefill(tokens);
|
|
83
|
+
this._onPrefill?.({ role: 'user', content, tokenCount: tokens.length, branchHandle: this._trunk.handle });
|
|
81
84
|
}
|
|
82
85
|
/**
|
|
83
86
|
* Prefill an assistant turn into trunk
|
|
@@ -97,6 +100,7 @@ class Session {
|
|
|
97
100
|
async prefillAssistant(content, opts = {}) {
|
|
98
101
|
const tokens = (0, deltas_1.buildAssistantDelta)(this._ctx, content, opts);
|
|
99
102
|
await this._trunk.prefill(tokens);
|
|
103
|
+
this._onPrefill?.({ role: 'assistant', content, tokenCount: tokens.length, branchHandle: this._trunk.handle });
|
|
100
104
|
}
|
|
101
105
|
/**
|
|
102
106
|
* Prefill a tool result turn into trunk
|
|
@@ -107,6 +111,7 @@ class Session {
|
|
|
107
111
|
async prefillToolResult(resultStr, callId) {
|
|
108
112
|
const tokens = (0, deltas_1.buildToolResultDelta)(this._ctx, resultStr, callId);
|
|
109
113
|
await this._trunk.prefill(tokens);
|
|
114
|
+
this._onPrefill?.({ role: 'tool', content: resultStr, tokenCount: tokens.length, branchHandle: this._trunk.handle });
|
|
110
115
|
}
|
|
111
116
|
/**
|
|
112
117
|
* Commit a query/response turn to the conversation trunk
|
|
@@ -123,7 +128,9 @@ class Session {
|
|
|
123
128
|
// Warm path: append turn delta (with separator) to existing trunk.
|
|
124
129
|
// Explicit enableThinking:false — session trunk serializes completed
|
|
125
130
|
// conversations; no thinking blocks should be embedded.
|
|
126
|
-
|
|
131
|
+
const tokens = (0, deltas_1.buildTurnDelta)(this._ctx, query, response, { enableThinking: false });
|
|
132
|
+
await this._trunk.prefill(tokens);
|
|
133
|
+
this._onPrefill?.({ role: 'turn', content: `${query}\n\n${response}`, tokenCount: tokens.length, branchHandle: this._trunk.handle });
|
|
127
134
|
}
|
|
128
135
|
else {
|
|
129
136
|
// Cold path: create trunk at position 0, prefill without separator
|
|
@@ -136,6 +143,7 @@ class Session {
|
|
|
136
143
|
const trunk = Branch_1.Branch.create(this._ctx, 0, {});
|
|
137
144
|
await trunk.prefill(tokens);
|
|
138
145
|
await this.promote(trunk);
|
|
146
|
+
this._onPrefill?.({ role: 'turn', content: `${query}\n\n${response}`, tokenCount: tokens.length, branchHandle: trunk.handle });
|
|
139
147
|
}
|
|
140
148
|
}
|
|
141
149
|
/**
|
package/dist/Session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Session.js","sourceRoot":"","sources":["../src/Session.ts"],"names":[],"mappings":";;;AAAA,qCAAkC;AAGlC,qCAAqG;
|
|
1
|
+
{"version":3,"file":"Session.js","sourceRoot":"","sources":["../src/Session.ts"],"names":[],"mappings":"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"}
|