diff --git a/vendor/agents/docs/content/docs/architecture.mdx b/vendor/agents/docs/content/docs/architecture.mdx index c1110594..3b9408bc 100644 --- a/vendor/agents/docs/content/docs/architecture.mdx +++ b/vendor/agents/docs/content/docs/architecture.mdx @@ -51,7 +51,7 @@ A conversation is idle until a prompt starts a run, and goes back to idle when t An idle agent sleeps and frees its memory. The next action on its key wakes it: the agent opens Pi from SQLite, resumes interrupted work, and reconnects to the same sandbox the first time a tool needs it, so clients don't do anything different. While the agent sleeps, its sandbox is suspended. -During a retry or poll wait longer than a minute, the Actor also sleeps, and a scheduled wake resumes the work when the wait ends. +During a retry or poll wait, the Actor also sleeps, and a scheduled wake resumes the work when the wait ends.
diff --git a/vendor/agents/docs/content/docs/pi.mdx b/vendor/agents/docs/content/docs/pi.mdx index b4c53eac..65659ddd 100644 --- a/vendor/agents/docs/content/docs/pi.mdx +++ b/vendor/agents/docs/content/docs/pi.mdx @@ -189,7 +189,7 @@ A fork with `fork: "current"` starts with a copy of the document. Clients can al - When you ship new code, running work gets up to `sleepGracePeriod` (15 minutes) to finish before the Actor restarts. - Anything cut off resumes from its last saved step, after your `onWake` runs. -- A retry wait longer than a minute lets the Actor sleep, and a scheduled wake resumes it. +- A retry wait lets the Actor sleep, and a scheduled wake resumes it when the wait ends. - Destroying the Actor stops it immediately. See [Architecture](/agents/docs/architecture). diff --git a/vendor/agents/examples/docs/durable-ai-agents/chat-agent.ts b/vendor/agents/examples/docs/durable-ai-agents/chat-agent.ts index e94efabb..2ff077b1 100644 --- a/vendor/agents/examples/docs/durable-ai-agents/chat-agent.ts +++ b/vendor/agents/examples/docs/durable-ai-agents/chat-agent.ts @@ -12,6 +12,8 @@ export const Plan = defineDoc<{ steps: { text: string; done: boolean }[] }>({ history: "latest", fork: "current", initial: () => ({ steps: [] }), + // Store the whole document every 50 changes, so loading it replays at most 50. + checkpointWhen: (_value, _ops, { deltasSinceBase }) => deltasSinceBase >= 50, }); const updatePlan = defineTool({ diff --git a/vendor/agents/examples/docs/package.json b/vendor/agents/examples/docs/package.json index 730080d5..8c334fc6 100644 --- a/vendor/agents/examples/docs/package.json +++ b/vendor/agents/examples/docs/package.json @@ -7,10 +7,10 @@ }, "dependencies": { "@daytonaio/sdk": "^0.216.0", - "@earendil-works/chord": "1.3.0", - "@earendil-works/pi-ai": "1.3.0", - "@earendil-works/pi-coding-agent": "1.3.0", - "@earendil-works/pi-durable": "1.3.0", + "@earendil-works/chord": "1.4.0", + "@earendil-works/pi-ai": "1.4.0", + "@earendil-works/pi-coding-agent": "1.4.0", + "@earendil-works/pi-durable": "1.4.0", "@hono/node-server": "^2.1.5", "@linear/sdk": "^97.0.0", "@octokit/rest": "^22.0.1", @@ -18,14 +18,14 @@ "@rivet-dev/pi": "workspace:*", "@rivet-dev/sandbox-adapter": "workspace:*", "@rivet-dev/workflows": "1.0.0", - "@rivetkit/react": "2.3.26", + "@rivetkit/react": "3.0.0-preview.2", "@slack/web-api": "^8.2.0", "discord-interactions": "^4.4.0", "e2b": "^2.51.0", "freestyle": "^0.2.16", "hono": "^4.13.12", "react": "^19.3.0", - "rivetkit": "2.3.26" + "rivetkit": "3.0.0-preview.2" }, "devDependencies": { "@types/node": "^24.0.0", diff --git a/vendor/agents/examples/docs/pi/documents/chambers.ts b/vendor/agents/examples/docs/pi/documents/chambers.ts index b44dbb2d..b333f548 100644 --- a/vendor/agents/examples/docs/pi/documents/chambers.ts +++ b/vendor/agents/examples/docs/pi/documents/chambers.ts @@ -8,4 +8,6 @@ export const Chambers = defineDoc<{ solved: string[] }>({ history: "latest", fork: "current", initial: () => ({ solved: [] }), + // Store the whole document every 50 changes, so loading it replays at most 50. + checkpointWhen: (_value, _ops, { deltasSinceBase }) => deltasSinceBase >= 50, });