liminal 0.5.8 → 0.5.10
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/Agent.ts +3 -0
- package/CHANGELOG.md +15 -0
- package/Context.ts +1 -10
- package/EventBase.ts +6 -0
- package/Fiber.ts +17 -3
- package/L/L.ts +1 -0
- package/L/_common.ts +6 -0
- package/L/_infer.ts +11 -12
- package/L/assistant.ts +1 -1
- package/L/branch.ts +9 -12
- package/L/catch.ts +3 -4
- package/L/emit.ts +1 -1
- package/L/rune.ts +24 -13
- package/L/stream.ts +32 -0
- package/LEvent.ts +10 -3
- package/Model.ts +13 -2
- package/ModelRegistry.ts +0 -8
- package/Rune.ts +1 -0
- package/Tool.ts +34 -0
- package/ToolRegistry.ts +5 -0
- package/dist/Agent.d.ts +2 -0
- package/dist/Agent.js +2 -0
- package/dist/Agent.js.map +1 -1
- package/dist/Context.d.ts +1 -2
- package/dist/Context.js +0 -8
- package/dist/Context.js.map +1 -1
- package/dist/EventBase.d.ts +1 -0
- package/dist/EventBase.js +5 -0
- package/dist/EventBase.js.map +1 -1
- package/dist/Fiber.d.ts +1 -3
- package/dist/Fiber.js +17 -2
- package/dist/Fiber.js.map +1 -1
- package/dist/L/L.d.ts +1 -0
- package/dist/L/L.js +1 -0
- package/dist/L/L.js.map +1 -1
- package/dist/L/_common.d.ts +4 -0
- package/dist/L/_common.js +7 -0
- package/dist/L/_common.js.map +1 -0
- package/dist/L/_infer.js +10 -10
- package/dist/L/_infer.js.map +1 -1
- package/dist/L/assistant.js +1 -1
- package/dist/L/assistant.js.map +1 -1
- package/dist/L/branch.js +9 -10
- package/dist/L/branch.js.map +1 -1
- package/dist/L/catch.js +3 -4
- package/dist/L/catch.js.map +1 -1
- package/dist/L/emit.js +1 -1
- package/dist/L/emit.js.map +1 -1
- package/dist/L/rune.d.ts +5 -3
- package/dist/L/rune.js +11 -4
- package/dist/L/rune.js.map +1 -1
- package/dist/L/stream.d.ts +5 -0
- package/dist/L/stream.js +29 -0
- package/dist/L/stream.js.map +1 -0
- package/dist/LEvent.d.ts +21 -1
- package/dist/LEvent.js +13 -2
- package/dist/LEvent.js.map +1 -1
- package/dist/Model.d.ts +12 -3
- package/dist/Model.js +3 -3
- package/dist/Model.js.map +1 -1
- package/dist/ModelRegistry.d.ts +0 -1
- package/dist/ModelRegistry.js +0 -7
- package/dist/ModelRegistry.js.map +1 -1
- package/dist/Rune.d.ts +1 -0
- package/dist/Rune.js.map +1 -1
- package/dist/Tool.d.ts +9 -0
- package/dist/Tool.js +20 -0
- package/dist/Tool.js.map +1 -0
- package/dist/ToolRegistry.d.ts +5 -0
- package/dist/ToolRegistry.js +5 -0
- package/dist/ToolRegistry.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/index.ts +2 -0
- package/package.json +3 -3
- package/cli/main.ts +0 -1
- package/dist/cli/main.d.ts +0 -1
- package/dist/cli/main.js +0 -3
- package/dist/cli/main.js.map +0 -1
package/dist/Fiber.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Fiber.js","sourceRoot":"","sources":["../Fiber.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"Fiber.js","sourceRoot":"","sources":["../Fiber.ts"],"names":[],"mappings":"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"}
|
package/dist/L/L.d.ts
CHANGED
package/dist/L/L.js
CHANGED
package/dist/L/L.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"L.js","sourceRoot":"","sources":["../../L/L.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA"}
|
|
1
|
+
{"version":3,"file":"L.js","sourceRoot":"","sources":["../../L/L.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_common.js","sourceRoot":"","sources":["../../L/_common.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,cAAc;IACzB,MAAM,CAAC,KAAK,GAAW,CAAC,CAAA;IACxB,MAAM,CAAC,IAAI;QACT,OAAO,IAAI,CAAC,KAAK,EAAE,CAAA;IACrB,CAAC"}
|
package/dist/L/_infer.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { assert } from "liminal-util";
|
|
2
|
-
import { Context
|
|
2
|
+
import { Context } from "../Context.js";
|
|
3
3
|
import { InferenceRequested, Inferred } from "../LEvent.js";
|
|
4
4
|
import { MessageRegistryContext } from "../MessageRegistry.js";
|
|
5
5
|
import { ModelRegistryContext } from "../ModelRegistry.js";
|
|
6
|
+
import { RequestCounter } from "./_common.js";
|
|
6
7
|
import { emit } from "./emit.js";
|
|
7
8
|
import { rune } from "./rune.js";
|
|
8
9
|
export function* _infer(schema) {
|
|
@@ -11,19 +12,18 @@ export function* _infer(schema) {
|
|
|
11
12
|
assert(modelRegistry);
|
|
12
13
|
const model = modelRegistry.peek();
|
|
13
14
|
assert(model);
|
|
14
|
-
const requestId =
|
|
15
|
+
const requestId = RequestCounter.next();
|
|
15
16
|
yield* emit(new InferenceRequested(requestId, schema));
|
|
16
17
|
const messageRegistry = context.get(MessageRegistryContext);
|
|
17
18
|
assert(messageRegistry);
|
|
18
|
-
const inference = yield* rune(() => model
|
|
19
|
+
const inference = yield* rune((fiber) => model
|
|
20
|
+
.seal({
|
|
21
|
+
messages: messageRegistry.messages,
|
|
22
|
+
schema,
|
|
23
|
+
signal: fiber.signal,
|
|
24
|
+
})
|
|
25
|
+
.resolve(), "infer");
|
|
19
26
|
yield* emit(new Inferred(requestId, inference));
|
|
20
27
|
return inference;
|
|
21
28
|
}
|
|
22
|
-
class InferenceRequestCounter {
|
|
23
|
-
count = 0;
|
|
24
|
-
next() {
|
|
25
|
-
return this.count++;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
const InferenceRequestCounterContext = ContextHandle();
|
|
29
29
|
//# sourceMappingURL=_infer.js.map
|
package/dist/L/_infer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_infer.js","sourceRoot":"","sources":["../../L/_infer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"_infer.js","sourceRoot":"","sources":["../../L/_infer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAe,MAAM,cAAc,CAAA;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAE1D,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,SAAS,CAAC,CAAC,MAAM,CAAC,MAAqB;IAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;IAChC,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;IACvD,MAAM,CAAC,aAAa,CAAC,CAAA;IACrB,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,CAAA;IAClC,MAAM,CAAC,KAAK,CAAC,CAAA;IACb,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,EAAE,CAAA;IACvC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;IACtD,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;IAC3D,MAAM,CAAC,eAAe,CAAC,CAAA;IACvB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CACtC,KAAK;SACF,IAAI,CAAC;QACJ,QAAQ,EAAE,eAAe,CAAC,QAAQ;QAClC,MAAM;QACN,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC;SACD,OAAO,EAAE,EAAE,OAAO,CAAC,CAAA;IACxB,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAA;IAC/C,OAAO,SAAS,CAAA;AAClB,CAAC"}
|
package/dist/L/assistant.js
CHANGED
|
@@ -7,7 +7,7 @@ export const assistant = Object.assign(function* (type) {
|
|
|
7
7
|
const inference = yield* _infer(schema);
|
|
8
8
|
yield* _message("assistant", [{ part: inference }]);
|
|
9
9
|
const input = JSON.parse(inference);
|
|
10
|
-
return yield* rune(() => validate(type, input));
|
|
10
|
+
return yield* rune(() => validate(type, input), "validate_assistant_message");
|
|
11
11
|
}, {
|
|
12
12
|
*[Symbol.iterator]() {
|
|
13
13
|
const inference = yield* _infer();
|
package/dist/L/assistant.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assistant.js","sourceRoot":"","sources":["../../L/assistant.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGnE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAMhC,MAAM,CAAC,MAAM,SAAS,GAAc,MAAM,CAAC,MAAM,CAC/C,QAAQ,CAAC,EAAI,IAAc;IACzB,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IACjC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACvC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACnC,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"assistant.js","sourceRoot":"","sources":["../../L/assistant.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGnE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAMhC,MAAM,CAAC,MAAM,SAAS,GAAc,MAAM,CAAC,MAAM,CAC/C,QAAQ,CAAC,EAAI,IAAc;IACzB,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IACjC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACvC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACnC,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,4BAA4B,CAAC,CAAA;AAC/E,CAAC,EACD;IACE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,CAAA;QACjC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;QACnD,OAAO,SAAS,CAAA;IAClB,CAAC;CACF,CACF,CAAA"}
|
package/dist/L/branch.js
CHANGED
|
@@ -1,25 +1,24 @@
|
|
|
1
1
|
import { Context } from "../Context.js";
|
|
2
|
-
import { Fiber } from "../Fiber.js";
|
|
3
2
|
import {} from "../Rune.js";
|
|
4
3
|
import { rune } from "./rune.js";
|
|
5
4
|
export function* branch(value) {
|
|
6
5
|
const context = Context.ensure();
|
|
7
|
-
const parent = yield* rune
|
|
6
|
+
const parent = yield* rune;
|
|
8
7
|
if (Array.isArray(value)) {
|
|
9
|
-
const fibers = value.map((runic) => context.clone().run(() =>
|
|
10
|
-
return yield* rune(() =>
|
|
8
|
+
const fibers = value.map((runic) => context.clone().run(() => parent.fork(runic)));
|
|
9
|
+
return yield* rune(() => Promise.all(fibers.map((fiber) => fiber.resolution())), "branch");
|
|
11
10
|
}
|
|
12
11
|
else if (typeof value === "object") {
|
|
13
|
-
const fibers = Object.values(value).map((runic) => context.clone().run(() =>
|
|
12
|
+
const fibers = Object.values(value).map((runic) => context.clone().run(() => parent.fork(runic)));
|
|
14
13
|
return yield* rune(async () => {
|
|
15
14
|
const keys = Object.keys(value);
|
|
16
|
-
return await
|
|
17
|
-
.
|
|
15
|
+
return await Promise
|
|
16
|
+
.all(fibers.map((fiber) => fiber.resolution()))
|
|
18
17
|
.then((resolved) => resolved.map((value, i) => [keys[i], value]))
|
|
19
18
|
.then(Object.fromEntries);
|
|
20
|
-
});
|
|
19
|
+
}, "branch");
|
|
21
20
|
}
|
|
22
|
-
const fiber = context.clone().run(() =>
|
|
23
|
-
return yield* rune(() => fiber.resolution());
|
|
21
|
+
const fiber = context.clone().run(() => parent.fork(typeof value === "function" ? value() : value));
|
|
22
|
+
return yield* rune(() => fiber.resolution(), "branch");
|
|
24
23
|
}
|
|
25
24
|
//# sourceMappingURL=branch.js.map
|
package/dist/L/branch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branch.js","sourceRoot":"","sources":["../../L/branch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,
|
|
1
|
+
{"version":3,"file":"branch.js","sourceRoot":"","sources":["../../L/branch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAa,MAAM,YAAY,CAAA;AAEtC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAWhC,MAAM,SAAS,CAAC,CAAC,MAAM,CAAC,KAAsD;IAC5E,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;IAChC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,IAAI,CAAA;IAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAClF,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;IAC5F,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACjG,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC/B,OAAO,MAAM,OAAO;iBACjB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;iBAC9C,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;iBAChE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAC7B,CAAC,EAAE,QAAQ,CAAC,CAAA;IACd,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;IACnG,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,CAAA;AACxD,CAAC"}
|
package/dist/L/catch.js
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
import { Fiber } from "../Fiber.js";
|
|
2
1
|
import { rune } from "./rune.js";
|
|
3
2
|
export { catch_ as catch };
|
|
4
3
|
function* catch_(runic) {
|
|
5
|
-
return yield* rune(async () => {
|
|
4
|
+
return yield* rune(async (fiber) => {
|
|
6
5
|
try {
|
|
7
|
-
return { resolved: await
|
|
6
|
+
return { resolved: await fiber.fork(runic).resolution() };
|
|
8
7
|
}
|
|
9
8
|
catch (exception) {
|
|
10
9
|
return { rejected: exception };
|
|
11
10
|
}
|
|
12
|
-
});
|
|
11
|
+
}, "catch");
|
|
13
12
|
}
|
|
14
13
|
Object.defineProperty(catch_, "name", { value: "catch" });
|
|
15
14
|
//# sourceMappingURL=catch.js.map
|
package/dist/L/catch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catch.js","sourceRoot":"","sources":["../../L/catch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"catch.js","sourceRoot":"","sources":["../../L/catch.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,OAAO,EAAE,MAAM,IAAI,KAAK,EAAE,CAAA;AAC1B,QAAQ,CAAC,CAAC,MAAM,CAAoB,KAAkB;IACpD,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACjC,IAAI,CAAC;YACH,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,EAAE,CAAA;QAC3D,CAAC;QAAC,OAAO,SAAkB,EAAE,CAAC;YAC5B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAA;QAChC,CAAC;IACH,CAAC,EAAE,OAAO,CAAC,CAAA;AACb,CAAC;AACD,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA"}
|
package/dist/L/emit.js
CHANGED
|
@@ -4,7 +4,7 @@ import { rune } from "./rune.js";
|
|
|
4
4
|
export function* emit(event) {
|
|
5
5
|
const context = Context.ensure();
|
|
6
6
|
const handler = context.get(HandlerContext);
|
|
7
|
-
const fiber = yield* rune
|
|
7
|
+
const fiber = yield* rune;
|
|
8
8
|
handler?.call(fiber, event);
|
|
9
9
|
}
|
|
10
10
|
//# sourceMappingURL=emit.js.map
|
package/dist/L/emit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emit.js","sourceRoot":"","sources":["../../L/emit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAIhC,MAAM,SAAS,CAAC,CAAC,IAAI,CAAU,KAAsB;IACnD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;IAChC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"emit.js","sourceRoot":"","sources":["../../L/emit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAIhC,MAAM,SAAS,CAAC,CAAC,IAAI,CAAU,KAAsB;IACnD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;IAChC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,IAAI,CAAA;IACzB,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AAC7B,CAAC"}
|
package/dist/L/rune.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Fiber } from "../Fiber.ts";
|
|
2
2
|
import { type Rune } from "../Rune.ts";
|
|
3
|
-
export interface rune
|
|
4
|
-
<
|
|
3
|
+
export interface rune extends Iterable<Rune<never>, Fiber> {
|
|
4
|
+
<R>(source: (fiber: Fiber) => R, debug?: string): Iterable<Rune<never>, Awaited<R>> & {
|
|
5
|
+
<E>(): Generator<Rune<E>, Awaited<R>>;
|
|
6
|
+
};
|
|
5
7
|
}
|
|
6
|
-
export declare
|
|
8
|
+
export declare const rune: rune;
|
package/dist/L/rune.js
CHANGED
|
@@ -1,12 +1,19 @@
|
|
|
1
1
|
import { Fiber } from "../Fiber.js";
|
|
2
2
|
import { RuneKey } from "../Rune.js";
|
|
3
|
-
export
|
|
3
|
+
export const rune = Object.assign(function (source, debug) {
|
|
4
4
|
return Object.assign(function* () {
|
|
5
|
-
return yield Object.assign(source, { [RuneKey]: true });
|
|
5
|
+
return yield Object.assign(source, { [RuneKey]: true, debug });
|
|
6
6
|
}, {
|
|
7
7
|
*[Symbol.iterator]() {
|
|
8
|
-
return yield Object.assign(source, { [RuneKey]: true });
|
|
8
|
+
return yield Object.assign(source, { [RuneKey]: true, debug });
|
|
9
9
|
},
|
|
10
10
|
});
|
|
11
|
-
}
|
|
11
|
+
}, {
|
|
12
|
+
*[Symbol.iterator]() {
|
|
13
|
+
return yield Object.assign((fiber) => fiber, {
|
|
14
|
+
[RuneKey]: true,
|
|
15
|
+
debug: "get_current_fiber",
|
|
16
|
+
});
|
|
17
|
+
},
|
|
18
|
+
});
|
|
12
19
|
//# sourceMappingURL=rune.js.map
|
package/dist/L/rune.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rune.js","sourceRoot":"","sources":["../../L/rune.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAa,OAAO,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"rune.js","sourceRoot":"","sources":["../../L/rune.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAa,OAAO,EAAE,MAAM,YAAY,CAAA;AAO/C,MAAM,CAAC,MAAM,IAAI,GAAS,MAAM,CAAC,MAAM,CACrC,UAAY,MAA2B,EAAE,KAAc;IACrD,OAAO,MAAM,CAAC,MAAM,CAClB,QAAQ,CAAC;QACP,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,EAAW,CAAC,CAAA;IACzE,CAAC,EACD;QACE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;YAChB,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,EAAW,CAAC,CAAA;QACzE,CAAC;KACF,CACF,CAAA;AACH,CAAC,EACD;IACE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChB,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,EAAE;YAClD,CAAC,OAAO,CAAC,EAAE,IAAI;YACf,KAAK,EAAE,mBAAmB;SAClB,CAAC,CAAA;IACb,CAAC;CACF,CACF,CAAA"}
|
package/dist/L/stream.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { assert } from "liminal-util";
|
|
2
|
+
import { Context } from "../Context.js";
|
|
3
|
+
import { InferenceRequested } from "../LEvent.js";
|
|
4
|
+
import { MessageRegistryContext } from "../MessageRegistry.js";
|
|
5
|
+
import { ModelRegistryContext } from "../ModelRegistry.js";
|
|
6
|
+
import {} from "../Rune.js";
|
|
7
|
+
import { RequestCounter } from "./_common.js";
|
|
8
|
+
import { emit } from "./emit.js";
|
|
9
|
+
import { rune } from "./rune.js";
|
|
10
|
+
export const stream = {
|
|
11
|
+
*[Symbol.iterator]() {
|
|
12
|
+
const context = Context.ensure();
|
|
13
|
+
const modelRegistry = context.get(ModelRegistryContext);
|
|
14
|
+
assert(modelRegistry);
|
|
15
|
+
const model = modelRegistry.peek();
|
|
16
|
+
assert(model);
|
|
17
|
+
const requestId = RequestCounter.next();
|
|
18
|
+
yield* emit(new InferenceRequested(requestId));
|
|
19
|
+
const messageRegistry = context.get(MessageRegistryContext);
|
|
20
|
+
assert(messageRegistry);
|
|
21
|
+
return yield* rune((fiber) => model
|
|
22
|
+
.seal({
|
|
23
|
+
messages: messageRegistry.messages,
|
|
24
|
+
signal: fiber.signal,
|
|
25
|
+
})
|
|
26
|
+
.stream(), "stream");
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=stream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../../L/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,kBAAkB,EAAe,MAAM,cAAc,CAAA;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,EAAa,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAIhC,MAAM,CAAC,MAAM,MAAM,GAAW;IAC5B,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;QAChC,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;QACvD,MAAM,CAAC,aAAa,CAAC,CAAA;QACrB,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,CAAA;QAClC,MAAM,CAAC,KAAK,CAAC,CAAA;QACb,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,EAAE,CAAA;QACvC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAA;QAC9C,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;QAC3D,MAAM,CAAC,eAAe,CAAC,CAAA;QACvB,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAC3B,KAAK;aACF,IAAI,CAAC;YACJ,QAAQ,EAAE,eAAe,CAAC,QAAQ;YAClC,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC;aACD,MAAM,EAAE,EAAE,QAAQ,CAAC,CAAA;IAC1B,CAAC;CACF,CAAA"}
|
package/dist/LEvent.d.ts
CHANGED
|
@@ -2,6 +2,9 @@ import type { SchemaObject } from "liminal-schema";
|
|
|
2
2
|
import type { Message } from "./Message.ts";
|
|
3
3
|
import type { Model } from "./Model.ts";
|
|
4
4
|
export type LEvent = FiberCreated | FiberResolved | FiberStarted | InferenceRequested | Inferred | MessageAppended | ModelRegistered;
|
|
5
|
+
export declare namespace LEvent {
|
|
6
|
+
function is(value: unknown): value is LEvent;
|
|
7
|
+
}
|
|
5
8
|
export declare const LEventTag: unique symbol;
|
|
6
9
|
export type LEventTag = typeof LEventTag;
|
|
7
10
|
declare const ModelRegistered_base: {
|
|
@@ -9,6 +12,7 @@ declare const ModelRegistered_base: {
|
|
|
9
12
|
readonly brand: typeof LEventTag;
|
|
10
13
|
readonly type: "model_registered";
|
|
11
14
|
};
|
|
15
|
+
is<T>(this: new (...args: any) => T, value: unknown): value is T;
|
|
12
16
|
};
|
|
13
17
|
export declare class ModelRegistered extends ModelRegistered_base {
|
|
14
18
|
readonly model: Model;
|
|
@@ -19,6 +23,7 @@ declare const InferenceRequested_base: {
|
|
|
19
23
|
readonly brand: typeof LEventTag;
|
|
20
24
|
readonly type: "inference_requested";
|
|
21
25
|
};
|
|
26
|
+
is<T>(this: new (...args: any) => T, value: unknown): value is T;
|
|
22
27
|
};
|
|
23
28
|
export declare class InferenceRequested extends InferenceRequested_base {
|
|
24
29
|
readonly requestId: number;
|
|
@@ -30,6 +35,7 @@ declare const Inferred_base: {
|
|
|
30
35
|
readonly brand: typeof LEventTag;
|
|
31
36
|
readonly type: "inferred";
|
|
32
37
|
};
|
|
38
|
+
is<T>(this: new (...args: any) => T, value: unknown): value is T;
|
|
33
39
|
};
|
|
34
40
|
export declare class Inferred extends Inferred_base {
|
|
35
41
|
readonly requestId: number;
|
|
@@ -41,6 +47,7 @@ declare const MessageAppended_base: {
|
|
|
41
47
|
readonly brand: typeof LEventTag;
|
|
42
48
|
readonly type: "message_appended";
|
|
43
49
|
};
|
|
50
|
+
is<T>(this: new (...args: any) => T, value: unknown): value is T;
|
|
44
51
|
};
|
|
45
52
|
export declare class MessageAppended extends MessageAppended_base {
|
|
46
53
|
readonly message: Message;
|
|
@@ -51,6 +58,7 @@ declare const FiberCreated_base: {
|
|
|
51
58
|
readonly brand: typeof LEventTag;
|
|
52
59
|
readonly type: "fiber_created";
|
|
53
60
|
};
|
|
61
|
+
is<T>(this: new (...args: any) => T, value: unknown): value is T;
|
|
54
62
|
};
|
|
55
63
|
export declare class FiberCreated extends FiberCreated_base {
|
|
56
64
|
}
|
|
@@ -59,6 +67,7 @@ declare const FiberStarted_base: {
|
|
|
59
67
|
readonly brand: typeof LEventTag;
|
|
60
68
|
readonly type: "fiber_started";
|
|
61
69
|
};
|
|
70
|
+
is<T>(this: new (...args: any) => T, value: unknown): value is T;
|
|
62
71
|
};
|
|
63
72
|
export declare class FiberStarted extends FiberStarted_base {
|
|
64
73
|
}
|
|
@@ -67,10 +76,21 @@ declare const FiberResolved_base: {
|
|
|
67
76
|
readonly brand: typeof LEventTag;
|
|
68
77
|
readonly type: "fiber_resolved";
|
|
69
78
|
};
|
|
79
|
+
is<T>(this: new (...args: any) => T, value: unknown): value is T;
|
|
70
80
|
};
|
|
71
81
|
export declare class FiberResolved extends FiberResolved_base {
|
|
72
82
|
readonly value: any;
|
|
73
83
|
constructor(value: any);
|
|
74
84
|
}
|
|
75
|
-
|
|
85
|
+
declare const FiberRejected_base: {
|
|
86
|
+
new (): {
|
|
87
|
+
readonly brand: typeof LEventTag;
|
|
88
|
+
readonly type: "fiber_rejected";
|
|
89
|
+
};
|
|
90
|
+
is<T>(this: new (...args: any) => T, value: unknown): value is T;
|
|
91
|
+
};
|
|
92
|
+
export declare class FiberRejected extends FiberRejected_base {
|
|
93
|
+
readonly reason: any;
|
|
94
|
+
constructor(reason: any);
|
|
95
|
+
}
|
|
76
96
|
export {};
|
package/dist/LEvent.js
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
import { EventBase } from "./EventBase.js";
|
|
2
|
+
export var LEvent;
|
|
3
|
+
(function (LEvent) {
|
|
4
|
+
function is(value) {
|
|
5
|
+
return typeof value === "object" && value !== null && "brand" in value && value.brand === LEventTag;
|
|
6
|
+
}
|
|
7
|
+
LEvent.is = is;
|
|
8
|
+
})(LEvent || (LEvent = {}));
|
|
2
9
|
export const LEventTag = Symbol.for("liminal/LEvent");
|
|
3
10
|
export class ModelRegistered extends EventBase(LEventTag, "model_registered") {
|
|
4
11
|
model;
|
|
@@ -44,7 +51,11 @@ export class FiberResolved extends EventBase(LEventTag, "fiber_resolved") {
|
|
|
44
51
|
this.value = value;
|
|
45
52
|
}
|
|
46
53
|
}
|
|
47
|
-
export
|
|
48
|
-
|
|
54
|
+
export class FiberRejected extends EventBase(LEventTag, "fiber_rejected") {
|
|
55
|
+
reason;
|
|
56
|
+
constructor(reason) {
|
|
57
|
+
super();
|
|
58
|
+
this.reason = reason;
|
|
59
|
+
}
|
|
49
60
|
}
|
|
50
61
|
//# sourceMappingURL=LEvent.js.map
|
package/dist/LEvent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LEvent.js","sourceRoot":"","sources":["../LEvent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAa1C,MAAM,CAAC,MAAM,SAAS,GAAkB,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;AAGpE,MAAM,OAAO,eAAgB,SAAQ,SAAS,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACtD;IAArB,YAAqB,KAAY;QAC/B,KAAK,EAAE,CAAA;QADY,UAAK,GAAL,KAAK,CAAO;IAEjC,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,SAAS,CAAC,SAAS,EAAE,qBAAqB,CAAC;IAGtE;IADX,YACW,SAAiB,EAC1B,MAAiC;QAEjC,KAAK,EAAE,CAAA;QAHE,cAAS,GAAT,SAAS,CAAQ;QAI1B,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACtB,CAAC;IACH,CAAC;CACF;AAED,MAAM,OAAO,QAAS,SAAQ,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC;IAEjD;IACA;IAFX,YACW,SAAiB,EACjB,SAAiB;QAE1B,KAAK,EAAE,CAAA;QAHE,cAAS,GAAT,SAAS,CAAQ;QACjB,cAAS,GAAT,SAAS,CAAQ;IAG5B,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,SAAS,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACtD;IAArB,YAAqB,OAAgB;QACnC,KAAK,EAAE,CAAA;QADY,YAAO,GAAP,OAAO,CAAS;IAErC,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,SAAS,CAAC,SAAS,EAAE,eAAe,CAAC;CAAG;AAC1E,MAAM,OAAO,YAAa,SAAQ,SAAS,CAAC,SAAS,EAAE,eAAe,CAAC;CAAG;AAC1E,MAAM,OAAO,aAAc,SAAQ,SAAS,CAAC,SAAS,EAAE,gBAAgB,CAAC;IAClD;IAArB,YAAqB,KAAU;QAC7B,KAAK,EAAE,CAAA;QADY,UAAK,GAAL,KAAK,CAAK;IAE/B,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"LEvent.js","sourceRoot":"","sources":["../LEvent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAa1C,MAAM,KAAW,MAAM,CAItB;AAJD,WAAiB,MAAM;IACrB,SAAgB,EAAE,CAAC,KAAc;QAC/B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,CAAA;IACrG,CAAC;IAFe,SAAE,KAEjB,CAAA;AACH,CAAC,EAJgB,MAAM,KAAN,MAAM,QAItB;AAED,MAAM,CAAC,MAAM,SAAS,GAAkB,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;AAGpE,MAAM,OAAO,eAAgB,SAAQ,SAAS,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACtD;IAArB,YAAqB,KAAY;QAC/B,KAAK,EAAE,CAAA;QADY,UAAK,GAAL,KAAK,CAAO;IAEjC,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,SAAS,CAAC,SAAS,EAAE,qBAAqB,CAAC;IAGtE;IADX,YACW,SAAiB,EAC1B,MAAiC;QAEjC,KAAK,EAAE,CAAA;QAHE,cAAS,GAAT,SAAS,CAAQ;QAI1B,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACtB,CAAC;IACH,CAAC;CACF;AAED,MAAM,OAAO,QAAS,SAAQ,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC;IAEjD;IACA;IAFX,YACW,SAAiB,EACjB,SAAiB;QAE1B,KAAK,EAAE,CAAA;QAHE,cAAS,GAAT,SAAS,CAAQ;QACjB,cAAS,GAAT,SAAS,CAAQ;IAG5B,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,SAAS,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACtD;IAArB,YAAqB,OAAgB;QACnC,KAAK,EAAE,CAAA;QADY,YAAO,GAAP,OAAO,CAAS;IAErC,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,SAAS,CAAC,SAAS,EAAE,eAAe,CAAC;CAAG;AAC1E,MAAM,OAAO,YAAa,SAAQ,SAAS,CAAC,SAAS,EAAE,eAAe,CAAC;CAAG;AAC1E,MAAM,OAAO,aAAc,SAAQ,SAAS,CAAC,SAAS,EAAE,gBAAgB,CAAC;IAClD;IAArB,YAAqB,KAAU;QAC7B,KAAK,EAAE,CAAA;QADY,UAAK,GAAL,KAAK,CAAK;IAE/B,CAAC;CACF;AACD,MAAM,OAAO,aAAc,SAAQ,SAAS,CAAC,SAAS,EAAE,gBAAgB,CAAC;IAClD;IAArB,YAAqB,MAAW;QAC9B,KAAK,EAAE,CAAA;QADY,WAAM,GAAN,MAAM,CAAK;IAEhC,CAAC;CACF"}
|
package/dist/Model.d.ts
CHANGED
|
@@ -1,7 +1,16 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { SchemaObject } from "liminal-schema";
|
|
2
2
|
import type { Message } from "./Message.ts";
|
|
3
3
|
export declare class Model {
|
|
4
4
|
readonly vendor: string;
|
|
5
|
-
readonly
|
|
6
|
-
constructor(vendor: string,
|
|
5
|
+
readonly seal: (envelope: Envelope) => SealedEnvelope;
|
|
6
|
+
constructor(vendor: string, seal: (envelope: Envelope) => SealedEnvelope);
|
|
7
|
+
}
|
|
8
|
+
export interface Envelope {
|
|
9
|
+
messages: Array<Message>;
|
|
10
|
+
schema?: SchemaObject | undefined;
|
|
11
|
+
signal?: AbortSignal;
|
|
12
|
+
}
|
|
13
|
+
export interface SealedEnvelope {
|
|
14
|
+
resolve(): Promise<string>;
|
|
15
|
+
stream(): ReadableStream<string>;
|
|
7
16
|
}
|
package/dist/Model.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { attachCustomInspect } from "liminal-util";
|
|
2
2
|
export class Model {
|
|
3
3
|
vendor;
|
|
4
|
-
|
|
5
|
-
constructor(vendor,
|
|
4
|
+
seal;
|
|
5
|
+
constructor(vendor, seal) {
|
|
6
6
|
this.vendor = vendor;
|
|
7
|
-
this.
|
|
7
|
+
this.seal = seal;
|
|
8
8
|
}
|
|
9
9
|
static {
|
|
10
10
|
attachCustomInspect(this, ({ vendor }) => ({ vendor }));
|
package/dist/Model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Model.js","sourceRoot":"","sources":["../Model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAGlD,MAAM,OAAO,KAAK;IAEL;IACA;IAFX,YACW,MAAc,EACd,
|
|
1
|
+
{"version":3,"file":"Model.js","sourceRoot":"","sources":["../Model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAGlD,MAAM,OAAO,KAAK;IAEL;IACA;IAFX,YACW,MAAc,EACd,IAA4C;QAD5C,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAwC;IACpD,CAAC;IAEJ;QACE,mBAAmB,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;IACzD,CAAC;CACF"}
|
package/dist/ModelRegistry.d.ts
CHANGED
|
@@ -4,7 +4,6 @@ import type { Model } from "./Model.ts";
|
|
|
4
4
|
export declare class ModelRegistry {
|
|
5
5
|
head?: ModelRegistryNode | undefined;
|
|
6
6
|
tail?: ModelRegistryNode | undefined;
|
|
7
|
-
constructor(models?: Array<Model>);
|
|
8
7
|
peek(): Model | undefined;
|
|
9
8
|
register(value: Model): ModelRegistryNode;
|
|
10
9
|
remove(node: ModelRegistryNode): void;
|
package/dist/ModelRegistry.js
CHANGED
|
@@ -1,13 +1,6 @@
|
|
|
1
1
|
import { ContextHandle } from "./Context.js";
|
|
2
2
|
/** An intrusive list for storing `Model`s. */
|
|
3
3
|
export class ModelRegistry {
|
|
4
|
-
constructor(models) {
|
|
5
|
-
if (models) {
|
|
6
|
-
for (const model of models) {
|
|
7
|
-
this.register(model);
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
4
|
peek() {
|
|
12
5
|
return this.tail?.model;
|
|
13
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelRegistry.js","sourceRoot":"","sources":["../ModelRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAG5C,8CAA8C;AAC9C,MAAM,OAAO,aAAa;IAIxB,
|
|
1
|
+
{"version":3,"file":"ModelRegistry.js","sourceRoot":"","sources":["../ModelRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAG5C,8CAA8C;AAC9C,MAAM,OAAO,aAAa;IAIxB,IAAI;QACF,OAAO,IAAI,CAAC,IAAI,EAAE,KAAK,CAAA;IACzB,CAAC;IAED,QAAQ,CAAC,KAAY;QACnB,MAAM,IAAI,GAAsB;YAC9B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,KAAK;SACb,CAAA;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QACvB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAClB,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,IAAuB;QAC5B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAC5B,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAC5B,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QACvB,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QACvB,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,SAAS,CAAA;IACnC,CAAC;CACF;AAQD,MAAM,CAAC,MAAM,oBAAoB,GAAiC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IAC3F,MAAM,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAA;IACpC,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7C,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC/B,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAC,CAAA"}
|
package/dist/Rune.d.ts
CHANGED
package/dist/Rune.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rune.js","sourceRoot":"","sources":["../Rune.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Rune.js","sourceRoot":"","sources":["../Rune.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,MAAM,OAAO,GAAkB,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;AAGhE,MAAM,UAAU,MAAM,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,CAAA;AACxE,CAAC"}
|
package/dist/Tool.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type LType, type SchemaObject, type Value, type ValueObject } from "liminal-schema";
|
|
2
|
+
export declare class Tool {
|
|
3
|
+
readonly name: string;
|
|
4
|
+
readonly description: string;
|
|
5
|
+
readonly parameterSchema: SchemaObject;
|
|
6
|
+
readonly f: (arg: any) => Value | Promise<Value>;
|
|
7
|
+
static make<T extends ValueObject>(description: string, type: LType<T>, f: (arg: T) => Value | Promise<Value>): Promise<Tool>;
|
|
8
|
+
constructor(name: string, description: string, parameterSchema: SchemaObject, f: (arg: any) => Value | Promise<Value>);
|
|
9
|
+
}
|
package/dist/Tool.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Schema, toJSONSchema, validate, } from "liminal-schema";
|
|
2
|
+
export class Tool {
|
|
3
|
+
name;
|
|
4
|
+
description;
|
|
5
|
+
parameterSchema;
|
|
6
|
+
f;
|
|
7
|
+
static async make(description, type, f) {
|
|
8
|
+
const schema = toJSONSchema(type);
|
|
9
|
+
return new Tool(await Schema.id(schema, description), description, schema, async (arg) => {
|
|
10
|
+
return await f(await validate(type, arg));
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
constructor(name, description, parameterSchema, f) {
|
|
14
|
+
this.name = name;
|
|
15
|
+
this.description = description;
|
|
16
|
+
this.parameterSchema = parameterSchema;
|
|
17
|
+
this.f = f;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=Tool.js.map
|
package/dist/Tool.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tool.js","sourceRoot":"","sources":["../Tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,MAAM,EAEN,YAAY,EACZ,QAAQ,GAGT,MAAM,gBAAgB,CAAA;AAEvB,MAAM,OAAO,IAAI;IAkBJ;IACA;IACA;IACA;IApBX,MAAM,CAAC,KAAK,CAAC,IAAI,CACf,WAAmB,EACnB,IAAc,EACd,CAAqC;QAErC,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QACjC,OAAO,IAAI,IAAI,CACb,MAAM,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,EACpC,WAAW,EACX,MAAM,EACN,KAAK,EAAE,GAAG,EAAE,EAAE;YACZ,OAAO,MAAM,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAU,CAAC,CAAA;QACpD,CAAC,CACF,CAAA;IACH,CAAC;IAED,YACW,IAAY,EACZ,WAAmB,EACnB,eAA6B,EAC7B,CAAuC;QAHvC,SAAI,GAAJ,IAAI,CAAQ;QACZ,gBAAW,GAAX,WAAW,CAAQ;QACnB,oBAAe,GAAf,eAAe,CAAc;QAC7B,MAAC,GAAD,CAAC,CAAsC;IAC/C,CAAC;CACL"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToolRegistry.js","sourceRoot":"","sources":["../ToolRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGvC,MAAM,OAAO,YAAa,SAAQ,GAAS;CAAG;AAC9C,MAAM,CAAC,MAAM,mBAAmB,GAAgC,aAAa,EAAE,CAAA"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,sBAAsB,CAAA;AACpC,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,sBAAsB,CAAA;AACpC,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA"}
|