@rivet-dev/pi 0.5.2 → 0.5.4
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/actions.d.ts +15 -1
- package/dist/actions.d.ts.map +1 -1
- package/dist/actions.js +39 -19
- package/dist/actions.js.map +1 -1
- package/dist/actor-types.d.ts +1 -1
- package/dist/actor-types.d.ts.map +1 -1
- package/dist/actor.d.ts +2 -2
- package/dist/actor.d.ts.map +1 -1
- package/dist/actor.js +10 -1
- package/dist/actor.js.map +1 -1
- package/dist/answers.d.ts +30 -0
- package/dist/answers.d.ts.map +1 -0
- package/dist/answers.js +81 -0
- package/dist/answers.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/runtime.d.ts +35 -6
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +174 -132
- package/dist/runtime.js.map +1 -1
- package/package.json +13 -10
package/dist/actions.d.ts
CHANGED
|
@@ -45,6 +45,10 @@ export type PiPromptResult = {
|
|
|
45
45
|
reason: string;
|
|
46
46
|
submissionId: SubmissionId;
|
|
47
47
|
};
|
|
48
|
+
/** What `submit` returns: the submission, which `submission.status` and `submission.wait` take. */
|
|
49
|
+
export type PiSubmitResult = {
|
|
50
|
+
submissionId: SubmissionId;
|
|
51
|
+
};
|
|
48
52
|
/** The built-in actions of a `pi()` actor, as clients call them. */
|
|
49
53
|
export type PiActions = ReturnType<typeof createPiActions>;
|
|
50
54
|
/**
|
|
@@ -120,6 +124,7 @@ export declare function createPiActions(options: PiOptions): {
|
|
|
120
124
|
submission: {
|
|
121
125
|
status: (c: PiContext, id: SubmissionId) => Promise<import("@earendil-works/pi-durable").SubmissionRecord>;
|
|
122
126
|
wait: (c: PiContext, id: SubmissionId) => Promise<({
|
|
127
|
+
readonly trace?: import("@earendil-works/pi-telemetry").TelemetryCarrier;
|
|
123
128
|
readonly id: SubmissionId;
|
|
124
129
|
readonly conversationId: ConversationId;
|
|
125
130
|
readonly requestId?: string;
|
|
@@ -134,6 +139,7 @@ export declare function createPiActions(options: PiOptions): {
|
|
|
134
139
|
} & {
|
|
135
140
|
readonly status: "done" | "unanswered";
|
|
136
141
|
}) | ({
|
|
142
|
+
readonly trace?: import("@earendil-works/pi-telemetry").TelemetryCarrier;
|
|
137
143
|
readonly id: SubmissionId;
|
|
138
144
|
readonly conversationId: ConversationId;
|
|
139
145
|
readonly requestId?: string;
|
|
@@ -148,6 +154,7 @@ export declare function createPiActions(options: PiOptions): {
|
|
|
148
154
|
} & {
|
|
149
155
|
readonly status: "done" | "unanswered";
|
|
150
156
|
}) | ({
|
|
157
|
+
readonly trace?: import("@earendil-works/pi-telemetry").TelemetryCarrier;
|
|
151
158
|
readonly id: SubmissionId;
|
|
152
159
|
readonly conversationId: ConversationId;
|
|
153
160
|
readonly requestId?: string;
|
|
@@ -162,6 +169,7 @@ export declare function createPiActions(options: PiOptions): {
|
|
|
162
169
|
} & {
|
|
163
170
|
readonly status: "done" | "unanswered";
|
|
164
171
|
}) | ({
|
|
172
|
+
readonly trace?: import("@earendil-works/pi-telemetry").TelemetryCarrier;
|
|
165
173
|
readonly id: SubmissionId;
|
|
166
174
|
readonly conversationId: ConversationId;
|
|
167
175
|
readonly requestId?: string;
|
|
@@ -184,8 +192,14 @@ export declare function createPiActions(options: PiOptions): {
|
|
|
184
192
|
* `unanswered` with Pi's reason.
|
|
185
193
|
*/
|
|
186
194
|
prompt: (c: PiContext, content: UserInput, promptOptions?: PiPromptOptions) => Promise<PiPromptResult>;
|
|
195
|
+
/**
|
|
196
|
+
* Submits user input and returns without waiting for the run. Pair it
|
|
197
|
+
* with `onAnswer` to deliver the answer, such as from a webhook that must
|
|
198
|
+
* respond quickly.
|
|
199
|
+
*/
|
|
200
|
+
submit: (c: PiContext, content: UserInput, submitOptions?: PiPromptOptions) => Promise<PiSubmitResult>;
|
|
187
201
|
pi: {
|
|
188
|
-
/** Scheduled
|
|
202
|
+
/** Scheduled for Pi Durable's earliest sleeping task. Resumes the tasks that are due. */
|
|
189
203
|
wake: (c: PiContext) => Promise<void>;
|
|
190
204
|
};
|
|
191
205
|
};
|
package/dist/actions.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,KAAK,EACL,WAAW,EAEX,wBAAwB,EACxB,cAAc,EACd,qBAAqB,EACrB,gBAAgB,EAChB,MAAM,EACN,OAAO,EACP,UAAU,EAEV,UAAU,EACV,aAAa,EAEb,eAAe,EACf,YAAY,EACZ,SAAS,EACT,MAAM,EACN,SAAS,EACT,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAEN,KAAK,SAAS,
|
|
1
|
+
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
|
package/dist/actions.js
CHANGED
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
import { UserError } from "rivetkit";
|
|
2
2
|
import { assertModelAllowed } from "./models.js";
|
|
3
|
-
import { documentsByKind, piRuntime, withHarness, } from "./runtime.js";
|
|
3
|
+
import { documentsByKind, piRuntime, resumeDueSleeps, withHarness, } from "./runtime.js";
|
|
4
4
|
import { traceRun } from "./tracing.js";
|
|
5
5
|
import { unwatch, watch } from "./watches.js";
|
|
6
|
+
/** Submits user input to the conversation in `options`, or the root conversation. */
|
|
7
|
+
async function submitInput(harness, content, options, context) {
|
|
8
|
+
const conversation = options?.conversationId === undefined
|
|
9
|
+
? await harness.root(context)
|
|
10
|
+
: await requireConversation(harness, options.conversationId, context);
|
|
11
|
+
const submission = await conversation.submit({
|
|
12
|
+
type: "input",
|
|
13
|
+
content,
|
|
14
|
+
requestId: options?.requestId,
|
|
15
|
+
whenBusy: options?.whenBusy,
|
|
16
|
+
}, context);
|
|
17
|
+
return { conversation, submission };
|
|
18
|
+
}
|
|
6
19
|
/**
|
|
7
20
|
* The `pi()` actions: Pi Durable's `Harness`, `Conversation`, and
|
|
8
21
|
* `Submission` methods under `harness`, `conversation`, and `submission`, with
|
|
@@ -65,11 +78,11 @@ export function createPiActions(options) {
|
|
|
65
78
|
await requireTask(harness, id, context);
|
|
66
79
|
return harness.abortTask(id, context);
|
|
67
80
|
}),
|
|
68
|
-
waitForTask: (c, id) => run(c, async (harness, context) => {
|
|
81
|
+
waitForTask: (c, id) => run(c, async (harness, context, waiting) => {
|
|
69
82
|
await requireTask(harness, id, context);
|
|
70
|
-
return harness.waitForTask(id, context);
|
|
83
|
+
return waiting(() => harness.waitForTask(id, context));
|
|
71
84
|
}),
|
|
72
|
-
waitForIdle: (c) => run(c, (harness, context) => harness.waitForIdle(context)),
|
|
85
|
+
waitForIdle: (c) => run(c, (harness, context, waiting) => waiting(() => harness.waitForIdle(context))),
|
|
73
86
|
inspect: (c) => run(c, async (harness, context) => {
|
|
74
87
|
const inspection = await harness.inspect(context);
|
|
75
88
|
return {
|
|
@@ -129,7 +142,10 @@ export function createPiActions(options) {
|
|
|
129
142
|
return { id: forked.id };
|
|
130
143
|
}),
|
|
131
144
|
abort: (c, conversationId, abortOptions) => run(c, async (harness, context) => (await requireConversation(harness, conversationId, context)).abort(context, abortOptions)),
|
|
132
|
-
waitForIdle: (c, conversationId) => run(c, async (harness, context) =>
|
|
145
|
+
waitForIdle: (c, conversationId) => run(c, async (harness, context, waiting) => {
|
|
146
|
+
const conversation = await requireConversation(harness, conversationId, context);
|
|
147
|
+
return waiting(() => conversation.waitForIdle(context));
|
|
148
|
+
}),
|
|
133
149
|
/** The structural view; then `pi.view` frames with Chord operations to this connection. */
|
|
134
150
|
watch: (c, conversationId) => watchFor(c, {
|
|
135
151
|
kind: "view",
|
|
@@ -145,7 +161,10 @@ export function createPiActions(options) {
|
|
|
145
161
|
},
|
|
146
162
|
submission: {
|
|
147
163
|
status: (c, id) => run(c, async (harness, context) => (await requireSubmission(harness, id, context)).status(context)),
|
|
148
|
-
wait: (c, id) => run(c, async (harness, context) =>
|
|
164
|
+
wait: (c, id) => run(c, async (harness, context, waiting) => {
|
|
165
|
+
const submission = await requireSubmission(harness, id, context);
|
|
166
|
+
return waiting(() => submission.wait(context));
|
|
167
|
+
}),
|
|
149
168
|
abort: (c, id) => run(c, async (harness, context) => (await requireSubmission(harness, id, context)).abort(context)),
|
|
150
169
|
},
|
|
151
170
|
/**
|
|
@@ -153,18 +172,10 @@ export function createPiActions(options) {
|
|
|
153
172
|
* answer's text. A model error does not reject: the status is
|
|
154
173
|
* `unanswered` with Pi's reason.
|
|
155
174
|
*/
|
|
156
|
-
prompt: (c, content, promptOptions) => run(c, async (harness, context) => {
|
|
157
|
-
const conversation = promptOptions
|
|
158
|
-
? await harness.root(context)
|
|
159
|
-
: await requireConversation(harness, promptOptions.conversationId, context);
|
|
160
|
-
const submission = await conversation.submit({
|
|
161
|
-
type: "input",
|
|
162
|
-
content,
|
|
163
|
-
requestId: promptOptions?.requestId,
|
|
164
|
-
whenBusy: promptOptions?.whenBusy,
|
|
165
|
-
}, context);
|
|
175
|
+
prompt: (c, content, promptOptions) => run(c, async (harness, context, waiting) => {
|
|
176
|
+
const { conversation, submission } = await submitInput(harness, content, promptOptions, context);
|
|
166
177
|
const model = (await conversation.agent(context)).model;
|
|
167
|
-
const settled = await traceRun(c.actorId, conversation.id, model && `${model.provider}/${model.modelId}`, () => submission.wait(context));
|
|
178
|
+
const settled = await traceRun(c.actorId, conversation.id, model && `${model.provider}/${model.modelId}`, () => waiting(() => submission.wait(context)));
|
|
168
179
|
if (settled.status === "unanswered") {
|
|
169
180
|
return {
|
|
170
181
|
status: settled.status,
|
|
@@ -180,9 +191,18 @@ export function createPiActions(options) {
|
|
|
180
191
|
submissionId: submission.id,
|
|
181
192
|
};
|
|
182
193
|
}),
|
|
194
|
+
/**
|
|
195
|
+
* Submits user input and returns without waiting for the run. Pair it
|
|
196
|
+
* with `onAnswer` to deliver the answer, such as from a webhook that must
|
|
197
|
+
* respond quickly.
|
|
198
|
+
*/
|
|
199
|
+
submit: (c, content, submitOptions) => run(c, async (harness, context) => {
|
|
200
|
+
const { submission } = await submitInput(harness, content, submitOptions, context);
|
|
201
|
+
return { submissionId: submission.id };
|
|
202
|
+
}),
|
|
183
203
|
pi: {
|
|
184
|
-
/** Scheduled
|
|
185
|
-
wake: (c) => run(c,
|
|
204
|
+
/** Scheduled for Pi Durable's earliest sleeping task. Resumes the tasks that are due. */
|
|
205
|
+
wake: (c) => run(c, () => resumeDueSleeps(c)),
|
|
186
206
|
},
|
|
187
207
|
};
|
|
188
208
|
}
|
package/dist/actions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
|
package/dist/actor-types.d.ts
CHANGED
|
@@ -26,7 +26,7 @@ interface UserHooks<TState, TConnParams, TConnState, TVars, TInput, TEvents exte
|
|
|
26
26
|
* plus the Pi options in `TOptions`.
|
|
27
27
|
*/
|
|
28
28
|
export type UserActorConfig<TState, TConnParams, TConnState, TVars, TInput, TEvents extends EventSchemaConfig, TQueues extends QueueSchemaConfig, TUserActions, TOptions, TAccess> = DistributiveOmit<ActorConfigInput<TState, TConnParams, TConnState, TVars, TInput, PiDatabaseProvider, TEvents, TQueues>, "actions" | keyof UserHooks<any, any, any, any, any, any, any, unknown>> & UserHooks<TState, TConnParams, TConnState, TVars, TInput, TEvents, TQueues, TAccess> & TOptions & {
|
|
29
|
-
actions?: TUserActions
|
|
29
|
+
actions?: TUserActions & UserActions<TState, TConnParams, TConnState, TVars, TInput, TEvents, TQueues, TAccess>;
|
|
30
30
|
};
|
|
31
31
|
/** The actor definition clients see: the app's actions and events plus the built-in ones. */
|
|
32
32
|
export type PiActorDefinition<TState, TConnParams, TConnState, TVars, TInput, TEvents extends EventSchemaConfig, TQueues extends QueueSchemaConfig, TUserActions, TBuiltInEvents extends EventSchemaConfig, TBuiltInActions> = ActorDefinition<TState, TConnParams, TConnState, TVars, TInput, PiDatabaseProvider, TEvents & TBuiltInEvents, TQueues, ClientActions<TUserActions, ActionContext<TState, TConnParams, TConnState, TVars, TInput, PiDatabaseProvider, TEvents, TQueues>> & TBuiltInActions>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actor-types.d.ts","sourceRoot":"","sources":["../src/actor-types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"actor-types.d.ts","sourceRoot":"","sources":["../src/actor-types.ts"],"names":[],"mappings":"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"}
|
package/dist/actor.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ export interface PiAccess {
|
|
|
23
23
|
/** The app's own actions, which get `c.pi`. Nested objects become dotted action names. */
|
|
24
24
|
export type PiUserActions<TState, TConnParams, TConnState, TVars, TInput, TEvents extends EventSchemaConfig, TQueues extends QueueSchemaConfig> = UserActions<TState, TConnParams, TConnState, TVars, TInput, TEvents, TQueues, PiAccess>;
|
|
25
25
|
/** Ordinary actor config plus the Pi Durable options. The app's actions and lifecycle hooks get `c.pi`. */
|
|
26
|
-
export type PiActorConfigInput<TState = undefined, TConnParams = undefined, TConnState = undefined, TVars = undefined, TInput = undefined, TEvents extends EventSchemaConfig = Record<never, never>, TQueues extends QueueSchemaConfig = Record<never, never>, TUserActions extends
|
|
26
|
+
export type PiActorConfigInput<TState = undefined, TConnParams = undefined, TConnState = undefined, TVars = undefined, TInput = undefined, TEvents extends EventSchemaConfig = Record<never, never>, TQueues extends QueueSchemaConfig = Record<never, never>, TUserActions extends Record<string, unknown> = Record<never, never>> = UserActorConfig<TState, TConnParams, TConnState, TVars, TInput, TEvents, TQueues, TUserActions, PiOptions, PiAccess>;
|
|
27
27
|
/**
|
|
28
28
|
* Defines a Rivet Actor that owns one Pi Durable harness.
|
|
29
29
|
*
|
|
@@ -32,5 +32,5 @@ export type PiActorConfigInput<TState = undefined, TConnParams = undefined, TCon
|
|
|
32
32
|
* actor wakes. The actions match Pi Durable's API one to one. The app's own
|
|
33
33
|
* actions and lifecycle hooks get the harness as `c.pi`.
|
|
34
34
|
*/
|
|
35
|
-
export declare function pi<TState, TConnParams, TConnState, TVars, TInput, TEvents extends EventSchemaConfig = Record<never, never>, TQueues extends QueueSchemaConfig = Record<never, never>, TUserActions extends
|
|
35
|
+
export declare function pi<TState, TConnParams, TConnState, TVars, TInput, TEvents extends EventSchemaConfig = Record<never, never>, TQueues extends QueueSchemaConfig = Record<never, never>, TUserActions extends Record<string, unknown> = Record<never, never>>(config: PiActorConfigInput<TState, TConnParams, TConnState, TVars, TInput, TEvents, TQueues, TUserActions>): PiActorDefinition<TState, TConnParams, TConnState, TVars, TInput, TEvents, TQueues, TUserActions, PiEvents, PiActions>;
|
|
36
36
|
//# sourceMappingURL=actor.d.ts.map
|
package/dist/actor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../src/actor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAEN,KAAK,iBAAiB,EAEtB,KAAK,iBAAiB,EACtB,KAAK,IAAI,EACT,MAAM,UAAU,CAAC;AAElB,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAO/D,OAAO,KAAK,EACX,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAMN,KAAK,SAAS,
|
|
1
|
+
{"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../src/actor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAEN,KAAK,iBAAiB,EAEtB,KAAK,iBAAiB,EACtB,KAAK,IAAI,EACT,MAAM,UAAU,CAAC;AAElB,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAO/D,OAAO,KAAK,EACX,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAMN,KAAK,SAAS,EAKd,MAAM,cAAc,CAAC;AAEtB,OAAO,EACN,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAEhB,MAAM,cAAc,CAAC;AAEtB,iFAAiF;AACjF,MAAM,MAAM,QAAQ,GAAG;IACtB,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACjC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7B,cAAc,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACvC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;CAC3B,CAAC;AASF;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;CACrB;AAED,0FAA0F;AAC1F,MAAM,MAAM,aAAa,CACxB,MAAM,EACN,WAAW,EACX,UAAU,EACV,KAAK,EACL,MAAM,EACN,OAAO,SAAS,iBAAiB,EACjC,OAAO,SAAS,iBAAiB,IAC9B,WAAW,CACd,MAAM,EACN,WAAW,EACX,UAAU,EACV,KAAK,EACL,MAAM,EACN,OAAO,EACP,OAAO,EACP,QAAQ,CACR,CAAC;AAEF,2GAA2G;AAC3G,MAAM,MAAM,kBAAkB,CAC7B,MAAM,GAAG,SAAS,EAClB,WAAW,GAAG,SAAS,EACvB,UAAU,GAAG,SAAS,EACtB,KAAK,GAAG,SAAS,EACjB,MAAM,GAAG,SAAS,EAClB,OAAO,SAAS,iBAAiB,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EACxD,OAAO,SAAS,iBAAiB,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EACxD,YAAY,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAChE,eAAe,CAClB,MAAM,EACN,WAAW,EACX,UAAU,EACV,KAAK,EACL,MAAM,EACN,OAAO,EACP,OAAO,EACP,YAAY,EACZ,SAAS,EACT,QAAQ,CACR,CAAC;AAqBF;;;;;;;GAOG;AACH,wBAAgB,EAAE,CACjB,MAAM,EACN,WAAW,EACX,UAAU,EACV,KAAK,EACL,MAAM,EACN,OAAO,SAAS,iBAAiB,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EACxD,OAAO,SAAS,iBAAiB,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EACxD,YAAY,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAEnE,MAAM,EAAE,kBAAkB,CACzB,MAAM,EACN,WAAW,EACX,UAAU,EACV,KAAK,EACL,MAAM,EACN,OAAO,EACP,OAAO,EACP,YAAY,CACZ,GACC,iBAAiB,CACnB,MAAM,EACN,WAAW,EACX,UAAU,EACV,KAAK,EACL,MAAM,EACN,OAAO,EACP,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,SAAS,CACT,CA6FA"}
|
package/dist/actor.js
CHANGED
|
@@ -2,7 +2,7 @@ import { actor, event, } from "rivetkit";
|
|
|
2
2
|
import { db } from "rivetkit/db";
|
|
3
3
|
import { createPiActions } from "./actions.js";
|
|
4
4
|
import { assertNoReservedNames, sharedActorConfig, splitConfig, wrapActions, } from "./actor-config.js";
|
|
5
|
-
import { closeHarness, createPiRuntime, openOnWake, PI_RUNTIME, piRuntime, withPiAccess, withUnavailablePi, } from "./runtime.js";
|
|
5
|
+
import { closeHarness, createPiRuntime, openOnWake, PI_RUNTIME, piRuntime, piStopping, withPiAccess, withUnavailablePi, } from "./runtime.js";
|
|
6
6
|
import { migratePiTables } from "./storage.js";
|
|
7
7
|
import { unwatchConnection, } from "./watches.js";
|
|
8
8
|
const piEvents = {
|
|
@@ -27,6 +27,7 @@ const piOptionKeys = [
|
|
|
27
27
|
"credentials",
|
|
28
28
|
"sandbox",
|
|
29
29
|
"documents",
|
|
30
|
+
"onAnswer",
|
|
30
31
|
];
|
|
31
32
|
/**
|
|
32
33
|
* Defines a Rivet Actor that owns one Pi Durable harness.
|
|
@@ -93,6 +94,14 @@ export function pi(config) {
|
|
|
93
94
|
},
|
|
94
95
|
onConnect: withPi(actorConfig.onConnect),
|
|
95
96
|
onDisconnect: async (c, conn) => {
|
|
97
|
+
// Shutdown runs onDisconnect in the same window as onSleep and
|
|
98
|
+
// onDestroy, in no set order, and those close Pi Durable. So a
|
|
99
|
+
// disconnect during shutdown never uses Pi, and its watches end when
|
|
100
|
+
// the harness closes.
|
|
101
|
+
if (c.abortSignal.aborted || piRuntime(c).status !== "open") {
|
|
102
|
+
await withUnavailablePi(c, piStopping(), () => actorConfig.onDisconnect?.(c, conn));
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
96
105
|
try {
|
|
97
106
|
await userOnDisconnect?.(c, conn);
|
|
98
107
|
}
|
package/dist/actor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actor.js","sourceRoot":"","sources":["../src/actor.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,EAEL,KAAK,GAGL,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,eAAe,EAAkB,MAAM,cAAc,CAAC;AAC/D,OAAO,EACN,qBAAqB,EACrB,iBAAiB,EACjB,WAAW,EACX,WAAW,GACX,MAAM,mBAAmB,CAAC;AAM3B,OAAO,EACN,YAAY,EACZ,eAAe,EACf,UAAU,EACV,UAAU,EAGV,SAAS,EACT,YAAY,EACZ,iBAAiB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAKN,iBAAiB,GACjB,MAAM,cAAc,CAAC;AAUtB,MAAM,QAAQ,GAAa;IAC1B,WAAW,EAAE,KAAK,EAAiB;IACnC,SAAS,EAAE,KAAK,EAAe;IAC/B,cAAc,EAAE,KAAK,EAAoB;IACzC,QAAQ,EAAE,KAAK,EAAc;CAC7B,CAAC;
|
|
1
|
+
{"version":3,"file":"actor.js","sourceRoot":"","sources":["../src/actor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { AssistantMessage } from "@earendil-works/pi-ai";
|
|
2
|
+
import { type ConversationId, type HarnessSettings, type RegistryReader } from "@earendil-works/pi-durable";
|
|
3
|
+
import type { PiContext } from "./runtime.js";
|
|
4
|
+
/** A final answer, as `onAnswer` receives it. */
|
|
5
|
+
export interface PiAnswer {
|
|
6
|
+
/** The conversation that answered. The root conversation, unless the app creates others. */
|
|
7
|
+
conversationId: ConversationId;
|
|
8
|
+
/** The answer's text, or `undefined` when it has none. */
|
|
9
|
+
text: string | undefined;
|
|
10
|
+
/** The model's message, with its content blocks and usage. */
|
|
11
|
+
message: AssistantMessage;
|
|
12
|
+
}
|
|
13
|
+
/** Called with the actor's context for every final answer. */
|
|
14
|
+
export type PiOnAnswer = (c: PiContext, answer: PiAnswer) => void | Promise<void>;
|
|
15
|
+
/** The extension that runs `onAnswer`. Conversations that use the default selection get it. */
|
|
16
|
+
export declare const ANSWER_EXTENSION = "rivet-pi-on-answer";
|
|
17
|
+
/**
|
|
18
|
+
* The app's registry and settings plus an extension whose `onYield` hook calls
|
|
19
|
+
* `onAnswer` with this actor's context. A registry's hooks are shared by every
|
|
20
|
+
* actor, so the actor's own view of the registry is the only place that knows
|
|
21
|
+
* which actor answered.
|
|
22
|
+
*/
|
|
23
|
+
export declare function withAnswerHook(options: {
|
|
24
|
+
registry: RegistryReader;
|
|
25
|
+
settings?: HarnessSettings;
|
|
26
|
+
}, c: PiContext, onAnswer: PiOnAnswer, report: (error: unknown) => void): {
|
|
27
|
+
registry: RegistryReader;
|
|
28
|
+
settings?: HarnessSettings;
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=answers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"answers.d.ts","sourceRoot":"","sources":["../src/answers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EACN,KAAK,cAAc,EAInB,KAAK,eAAe,EAEpB,KAAK,cAAc,EAEnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,iDAAiD;AACjD,MAAM,WAAW,QAAQ;IACxB,4FAA4F;IAC5F,cAAc,EAAE,cAAc,CAAC;IAC/B,0DAA0D;IAC1D,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,8DAA8D;IAC9D,OAAO,EAAE,gBAAgB,CAAC;CAC1B;AAED,8DAA8D;AAC9D,MAAM,MAAM,UAAU,GAAG,CACxB,CAAC,EAAE,SAAS,EACZ,MAAM,EAAE,QAAQ,KACZ,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,+FAA+F;AAC/F,eAAO,MAAM,gBAAgB,uBAAuB,CAAC;AAErD;;;;;GAKG;AACH,wBAAgB,cAAc,CAC7B,OAAO,EAAE;IAAE,QAAQ,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,EAAE,eAAe,CAAA;CAAE,EACjE,CAAC,EAAE,SAAS,EACZ,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAC9B;IAAE,QAAQ,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,EAAE,eAAe,CAAA;CAAE,CA2B1D"}
|
package/dist/answers.js
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { defineExtension, GenerationTask, hook, } from "@earendil-works/pi-durable";
|
|
2
|
+
/** The extension that runs `onAnswer`. Conversations that use the default selection get it. */
|
|
3
|
+
export const ANSWER_EXTENSION = "rivet-pi-on-answer";
|
|
4
|
+
/**
|
|
5
|
+
* The app's registry and settings plus an extension whose `onYield` hook calls
|
|
6
|
+
* `onAnswer` with this actor's context. A registry's hooks are shared by every
|
|
7
|
+
* actor, so the actor's own view of the registry is the only place that knows
|
|
8
|
+
* which actor answered.
|
|
9
|
+
*/
|
|
10
|
+
export function withAnswerHook(options, c, onAnswer, report) {
|
|
11
|
+
const extension = answerExtension(c, onAnswer, report);
|
|
12
|
+
let cached;
|
|
13
|
+
const registry = {
|
|
14
|
+
snapshot() {
|
|
15
|
+
const base = options.registry.snapshot();
|
|
16
|
+
if (cached?.base !== base) {
|
|
17
|
+
cached = { base, snapshot: withExtension(base, extension) };
|
|
18
|
+
}
|
|
19
|
+
return cached.snapshot;
|
|
20
|
+
},
|
|
21
|
+
subscribe: (listener) => options.registry.subscribe(listener),
|
|
22
|
+
};
|
|
23
|
+
// Without a default selection, every installed extension is selected, this one included.
|
|
24
|
+
const settings = options.settings &&
|
|
25
|
+
new Proxy(options.settings, {
|
|
26
|
+
get(target, property, receiver) {
|
|
27
|
+
if (property !== "extensions") {
|
|
28
|
+
return Reflect.get(target, property, receiver);
|
|
29
|
+
}
|
|
30
|
+
return target.extensions && [...target.extensions, extension];
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
return { registry, settings };
|
|
34
|
+
}
|
|
35
|
+
function answerExtension(c, onAnswer, report) {
|
|
36
|
+
return defineExtension({
|
|
37
|
+
name: ANSWER_EXTENSION,
|
|
38
|
+
hooks: [
|
|
39
|
+
hook(GenerationTask, {
|
|
40
|
+
onYield: async (message, api, context) => {
|
|
41
|
+
// A run that resumes after a crash yields the same answer again.
|
|
42
|
+
const key = `${ANSWER_EXTENSION}:${message.responseId ?? message.timestamp}`;
|
|
43
|
+
if (await api.memo(key, context))
|
|
44
|
+
return undefined;
|
|
45
|
+
try {
|
|
46
|
+
await onAnswer(c, {
|
|
47
|
+
conversationId: api.conversationId,
|
|
48
|
+
text: answerText(message),
|
|
49
|
+
message,
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
// A failed delivery leaves the answer in the conversation.
|
|
54
|
+
report(error);
|
|
55
|
+
return undefined;
|
|
56
|
+
}
|
|
57
|
+
await api.memo(key, true, context);
|
|
58
|
+
return undefined;
|
|
59
|
+
},
|
|
60
|
+
}),
|
|
61
|
+
],
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
function withExtension(base, extension) {
|
|
65
|
+
const installed = [...base.installed(), extension];
|
|
66
|
+
return {
|
|
67
|
+
installed: () => installed,
|
|
68
|
+
extension: (name) => name === extension.name ? extension : base.extension(name),
|
|
69
|
+
tools: () => base.tools(),
|
|
70
|
+
sections: () => base.sections(),
|
|
71
|
+
tasks: () => base.tasks(),
|
|
72
|
+
task: (name) => base.task(name),
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
function answerText(message) {
|
|
76
|
+
const text = message.content
|
|
77
|
+
.flatMap((block) => (block.type === "text" ? [block.text] : []))
|
|
78
|
+
.join("");
|
|
79
|
+
return text === "" ? undefined : text;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=answers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"answers.js","sourceRoot":"","sources":["../src/answers.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export type { PiActions, PiAgentChange, PiAgentInfo, PiCreateConversationOptions, PiPromptOptions, PiPromptResult, } from "./actions.js";
|
|
1
|
+
export type { PiActions, PiAgentChange, PiAgentInfo, PiCreateConversationOptions, PiPromptOptions, PiPromptResult, PiSubmitResult, } from "./actions.js";
|
|
2
2
|
export { type PiAccess, type PiActorConfigInput, type PiEvents, type PiUserActions, pi, } from "./actor.js";
|
|
3
|
+
export type { PiAnswer, PiOnAnswer } from "./answers.js";
|
|
3
4
|
export type { PiCredentialInfo, PiCredentialSource, PiProviderCredential, } from "./credentials.js";
|
|
4
5
|
export type { PiModelOptions, PiProviderConfig } from "./models.js";
|
|
5
6
|
export type { PiOptions } from "./runtime.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACX,SAAS,EACT,aAAa,EACb,WAAW,EACX,2BAA2B,EAC3B,eAAe,EACf,cAAc,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,KAAK,QAAQ,EACb,KAAK,kBAAkB,EACvB,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,EAAE,GACF,MAAM,YAAY,CAAC;AACpB,YAAY,EACX,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpE,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,YAAY,EACX,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,aAAa,GACb,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACX,SAAS,EACT,aAAa,EACb,WAAW,EACX,2BAA2B,EAC3B,eAAe,EACf,cAAc,EACd,cAAc,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,KAAK,QAAQ,EACb,KAAK,kBAAkB,EACvB,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,EAAE,GACF,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACzD,YAAY,EACX,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpE,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,YAAY,EACX,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,aAAa,GACb,MAAM,cAAc,CAAC"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,OAAO,EAKN,EAAE,GACF,MAAM,YAAY,CAAC"}
|
package/dist/runtime.d.ts
CHANGED
|
@@ -2,13 +2,16 @@ import type { Context } from "@earendil-works/chord";
|
|
|
2
2
|
import type { Models, ModelThinkingLevel } from "@earendil-works/pi-ai";
|
|
3
3
|
import { type ConversationDocToken, Harness, type HarnessOptions, type HarnessSettings, type ModelRef } from "@earendil-works/pi-durable";
|
|
4
4
|
import type { Sandbox, SandboxProvider } from "@rivet-dev/sandbox-adapter";
|
|
5
|
-
import { type ActorContext } from "rivetkit";
|
|
5
|
+
import { type ActorContext, UserError } from "rivetkit";
|
|
6
6
|
import type { DatabaseProvider, RawAccess } from "rivetkit/db";
|
|
7
|
+
import { type PiOnAnswer } from "./answers.js";
|
|
7
8
|
import { type PiModelOptions } from "./models.js";
|
|
8
9
|
import { type ConnectionWatches } from "./watches.js";
|
|
9
10
|
export type PiDatabaseProvider = DatabaseProvider<RawAccess>;
|
|
10
11
|
/** The actor context shape every Pi helper works against. */
|
|
11
12
|
export type PiContext = ActorContext<any, any, any, any, any, PiDatabaseProvider, any, any>;
|
|
13
|
+
/** Whether Pi Durable is open in this actor generation, or why it closed. */
|
|
14
|
+
export type PiStatus = "open" | "sleeping" | "destroyed";
|
|
12
15
|
/** How an actor generation stops. A sleep drains until `drainUntil`; a destroy stops at once. */
|
|
13
16
|
export type PiStop = {
|
|
14
17
|
reason: "sleep";
|
|
@@ -50,19 +53,29 @@ export interface PiOptions extends PiModelOptions {
|
|
|
50
53
|
sandbox?: SandboxProvider;
|
|
51
54
|
/** App documents that clients may read by `kind` with `harness.snapshot`. */
|
|
52
55
|
documents?: readonly ConversationDocToken<any>[];
|
|
56
|
+
/**
|
|
57
|
+
* Called with the actor's context for every final answer, such as to text
|
|
58
|
+
* it to the user. A run that resumes after a crash can call it again for
|
|
59
|
+
* the same answer if it didn't return. A throw goes to `onReport` and
|
|
60
|
+
* leaves the run as it is.
|
|
61
|
+
*/
|
|
62
|
+
onAnswer?: PiOnAnswer;
|
|
53
63
|
}
|
|
54
64
|
interface OpenHarness {
|
|
55
65
|
harness: Harness;
|
|
56
|
-
|
|
57
|
-
|
|
66
|
+
/** Calls `listener` whenever Pi's wake value changes. Returns a function that stops it. */
|
|
67
|
+
onWakeChange: (listener: () => void) => () => void;
|
|
68
|
+
/** Resumes Pi's due sleeps, for the scheduled `pi.wake`. */
|
|
69
|
+
resumeDue: () => void;
|
|
70
|
+
stopWake: () => void;
|
|
58
71
|
}
|
|
59
72
|
/** Per-actor-generation state, stored on `c.vars` under `PI_RUNTIME`. */
|
|
60
73
|
export interface PiRuntime {
|
|
61
74
|
/** The open harness, or the open in progress. */
|
|
62
75
|
harness?: Promise<OpenHarness>;
|
|
63
76
|
sandbox?: Promise<ConnectedSandbox>;
|
|
64
|
-
/**
|
|
65
|
-
|
|
77
|
+
/** Pi Durable is open until the actor starts to sleep or is destroyed. */
|
|
78
|
+
status: PiStatus;
|
|
66
79
|
/**
|
|
67
80
|
* The `onWake` context. Background work (keep-awake, scheduled wakes, the
|
|
68
81
|
* sandbox, reopening) uses it, because an action's context is cancelled
|
|
@@ -71,6 +84,13 @@ export interface PiRuntime {
|
|
|
71
84
|
actor?: PiContext;
|
|
72
85
|
/** Open Pi watches of connections, for this generation. */
|
|
73
86
|
watches: ConnectionWatches;
|
|
87
|
+
/**
|
|
88
|
+
* Calls that are using the harness and are not waiting on a run. A sleep
|
|
89
|
+
* drains them, so it never closes the harness under a call it admitted.
|
|
90
|
+
*/
|
|
91
|
+
calls: number;
|
|
92
|
+
/** Called when a counted call ends. A drain sets it. */
|
|
93
|
+
callEnded?: () => void;
|
|
74
94
|
}
|
|
75
95
|
export declare const PI_RUNTIME: unique symbol;
|
|
76
96
|
export declare function createPiRuntime(): PiRuntime;
|
|
@@ -89,7 +109,12 @@ export declare function openOnWake(c: PiContext, options: PiOptions): Promise<Ha
|
|
|
89
109
|
* actor drains the run. RivetKit's action signal also fires when the actor
|
|
90
110
|
* starts to stop, so it cannot cancel a wait.
|
|
91
111
|
*/
|
|
92
|
-
export declare function withHarness<T>(c: PiContext, options: PiOptions, run: (harness: Harness, context: Context) => Promise<T>): Promise<T>;
|
|
112
|
+
export declare function withHarness<T>(c: PiContext, options: PiOptions, run: (harness: Harness, context: Context, waiting: Waiting) => Promise<T>): Promise<T>;
|
|
113
|
+
/**
|
|
114
|
+
* Runs a wait on a run, such as `submission.wait`, without holding a sleep.
|
|
115
|
+
* While the run is busy, the run itself holds the sleep.
|
|
116
|
+
*/
|
|
117
|
+
export type Waiting = <W>(wait: () => Promise<W>) => Promise<W>;
|
|
93
118
|
/**
|
|
94
119
|
* Runs one of the app's own actions or hooks with the harness on `c.pi`. A
|
|
95
120
|
* failure that left Pi Durable unusable reopens it. The error reaches the
|
|
@@ -112,6 +137,10 @@ export declare function parseModelRef(name: string): ModelRef;
|
|
|
112
137
|
* sleep, or destroys it on destroy.
|
|
113
138
|
*/
|
|
114
139
|
export declare function closeHarness(c: PiContext, options: PiOptions, stop: PiStop): Promise<void>;
|
|
140
|
+
/** Resumes Pi's due sleeps when the scheduled `pi.wake` fires. Call it once the harness is open. */
|
|
141
|
+
export declare function resumeDueSleeps(c: PiContext): Promise<void>;
|
|
142
|
+
/** What a shutdown hook gets from `c.pi` once the actor has started to stop. */
|
|
143
|
+
export declare function piStopping(): UserError;
|
|
115
144
|
/** Runs `body` with a `c.pi` that throws `error` when read. */
|
|
116
145
|
export declare function withUnavailablePi<T>(c: PiContext, error: unknown, body: () => T | Promise<T>): T | Promise<T>;
|
|
117
146
|
/**
|
package/dist/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime.js
CHANGED
|
@@ -4,23 +4,18 @@ import { SqliteStorage } from "@earendil-works/pi-durable/storage/sqlite";
|
|
|
4
4
|
import { sandboxEnv } from "@rivet-dev/sandbox-adapter/pi";
|
|
5
5
|
import { UserError } from "rivetkit";
|
|
6
6
|
import { actorSqlite } from "./actor-sqlite.js";
|
|
7
|
+
import { ANSWER_EXTENSION, withAnswerHook, } from "./answers.js";
|
|
7
8
|
import { SourceCredentialStore } from "./credentials.js";
|
|
8
9
|
import { databaseEnv } from "./database-env.js";
|
|
9
10
|
import { toClientError } from "./errors.js";
|
|
10
11
|
import { createActorModelRuntime, emptyCredentialStore, } from "./models.js";
|
|
11
12
|
import { loadPiSandbox, savePiSandbox } from "./storage.js";
|
|
12
13
|
import { createConnectionWatches, reattachWatches, stopAllWatches, } from "./watches.js";
|
|
13
|
-
/**
|
|
14
|
-
* One minute, as in Cloudflare's Pi harness. A retry or poll wait longer than
|
|
15
|
-
* this lets the actor sleep, and a scheduled wake reopens Pi Durable at the
|
|
16
|
-
* deadline.
|
|
17
|
-
*/
|
|
18
|
-
const LONG_WAIT_MS = 60_000;
|
|
19
14
|
/** The internal action a scheduled wake calls. */
|
|
20
15
|
const WAKE_ACTION = "pi.wake";
|
|
21
16
|
export const PI_RUNTIME = Symbol.for("@rivet-dev/pi/runtime");
|
|
22
17
|
export function createPiRuntime() {
|
|
23
|
-
return {
|
|
18
|
+
return { status: "open", watches: createConnectionWatches(), calls: 0 };
|
|
24
19
|
}
|
|
25
20
|
export function piRuntime(c) {
|
|
26
21
|
const runtime = c.vars?.[PI_RUNTIME];
|
|
@@ -41,8 +36,10 @@ export async function openOnWake(c, options) {
|
|
|
41
36
|
/** Returns the actor's Pi Durable harness, opening it from SQLite on first use. */
|
|
42
37
|
async function ensureHarness(c, options, open = { resume: true }) {
|
|
43
38
|
const runtime = piRuntime(c);
|
|
44
|
-
|
|
45
|
-
|
|
39
|
+
// Callers check the status first, so a closed generation never reopens Pi Durable.
|
|
40
|
+
if (runtime.status !== "open") {
|
|
41
|
+
throw new Error(`pi durable cannot open after it closed (${runtime.status})`);
|
|
42
|
+
}
|
|
46
43
|
runtime.harness ??= openHarness(runtime.actor ?? c, runtime, options, open).catch((error) => {
|
|
47
44
|
runtime.harness = undefined;
|
|
48
45
|
throw toClientError(error);
|
|
@@ -58,15 +55,36 @@ async function ensureHarness(c, options, open = { resume: true }) {
|
|
|
58
55
|
* starts to stop, so it cannot cancel a wait.
|
|
59
56
|
*/
|
|
60
57
|
export async function withHarness(c, options, run) {
|
|
58
|
+
const runtime = piRuntime(c);
|
|
59
|
+
if (runtime.status !== "open")
|
|
60
|
+
throw piClosed(runtime.status);
|
|
61
61
|
const harness = await ensureHarness(c, options);
|
|
62
|
+
const release = countCall(runtime);
|
|
62
63
|
try {
|
|
63
|
-
return await run(harness, BACKGROUND_CONTEXT)
|
|
64
|
+
return await run(harness, BACKGROUND_CONTEXT, (wait) => {
|
|
65
|
+
release();
|
|
66
|
+
return wait();
|
|
67
|
+
});
|
|
64
68
|
}
|
|
65
69
|
catch (error) {
|
|
66
|
-
const runtime = piRuntime(c);
|
|
67
70
|
await recoverHarness(runtime.actor ?? c, runtime, options);
|
|
68
71
|
throw toClientError(error);
|
|
69
72
|
}
|
|
73
|
+
finally {
|
|
74
|
+
release();
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
/** Counts a call until the returned function runs. Calling it again does nothing. */
|
|
78
|
+
function countCall(runtime) {
|
|
79
|
+
runtime.calls += 1;
|
|
80
|
+
let counted = true;
|
|
81
|
+
return () => {
|
|
82
|
+
if (!counted)
|
|
83
|
+
return;
|
|
84
|
+
counted = false;
|
|
85
|
+
runtime.calls -= 1;
|
|
86
|
+
runtime.callEnded?.();
|
|
87
|
+
};
|
|
70
88
|
}
|
|
71
89
|
/**
|
|
72
90
|
* Runs one of the app's own actions or hooks with the harness on `c.pi`. A
|
|
@@ -79,8 +97,9 @@ export async function withHarness(c, options, run) {
|
|
|
79
97
|
export async function withPiAccess(c, options, body, { opensHarness = true } = {}) {
|
|
80
98
|
const runtime = piRuntime(c);
|
|
81
99
|
// Hooks such as onDisconnect still run after Pi Durable closed; only using c.pi fails.
|
|
82
|
-
if (runtime.
|
|
83
|
-
return withUnavailablePi(c,
|
|
100
|
+
if (runtime.status !== "open") {
|
|
101
|
+
return withUnavailablePi(c, piClosed(runtime.status), body);
|
|
102
|
+
}
|
|
84
103
|
if (!opensHarness && !runtime.harness) {
|
|
85
104
|
return withUnavailablePi(c, harnessNotOpen(), body);
|
|
86
105
|
}
|
|
@@ -96,6 +115,7 @@ export async function withPiAccess(c, options, body, { opensHarness = true } = {
|
|
|
96
115
|
return withUnavailablePi(c, error, body);
|
|
97
116
|
}
|
|
98
117
|
Object.defineProperty(c, "pi", { value: harness, configurable: true });
|
|
118
|
+
const release = countCall(runtime);
|
|
99
119
|
try {
|
|
100
120
|
return await body();
|
|
101
121
|
}
|
|
@@ -103,20 +123,36 @@ export async function withPiAccess(c, options, body, { opensHarness = true } = {
|
|
|
103
123
|
await recoverHarness(runtime.actor ?? c, runtime, options);
|
|
104
124
|
throw toClientError(error);
|
|
105
125
|
}
|
|
126
|
+
finally {
|
|
127
|
+
release();
|
|
128
|
+
}
|
|
106
129
|
}
|
|
107
130
|
function harnessNotOpen() {
|
|
108
131
|
return new UserError("Pi Durable is not open in this actor generation, so this shutdown hook cannot use c.pi.");
|
|
109
132
|
}
|
|
110
|
-
|
|
111
|
-
|
|
133
|
+
/** What a call gets once Pi Durable is closed for this generation. */
|
|
134
|
+
function piClosed(status) {
|
|
135
|
+
return new UserError(status === "sleeping"
|
|
136
|
+
? "Pi Durable is closed because the actor is going to sleep."
|
|
137
|
+
: "Pi Durable is closed because the actor was destroyed.");
|
|
112
138
|
}
|
|
113
139
|
async function openHarness(c, runtime, options, open = { resume: true }) {
|
|
114
140
|
const storage = await SqliteStorage.open(actorSqlite(c.db));
|
|
115
141
|
const now = options.now ?? Date.now;
|
|
142
|
+
const { registry, settings } = options.onAnswer
|
|
143
|
+
? withAnswerHook(options, c, options.onAnswer, (error) => {
|
|
144
|
+
c.log.error({ msg: "pi onAnswer failed", error: String(error) });
|
|
145
|
+
options.onReport?.(error, {
|
|
146
|
+
type: "extension_error",
|
|
147
|
+
extension: ANSWER_EXTENSION,
|
|
148
|
+
});
|
|
149
|
+
})
|
|
150
|
+
: options;
|
|
151
|
+
const wake = wakeActor(c, now);
|
|
116
152
|
const harness = await Harness.open(storage, {
|
|
117
153
|
models: options.models ?? (await createModels(c, options)),
|
|
118
|
-
registry
|
|
119
|
-
settings
|
|
154
|
+
registry,
|
|
155
|
+
settings,
|
|
120
156
|
env: options.env ??
|
|
121
157
|
(options.sandbox
|
|
122
158
|
? sandboxEnvBuilder(c, runtime, options.sandbox)
|
|
@@ -126,21 +162,27 @@ async function openHarness(c, runtime, options, open = { resume: true }) {
|
|
|
126
162
|
})),
|
|
127
163
|
conversationCreated: startingAgent(options),
|
|
128
164
|
now: options.now,
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
//
|
|
132
|
-
|
|
133
|
-
|
|
165
|
+
onWake: wake.onWake,
|
|
166
|
+
onReport: (error, info) => {
|
|
167
|
+
// A failed storage call closes the Session. Background work reports it
|
|
168
|
+
// here, with no action to catch it.
|
|
169
|
+
if (info.type === "session_failed") {
|
|
170
|
+
queueMicrotask(() => void recoverHarness(c, runtime, options));
|
|
171
|
+
}
|
|
172
|
+
options.onReport?.(error, info);
|
|
134
173
|
},
|
|
135
174
|
}, BACKGROUND_CONTEXT);
|
|
175
|
+
wake.attach(harness);
|
|
136
176
|
reportBlockedTasks(c, await harness.inspect(BACKGROUND_CONTEXT));
|
|
137
177
|
if (open.resume)
|
|
138
178
|
harness.resume();
|
|
139
|
-
const isBusy = async () => busyState(await harness.inspect(BACKGROUND_CONTEXT), now(), LONG_WAIT_MS)
|
|
140
|
-
.kind === "busy";
|
|
141
|
-
const stopBusyWatch = watchBusy(c, harness, now, LONG_WAIT_MS);
|
|
142
179
|
await reattachWatches(c, runtime.watches, harness, documentsByKind(options));
|
|
143
|
-
return {
|
|
180
|
+
return {
|
|
181
|
+
harness,
|
|
182
|
+
onWakeChange: wake.subscribe,
|
|
183
|
+
resumeDue: wake.resumeDue,
|
|
184
|
+
stopWake: wake.stop,
|
|
185
|
+
};
|
|
144
186
|
}
|
|
145
187
|
/** App documents by `kind`, for clients that name a document. */
|
|
146
188
|
export function documentsByKind(options) {
|
|
@@ -159,7 +201,7 @@ function isUsable(harness) {
|
|
|
159
201
|
/** Closes and reopens a harness that Pi Durable refuses to use. The reopened harness resumes from storage. */
|
|
160
202
|
async function recoverHarness(c, runtime, options) {
|
|
161
203
|
const current = runtime.harness;
|
|
162
|
-
if (!current || runtime.
|
|
204
|
+
if (!current || runtime.status !== "open")
|
|
163
205
|
return;
|
|
164
206
|
let open;
|
|
165
207
|
try {
|
|
@@ -168,7 +210,9 @@ async function recoverHarness(c, runtime, options) {
|
|
|
168
210
|
catch {
|
|
169
211
|
return;
|
|
170
212
|
}
|
|
171
|
-
if (runtime.harness !== current ||
|
|
213
|
+
if (runtime.harness !== current ||
|
|
214
|
+
runtime.status !== "open" ||
|
|
215
|
+
isUsable(open.harness))
|
|
172
216
|
return;
|
|
173
217
|
c.log.warn({
|
|
174
218
|
msg: "pi durable stopped after a failed commit, reopening it from storage",
|
|
@@ -189,7 +233,7 @@ async function recoverHarness(c, runtime, options) {
|
|
|
189
233
|
await reopened.catch(() => { });
|
|
190
234
|
}
|
|
191
235
|
async function closeOpenHarness(open, watches) {
|
|
192
|
-
open.
|
|
236
|
+
open.stopWake();
|
|
193
237
|
await stopAllWatches(watches);
|
|
194
238
|
await open.harness.close(BACKGROUND_CONTEXT);
|
|
195
239
|
}
|
|
@@ -264,53 +308,23 @@ function reportBlockedTasks(c, inspection) {
|
|
|
264
308
|
}
|
|
265
309
|
}
|
|
266
310
|
/**
|
|
267
|
-
*
|
|
268
|
-
*
|
|
269
|
-
*
|
|
270
|
-
*
|
|
271
|
-
*
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
for (const task of inspection.tasks) {
|
|
276
|
-
switch (task.state.kind) {
|
|
277
|
-
case "running":
|
|
278
|
-
case "ready": {
|
|
279
|
-
const deadline = waitDeadline(task.record.state.checkpoint);
|
|
280
|
-
if (deadline === undefined || deadline - now <= longWaitMs)
|
|
281
|
-
return { kind: "busy" };
|
|
282
|
-
until = Math.min(until ?? deadline, deadline);
|
|
283
|
-
break;
|
|
284
|
-
}
|
|
285
|
-
case "waiting":
|
|
286
|
-
case "completing":
|
|
287
|
-
case "blocked":
|
|
288
|
-
break;
|
|
289
|
-
}
|
|
290
|
-
}
|
|
291
|
-
return until === undefined ? { kind: "idle" } : { kind: "waiting", until };
|
|
292
|
-
}
|
|
293
|
-
/** The deadline of a task checkpoint in Pi's retry or poll phase. */
|
|
294
|
-
function waitDeadline(checkpoint) {
|
|
295
|
-
if (typeof checkpoint !== "object" ||
|
|
296
|
-
checkpoint === null ||
|
|
297
|
-
Array.isArray(checkpoint))
|
|
298
|
-
return undefined;
|
|
299
|
-
if (checkpoint.phase === "retry" && typeof checkpoint.until === "number")
|
|
300
|
-
return checkpoint.until;
|
|
301
|
-
if (checkpoint.phase === "poll" && typeof checkpoint.pollAt === "number")
|
|
302
|
-
return checkpoint.pollAt;
|
|
303
|
-
return undefined;
|
|
304
|
-
}
|
|
305
|
-
/**
|
|
306
|
-
* Keeps the actor awake while Pi Durable has live work, rechecking after
|
|
307
|
-
* every commit. Returns a function that stops watching.
|
|
311
|
+
* Keeps the actor awake while Pi Durable can run work, and schedules a wake
|
|
312
|
+
* for its earliest sleeping task, such as a retry backoff. Pi calls `onWake`
|
|
313
|
+
* after open and whenever the value changes. With `onWake`, Pi keeps no timer
|
|
314
|
+
* for sleeps, so the scheduled `pi.wake` action resumes them.
|
|
315
|
+
*
|
|
316
|
+
* Pi runs a sleep only once its time has passed, and reports a wake only when
|
|
317
|
+
* the value changes. So a wake that fires early, even by a millisecond,
|
|
318
|
+
* re-reads the value and schedules again.
|
|
308
319
|
*/
|
|
309
|
-
function
|
|
320
|
+
function wakeActor(c, now) {
|
|
321
|
+
const listeners = new Set();
|
|
322
|
+
let harness;
|
|
323
|
+
let latest = { active: false };
|
|
310
324
|
let release;
|
|
311
|
-
let
|
|
312
|
-
let
|
|
313
|
-
let
|
|
325
|
+
let scheduledAt;
|
|
326
|
+
let scheduling = false;
|
|
327
|
+
let fallback;
|
|
314
328
|
let stopped = false;
|
|
315
329
|
const stayAwake = () => {
|
|
316
330
|
if (release)
|
|
@@ -323,76 +337,94 @@ function watchBusy(c, harness, now, longWaitMs) {
|
|
|
323
337
|
release?.();
|
|
324
338
|
release = undefined;
|
|
325
339
|
};
|
|
326
|
-
const
|
|
327
|
-
if (
|
|
328
|
-
dirty = true;
|
|
340
|
+
const apply = () => {
|
|
341
|
+
if (stopped)
|
|
329
342
|
return;
|
|
330
|
-
}
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
343
|
+
const { active, at } = latest;
|
|
344
|
+
if (active)
|
|
345
|
+
return stayAwake();
|
|
346
|
+
if (at === undefined || at === scheduledAt)
|
|
347
|
+
return letGo();
|
|
348
|
+
// The actor may sleep only once its wake is written.
|
|
349
|
+
stayAwake();
|
|
350
|
+
if (scheduling || fallback?.at === at)
|
|
351
|
+
return;
|
|
352
|
+
scheduling = true;
|
|
353
|
+
c.schedule
|
|
354
|
+
.at(at, WAKE_ACTION)
|
|
355
|
+
.then(() => {
|
|
356
|
+
scheduledAt = at;
|
|
357
|
+
}, (error) => {
|
|
358
|
+
c.log.warn({
|
|
359
|
+
msg: "pi durable could not schedule its wake, so the actor stays awake until it",
|
|
360
|
+
error,
|
|
361
|
+
});
|
|
362
|
+
if (fallback)
|
|
363
|
+
clearTimeout(fallback.timer);
|
|
364
|
+
fallback = {
|
|
365
|
+
at,
|
|
366
|
+
timer: setTimeout(resumeDue, Math.max(0, at - now())),
|
|
367
|
+
};
|
|
368
|
+
})
|
|
369
|
+
.finally(() => {
|
|
370
|
+
scheduling = false;
|
|
371
|
+
apply();
|
|
372
|
+
});
|
|
373
|
+
};
|
|
374
|
+
const resumeDue = () => {
|
|
375
|
+
if (stopped || !harness)
|
|
376
|
+
return;
|
|
377
|
+
harness.resume();
|
|
378
|
+
if (fallback)
|
|
379
|
+
clearTimeout(fallback.timer);
|
|
380
|
+
fallback = undefined;
|
|
381
|
+
scheduledAt = undefined;
|
|
382
|
+
latest = harness.wake();
|
|
383
|
+
apply();
|
|
370
384
|
};
|
|
371
|
-
// Commit listeners must not call Pi Durable, so the check runs after the listener returns.
|
|
372
|
-
const unsubscribe = harness.subscribeCommits(() => queueMicrotask(() => void check()));
|
|
373
385
|
const stop = () => {
|
|
374
386
|
stopped = true;
|
|
375
|
-
|
|
387
|
+
if (fallback)
|
|
388
|
+
clearTimeout(fallback.timer);
|
|
376
389
|
letGo();
|
|
377
390
|
};
|
|
378
391
|
// Keep-awake only blocks idle sleep. Once shutdown starts it would only delay it.
|
|
379
392
|
c.abortSignal.addEventListener("abort", stop, { once: true });
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
393
|
+
return {
|
|
394
|
+
onWake: (wake) => {
|
|
395
|
+
latest = wake;
|
|
396
|
+
apply();
|
|
397
|
+
for (const listener of listeners)
|
|
398
|
+
listener();
|
|
399
|
+
},
|
|
400
|
+
attach: (opened) => {
|
|
401
|
+
harness = opened;
|
|
402
|
+
},
|
|
403
|
+
subscribe: (listener) => {
|
|
404
|
+
listeners.add(listener);
|
|
405
|
+
return () => listeners.delete(listener);
|
|
406
|
+
},
|
|
407
|
+
resumeDue,
|
|
408
|
+
stop: () => {
|
|
409
|
+
c.abortSignal.removeEventListener("abort", stop);
|
|
410
|
+
stop();
|
|
411
|
+
},
|
|
384
412
|
};
|
|
385
413
|
}
|
|
386
414
|
/**
|
|
387
|
-
* Waits until no run is active
|
|
388
|
-
*
|
|
389
|
-
*
|
|
390
|
-
*
|
|
415
|
+
* Waits until no run is active and no admitted call is using the harness, or
|
|
416
|
+
* until `drainUntil` passes. Idle sleep has no live work, so it waits only for
|
|
417
|
+
* a call that arrived as the sleep started. The deadline ends before
|
|
418
|
+
* RivetKit's, so closing still fits in the grace period. Pi's records are
|
|
419
|
+
* already stored, and the next wake resumes the work.
|
|
391
420
|
*/
|
|
392
|
-
async function drain(c, open, drainUntil) {
|
|
421
|
+
async function drain(c, runtime, open, drainUntil) {
|
|
393
422
|
let changed = () => { };
|
|
394
423
|
let timedOut = false;
|
|
395
424
|
const unsubscribe = open.harness.subscribeCommits(() => changed());
|
|
425
|
+
// Pi can settle its wake value after the last commit, so its change counts too.
|
|
426
|
+
const unsubscribeWake = open.onWakeChange(() => changed());
|
|
427
|
+
runtime.callEnded = () => changed();
|
|
396
428
|
const timer = setTimeout(() => {
|
|
397
429
|
timedOut = true;
|
|
398
430
|
changed();
|
|
@@ -403,7 +435,7 @@ async function drain(c, open, drainUntil) {
|
|
|
403
435
|
const next = new Promise((resolve) => {
|
|
404
436
|
changed = resolve;
|
|
405
437
|
});
|
|
406
|
-
if (!
|
|
438
|
+
if (runtime.calls === 0 && !open.harness.wake().active)
|
|
407
439
|
return;
|
|
408
440
|
await next;
|
|
409
441
|
}
|
|
@@ -414,6 +446,8 @@ async function drain(c, open, drainUntil) {
|
|
|
414
446
|
finally {
|
|
415
447
|
clearTimeout(timer);
|
|
416
448
|
unsubscribe();
|
|
449
|
+
unsubscribeWake();
|
|
450
|
+
runtime.callEnded = undefined;
|
|
417
451
|
}
|
|
418
452
|
}
|
|
419
453
|
/**
|
|
@@ -432,9 +466,9 @@ export async function closeHarness(c, options, stop) {
|
|
|
432
466
|
catch { }
|
|
433
467
|
// Destroy has no next generation to resume in, so it stops running work at once.
|
|
434
468
|
if (open && stop.reason === "sleep") {
|
|
435
|
-
await drain(c, open, stop.drainUntil).catch((error) => errors.push(error));
|
|
469
|
+
await drain(c, runtime, open, stop.drainUntil).catch((error) => errors.push(error));
|
|
436
470
|
}
|
|
437
|
-
runtime.
|
|
471
|
+
runtime.status = stop.reason === "sleep" ? "sleeping" : "destroyed";
|
|
438
472
|
runtime.harness = undefined;
|
|
439
473
|
if (open) {
|
|
440
474
|
await closeOpenHarness(open, runtime.watches).catch((error) => errors.push(error));
|
|
@@ -448,6 +482,14 @@ export async function closeHarness(c, options, stop) {
|
|
|
448
482
|
if (errors.length > 1)
|
|
449
483
|
throw new AggregateError(errors, "pi durable shutdown failed");
|
|
450
484
|
}
|
|
485
|
+
/** Resumes Pi's due sleeps when the scheduled `pi.wake` fires. Call it once the harness is open. */
|
|
486
|
+
export async function resumeDueSleeps(c) {
|
|
487
|
+
(await piRuntime(c).harness)?.resumeDue();
|
|
488
|
+
}
|
|
489
|
+
/** What a shutdown hook gets from `c.pi` once the actor has started to stop. */
|
|
490
|
+
export function piStopping() {
|
|
491
|
+
return new UserError("Pi Durable is closed because the actor is stopping.");
|
|
492
|
+
}
|
|
451
493
|
/** Runs `body` with a `c.pi` that throws `error` when read. */
|
|
452
494
|
export function withUnavailablePi(c, error, body) {
|
|
453
495
|
Object.defineProperty(c, "pi", {
|
package/dist/runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rivet-dev/pi",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.4",
|
|
4
4
|
"description": "Run the Pi coding agent as a durable Rivet Actor",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -41,22 +41,25 @@
|
|
|
41
41
|
"main": "./dist/index.js",
|
|
42
42
|
"types": "./dist/index.d.ts",
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@earendil-works/pi-coding-agent": "^1.0
|
|
44
|
+
"@earendil-works/pi-coding-agent": "^1.4.0",
|
|
45
45
|
"@opentelemetry/api": "^1.1.0",
|
|
46
|
-
"@rivet-dev/sandbox-adapter": "0.5.
|
|
46
|
+
"@rivet-dev/sandbox-adapter": "0.5.4"
|
|
47
47
|
},
|
|
48
48
|
"peerDependencies": {
|
|
49
|
-
"@earendil-works/chord": "^1.
|
|
50
|
-
"@earendil-works/pi-
|
|
51
|
-
"
|
|
49
|
+
"@earendil-works/chord": "^1.4.0",
|
|
50
|
+
"@earendil-works/pi-ai": "^1.4.0",
|
|
51
|
+
"@earendil-works/pi-durable": "^1.4.0",
|
|
52
|
+
"@earendil-works/pi-telemetry": "^1.4.0",
|
|
53
|
+
"rivetkit": ">=2.3.28 <2.4.0 || ^3.0.0-preview.2"
|
|
52
54
|
},
|
|
53
55
|
"devDependencies": {
|
|
54
|
-
"@earendil-works/chord": "
|
|
55
|
-
"@earendil-works/pi-ai": "
|
|
56
|
-
"@earendil-works/pi-durable": "
|
|
56
|
+
"@earendil-works/chord": "1.4.0",
|
|
57
|
+
"@earendil-works/pi-ai": "1.4.0",
|
|
58
|
+
"@earendil-works/pi-durable": "1.4.0",
|
|
59
|
+
"@earendil-works/pi-telemetry": "1.4.0",
|
|
57
60
|
"@opentelemetry/sdk-trace-node": "2.11.0",
|
|
58
61
|
"@types/node": "^24.0.0",
|
|
59
|
-
"rivetkit": "
|
|
62
|
+
"rivetkit": "3.0.0-preview.2",
|
|
60
63
|
"typescript": "^5.9.2",
|
|
61
64
|
"vitest": "^3.2.4"
|
|
62
65
|
},
|