@plurnk/plurnk-agui 2.0.0 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -7
- package/SPEC.md +117 -49
- package/dist/AguiPlus.js +1 -1
- package/dist/AguiPlus.js.map +1 -1
- package/dist/AguiSurface.d.ts +1 -0
- package/dist/AguiSurface.d.ts.map +1 -1
- package/dist/AguiSurface.js +4 -1
- package/dist/AguiSurface.js.map +1 -1
- package/dist/BuiltinActions.d.ts +1 -1
- package/dist/BuiltinActions.d.ts.map +1 -1
- package/dist/BuiltinActions.js +17 -0
- package/dist/BuiltinActions.js.map +1 -1
- package/dist/MessageAddress.d.ts +1 -0
- package/dist/MessageAddress.d.ts.map +1 -1
- package/dist/MessageAddress.js +4 -1
- package/dist/MessageAddress.js.map +1 -1
- package/dist/Module.d.ts.map +1 -1
- package/dist/Module.js +13 -13
- package/dist/Module.js.map +1 -1
- package/dist/Portal.d.ts +4 -1
- package/dist/Portal.d.ts.map +1 -1
- package/dist/Portal.js +137 -123
- package/dist/Portal.js.map +1 -1
- package/dist/ProposalHitl.d.ts +4 -2
- package/dist/ProposalHitl.d.ts.map +1 -1
- package/dist/ProposalHitl.js +16 -9
- package/dist/ProposalHitl.js.map +1 -1
- package/dist/RunHandler.d.ts +2 -2
- package/dist/RunHandler.d.ts.map +1 -1
- package/dist/RunHandler.js +66 -48
- package/dist/RunHandler.js.map +1 -1
- package/dist/Translator.d.ts +1 -1
- package/dist/Translator.d.ts.map +1 -1
- package/dist/Translator.js +3 -6
- package/dist/Translator.js.map +1 -1
- package/dist/observe.d.ts +1 -1
- package/dist/observe.d.ts.map +1 -1
- package/dist/observe.js +3 -1
- package/dist/observe.js.map +1 -1
- package/dist/run-events.d.ts +1 -0
- package/dist/run-events.d.ts.map +1 -1
- package/dist/run-events.js +1 -0
- package/dist/run-events.js.map +1 -1
- package/package.json +8 -8
package/README.md
CHANGED
|
@@ -5,7 +5,7 @@ interface and translates daemon lifecycle events into AG-UI events.
|
|
|
5
5
|
|
|
6
6
|
## Interface
|
|
7
7
|
|
|
8
|
-
`POST
|
|
8
|
+
`POST /agui` accepts `RunAgentInput` and returns an AG-UI event stream.
|
|
9
9
|
|
|
10
10
|
PLURNK uses standard AG-UI events for Runs, messages, steps, tool calls, state,
|
|
11
11
|
and approval requests. Additional execution metadata uses namespaced
|
|
@@ -32,9 +32,9 @@ delivers it into the parent's log ({§agui-topology-scope}).
|
|
|
32
32
|
| Packet and terminal usage | State updates and `plurnk.terminated`; daemon quantities pass through unchanged. |
|
|
33
33
|
|
|
34
34
|
READ of `reasoning://<worker>/…` is an operation receipt, not another reasoning stream.
|
|
35
|
-
On reattach, the durable conversation snapshot restores accepted reasoning
|
|
36
|
-
SENDs
|
|
37
|
-
|
|
35
|
+
On reattach, the durable conversation snapshot restores accepted reasoning and
|
|
36
|
+
SENDs. `forwardedProps.plurnk.mode="sync"` obtains that state without a prompt
|
|
37
|
+
or model inference ({§agui-conversation-sync}).
|
|
38
38
|
|
|
39
39
|
Pending proposals and user interactions use standard AG-UI interrupts and
|
|
40
40
|
resume Runs. Core decides their owner and disposition, including delegated
|
|
@@ -45,14 +45,15 @@ event schemas, and settlement rules live in [SPEC.md](./SPEC.md).
|
|
|
45
45
|
|
|
46
46
|
The daemon discovers this package as a module: its `package.json` declares
|
|
47
47
|
`plurnk: { kind: "module", module: "./module" }`, and the service composes
|
|
48
|
-
nothing by hand. The module mounts
|
|
48
|
+
nothing by hand. The module mounts only `/agui` on the daemon's listener
|
|
49
49
|
and reads its settings from the assembled environment, which carries this
|
|
50
50
|
package's `.env.defaults`. `SPEC.md` owns the exact value contract.
|
|
51
51
|
|
|
52
52
|
The module owns transport authentication, request validation, event translation,
|
|
53
53
|
and proposal delivery. It consumes core's disposition-bearing proposal projection
|
|
54
|
-
for both live events and reconnect
|
|
55
|
-
Core owns persistence and
|
|
54
|
+
for both live events and reconnect. The recorded worker owner handles approvals;
|
|
55
|
+
A2A clarification remains protocol-routed. Core owns persistence and server approval;
|
|
56
|
+
clients own rendering and local
|
|
56
57
|
terminal/editor behavior.
|
|
57
58
|
|
|
58
59
|
## Development
|
|
@@ -60,3 +61,7 @@ terminal/editor behavior.
|
|
|
60
61
|
```sh
|
|
61
62
|
npm run test -w @plurnk/plurnk-agui
|
|
62
63
|
```
|
|
64
|
+
|
|
65
|
+
Deterministic tests use isolated configuration. The service's explicit
|
|
66
|
+
`test:live` tier also includes the real-model AG-UI stories; its
|
|
67
|
+
`test:live:specimen` selector can run either story by exact name.
|
package/SPEC.md
CHANGED
|
@@ -9,15 +9,14 @@ does not recompute them.
|
|
|
9
9
|
|
|
10
10
|
- §agui-daemon-client **The module is a discovered module of the daemon.** The package
|
|
11
11
|
declares `plurnk: { kind: "module", module: "./module" }` and the daemon discovers it
|
|
12
|
-
({§module-discovery}); nothing composes it by hand. It claims
|
|
13
|
-
listener
|
|
12
|
+
({§module-discovery}); nothing composes it by hand. It claims only `/agui` on the daemon's
|
|
13
|
+
listener ({§http-host}, {§module-http-mounts}) and owns no socket. Its setup
|
|
14
14
|
registers the `agui` message scheme, and its start seam is `AguiPort`, the slice of
|
|
15
|
-
{§application-port} it calls. A daemon without a listener leaves it out.
|
|
16
|
-
separate process.
|
|
15
|
+
{§application-port} it calls. A daemon without a listener leaves it out.
|
|
17
16
|
- §agui-listener-admission **Bound is not ready.** The socket is core's
|
|
18
17
|
({§startup-listener-admission}): bound before durable-state admission and answering a
|
|
19
18
|
retryable `503 service-starting` until daemon activation admits it after every module has
|
|
20
|
-
started ({§module-http-mounts}). This module mounts
|
|
19
|
+
started ({§module-http-mounts}). This module mounts `/agui` at `start`, so no
|
|
21
20
|
request reaches it before its port is installed; from `stop` it answers `503
|
|
22
21
|
service-stopping`.
|
|
23
22
|
- §agui-thread-binding **A PLURNK workspace is the world; an AG-UI thread is a conversation over it**
|
|
@@ -61,6 +60,68 @@ does not recompute them.
|
|
|
61
60
|
lifecycle dialect. PLURNK owns the internal worker/loop/turn topology and projects it
|
|
62
61
|
through standard events plus namespaced `plurnk.*` extensions.
|
|
63
62
|
|
|
63
|
+
## §agui-worker-owner Approval ownership
|
|
64
|
+
|
|
65
|
+
An owning conversation is `agui://anonymous/threads/<encoded threadId>`, scoped by
|
|
66
|
+
workspace. It is not a socket, Run, or client bookkeeping worker. `RunAgentInput.tools`
|
|
67
|
+
declares its supported client-tool names, and `forwardedProps.plurnk.interactive` (a boolean)
|
|
68
|
+
states whether a person attends it; unstated, nobody does. Control attachment registers that
|
|
69
|
+
capability set and claims only runtime-owned work under {§worker-ownership}; observation does
|
|
70
|
+
neither. Capabilities survive disconnection and a later declaration replaces them for future
|
|
71
|
+
requests.
|
|
72
|
+
|
|
73
|
+
| Request | Ownership effect |
|
|
74
|
+
|---|---|
|
|
75
|
+
| Prompt, interrupt resume, or client operation | Control attachment for this conversation and its administrative actor. |
|
|
76
|
+
| Synchronization / connection with `forwardedProps.plurnk.control = true` | Explicit control attachment without inference. |
|
|
77
|
+
| Passive synchronization / connection; other management reads | No claim and no capability replacement. |
|
|
78
|
+
|
|
79
|
+
Approval delivery matches the recorded owner; interaction delivery matches its recorded
|
|
80
|
+
recipient. No connected-ancestor fallback or topology-based authority exists. An owner may
|
|
81
|
+
review an independently active child while its own worker is idle. Concurrent connections
|
|
82
|
+
to one owner can see the same gate; Core settles it at most once. A matching worker's Run
|
|
83
|
+
receives its own gate; only when none is connected does delivery use the owner's conversation
|
|
84
|
+
Runs. Unrelated operation Runs do not receive it.
|
|
85
|
+
Each presentation of a gate retains its own Run continuation. Successful resume emits
|
|
86
|
+
the standard `TOOL_CALL_RESULT` for each settled interrupt before continuing; this acknowledges
|
|
87
|
+
the decision, not completion of the approved operation.
|
|
88
|
+
Server approval policy belongs to Core.
|
|
89
|
+
|
|
90
|
+
## §agui-run-disconnect Run lifetime
|
|
91
|
+
|
|
92
|
+
Approval ownership does not confer responsibility for cancelling running work.
|
|
93
|
+
|
|
94
|
+
| Connection | Unexpected disconnect |
|
|
95
|
+
|---|---|
|
|
96
|
+
| Message Run or executing `op.exec` / `op.parse` Run | Cancel its bound worker with `client_disconnected`. |
|
|
97
|
+
| Resume of that Run's interrupt | Retain the same cancellation responsibility and worker binding. |
|
|
98
|
+
| Observation, including approval of independently started work | Detach; do not cancel work. |
|
|
99
|
+
| Other management Run | Detach. |
|
|
100
|
+
|
|
101
|
+
An authored terminal or interrupt ends the connection normally without cancellation.
|
|
102
|
+
The disconnect handler is installed before asynchronous Run preparation; a disconnected
|
|
103
|
+
request must not subsequently start work. Interrupt continuations are adapter-owned,
|
|
104
|
+
not worker ownership or a second core lifecycle. Rediscovery, including after module
|
|
105
|
+
restart, presents a fresh observer continuation rather than inferring a prior connection's
|
|
106
|
+
cancellation responsibility.
|
|
107
|
+
|
|
108
|
+
## §agui-owner-connection Persistent observation
|
|
109
|
+
|
|
110
|
+
`POST /agui/connect` accepts the standard `RunAgentInput`, without messages, actions, or
|
|
111
|
+
resumes. It uses the same snapshots, events, and interrupt representation as synchronization
|
|
112
|
+
({§agui-conversation-sync}), but waits when the worker is idle. New work, including owner-addressed
|
|
113
|
+
child gates, is delivered without client polling or fabricated prompts. A terminal or interrupt
|
|
114
|
+
ends that observation Run; the client reconnects after handling it. Detaching never cancels work.
|
|
115
|
+
This is the transport implementation of the AG-UI `connect()` extension, not another event protocol.
|
|
116
|
+
|
|
117
|
+
§agui-shutdown **Shutdown releases every remaining Run.** Module `stop` refuses new
|
|
118
|
+
requests while admitted Runs retain terminal-event delivery. In `close`, after core
|
|
119
|
+
settlement ({§module-shutdown-order}), each still-open Run receives `service-stopping`
|
|
120
|
+
as `CUSTOM plurnk.problem` and `RUN_ERROR`, then its response and heartbeat end. This
|
|
121
|
+
ends the transport Run, not a worker obligation. Already-ended Runs receive nothing
|
|
122
|
+
further; repeated closure is inert. Preparation finishing after closure cannot open
|
|
123
|
+
a new stream. Clients need not disconnect for the daemon to stop.
|
|
124
|
+
|
|
64
125
|
## §agui-projection The projection
|
|
65
126
|
|
|
66
127
|
One accepted Run or daemon notification produces zero-or-more AG-UI events:
|
|
@@ -93,11 +154,11 @@ or ACP plan is inferred from prose.
|
|
|
93
154
|
|
|
94
155
|
| Projection | Standard representation |
|
|
95
156
|
| ---------- | ----------------------- |
|
|
96
|
-
| NOTE | Ordinary tool-call operation and durable row, not assistant speech
|
|
157
|
+
| NOTE | Ordinary tool-call operation and durable row, not assistant speech or a substitute reasoning stream |
|
|
97
158
|
| WAIT | Durable row and lifecycle signal; its text does not become a response |
|
|
98
159
|
| SEND response | Assistant message through {§loop-response-messages}; delivery and completion remain independent |
|
|
99
160
|
| Completion | Standard run lifecycle without an invented message |
|
|
100
|
-
| Replay | Delivered messages in chronological order
|
|
161
|
+
| Replay | Delivered messages in chronological order |
|
|
101
162
|
|
|
102
163
|
§agui-readable-reasoning **Readable provider reasoning uses AG-UI's standard
|
|
103
164
|
reasoning channel.** A core `{§notifications-reasoning-event}` for the thread's
|
|
@@ -211,8 +272,8 @@ every other daemon surface.
|
|
|
211
272
|
- §agui-replay **Unoriented reattach replays once** — a rediscovered thread (the module restarted, a second
|
|
212
273
|
frontend arrived) whose Run input carries none of the log's durable assistant identities attaches
|
|
213
274
|
to its existing workspace by name→id and opens ORIENTED: durable
|
|
214
|
-
arrival rows replay as user messages, named by their source when another actor caused them ({§message-causal-source}), the model worker's
|
|
215
|
-
|
|
275
|
+
arrival rows replay as user messages, named by their source when another actor caused them ({§message-causal-source}), the model worker's SEND speech
|
|
276
|
+
replays chronologically, and the one validated current Run user message follows them under a
|
|
216
277
|
Run-owned identity in the authoritative `MESSAGES_SNAPSHOT`. Client-claimed earlier history is not
|
|
217
278
|
imported. A client already carrying any durable assistant identity receives no repeated snapshot.
|
|
218
279
|
Everything else stays
|
|
@@ -233,11 +294,15 @@ every other daemon surface.
|
|
|
233
294
|
## §agui-first-party-client-conformance First-party client conformance
|
|
234
295
|
|
|
235
296
|
§agui-official-client-conformance The ordinary integration gate runs the official
|
|
236
|
-
`@ag-ui/client`
|
|
297
|
+
`@ag-ui/client` against the real daemon and a deterministic HTTP model fixture.
|
|
237
298
|
Its verifier and message builder exercise lifecycle, state, streaming reasoning,
|
|
238
|
-
assistant speech,
|
|
239
|
-
evidence; it does not substitute for the
|
|
299
|
+
assistant speech, and provider refusals. The explicit real-model tier adds provider
|
|
300
|
+
evidence through the shared service live runner; it does not substitute for the
|
|
301
|
+
deterministic gate. Wire shapes derive
|
|
240
302
|
from the installed `@ag-ui/core` schemas ({§agui-run-authority}).
|
|
303
|
+
Deterministic daemon fixtures use the isolated mock-tier bootstrap
|
|
304
|
+
({§operator-config-real-model-profile}); operator configuration must not start
|
|
305
|
+
external resources during the integration gate.
|
|
241
306
|
|
|
242
307
|
The one-shot CLI and interactive terminal consume one AG-UI+
|
|
243
308
|
semantic contract. Each surface verifies the contracts-owned conformance corpus
|
|
@@ -247,7 +312,7 @@ host owns; decoration and layout are not cross-client protocol facts.
|
|
|
247
312
|
| Shared semantic fact | One-shot CLI | Interactive terminal | Intentional host-owned divergence |
|
|
248
313
|
| -------------------- | ------------ | -------------------- | --------------------------------- |
|
|
249
314
|
| lifecycle, model, packet status | structured output and Unix status trace | mutable prompt status | process and terminal lifecycle idioms |
|
|
250
|
-
|
|
|
315
|
+
| reasoning | structured record and trace | streaming waterfall blocks | host-native persistence and navigation |
|
|
251
316
|
| operation receipts and turn disposition | stdout plus structured operation record | scrollback waterfall | Unix streams versus visual surfaces |
|
|
252
317
|
| cancellation, proposals, and interactions | explicit noninteractive policy and exit | terminal review or input | each host owns human interaction |
|
|
253
318
|
| Problems and Notices | RFC 9457 JSON or stderr | terminal rows | presentation only; exact semantics survive |
|
|
@@ -273,19 +338,25 @@ Every client-owned daemon proposal—file edits and `[300]` operator questions
|
|
|
273
338
|
every contracts-owned client interaction emits an AG-UI tool call and terminates AG-UI Run A with
|
|
274
339
|
`RUN_FINISHED.outcome.type = "interrupt"`. The durable loop remains paused indefinitely
|
|
275
340
|
by default; absence is not an answer. AG-UI Run B on the same thread supplies standard
|
|
276
|
-
`RunAgentInput.resume` entries. Each entry
|
|
277
|
-
`
|
|
341
|
+
`RunAgentInput.resume` entries. Each entry echoes the supplied opaque `Interrupt.id`;
|
|
342
|
+
`Interrupt.toolCallId` separately identifies the underlying tool call (`prop:<logEntryId>`
|
|
343
|
+
for proposals, `int:<interactionId>` for client interactions). Separate presentations of
|
|
344
|
+
one gate have separate interrupt IDs, so an observer cannot inherit another Run's
|
|
345
|
+
cancellation responsibility ({§agui-run-disconnect}). Unknown presentations require
|
|
346
|
+
rediscovery; pending proposals and interactions remain durable in Core. The module
|
|
278
347
|
resolves the complete pending interrupt set for one worker, restores the thread's live projection
|
|
279
348
|
state, and only then releases it. The pending Worker's persisted Worker and Loop remain the exact
|
|
280
|
-
resolution identity.
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
349
|
+
resolution identity. Owner-addressed gates route under {§agui-worker-owner}: when an owning
|
|
350
|
+
conversation presents another worker's gate, its resume stays bound to that conversation while
|
|
351
|
+
releasing the exact requesting worker. Reconnect discovers pending gates from Core by recorded
|
|
352
|
+
owner, not inferred ancestry. A terminal published after a
|
|
284
353
|
descendant gate remains ordered behind that gate's topology resolution and presentation; it cannot
|
|
285
354
|
settle Run A before the interrupt is emitted. Concurrent descendant gates are
|
|
286
355
|
presented one Worker at a time; resolving one re-surfaces the next without admitting a new prompt.
|
|
287
356
|
Sibling and unrelated conversations never receive one another's gates. A resume containing foreign, partial, unknown, duplicate, or multi-worker
|
|
288
|
-
interrupt sets fails before any stopped operation is released.
|
|
357
|
+
interrupt sets fails before any stopped operation is released. Mixing presentations or
|
|
358
|
+
conversations produces `interrupt-binding-invalid`; a connection closed before validated
|
|
359
|
+
resolution produces `connection-closed` without releasing the stopped work.
|
|
289
360
|
Loop terminals received while a resume is being validated or resolved are held:
|
|
290
361
|
successful resolution delivers the bound Loop's terminal once; rejected resolution
|
|
291
362
|
emits its exact `RUN_ERROR`, never success from the previously interrupted Loop.
|
|
@@ -319,14 +390,11 @@ interrupt carries its optional `message` and `responseSchema`. A resolved resume
|
|
|
319
390
|
the generic resolved payload, while AG-UI cancellation becomes interaction cancellation. AG-UI
|
|
320
391
|
never sees or reconstructs an upstream protocol's continuation state.
|
|
321
392
|
|
|
322
|
-
§agui-proposal-disposition
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
| `loop` | Emit no tool call; core applies the carried decision and the Run continues |
|
|
328
|
-
|
|
329
|
-
The complete loop policy, operation, attrs, and stale-target facts remain visible evidence but are not re-evaluated here. Reconnect filters by the same disposition, so an internal policy failure cannot silently turn client presentation into an accidental fallback.
|
|
393
|
+
§agui-proposal-disposition AG-UI consumes Core's `ProposalProjection` identically
|
|
394
|
+
for live delivery and reconnect. A `review` disposition becomes a tool call and
|
|
395
|
+
standard interrupt only for the matching owner. `accept` and `reject` remain
|
|
396
|
+
Core's automatic settlements and never become client review work. Operation,
|
|
397
|
+
attrs and stale-target facts remain evidence, not authority inputs.
|
|
330
398
|
|
|
331
399
|
§agui-provider-policy-forwarding A textual Run forwards `selector` and
|
|
332
400
|
`childSelector` from `forwardedProps.plurnk` unchanged to `ApplicationPort.runLoop`.
|
|
@@ -337,8 +405,7 @@ selection.
|
|
|
337
405
|
## §agui-management-plane The action surface
|
|
338
406
|
|
|
339
407
|
PLURNK has three inputs through the one AG-UI Run endpoint. A normal user message
|
|
340
|
-
and a standard interrupt resume are not management actions
|
|
341
|
-
`loop.run` or `loop.resolve` action names.
|
|
408
|
+
and a standard interrupt resume are not management actions.
|
|
342
409
|
|
|
343
410
|
```mermaid
|
|
344
411
|
flowchart LR
|
|
@@ -384,6 +451,7 @@ successfully transported management Run; it does not turn the Run into
|
|
|
384
451
|
| `workspace.prompts` | Workspace | `workerId?`, `limit?` | `ApplicationPort.listPrompts` scoped like `log.read`: the thread's conversation worker unless `workerId` pins another. |
|
|
385
452
|
| `workspace.rename` | Workspace | `name` | `ApplicationPort.renameWorkspace`. |
|
|
386
453
|
| `workspace.share` | Workspace | `folder` | `ApplicationPort.shareWorkspace` shares the bound workspace ({§share}) into an absolute `folder` on the service host; returns `{ folder }`. |
|
|
454
|
+
| `workspace.rollback` | Workspace | `to`, `workerId?` | `ApplicationPort.rollback` ({§rollback}) reverses the settled file mutations after log coordinate `to` of the thread's conversation worker (or `workerId`), latest first, as the client worker's own operations; returns the `RollbackReport`. |
|
|
387
455
|
| `entry.read` | Workspace | `target`, `workerId?`, `channel?`, `offset?` | Calls `ApplicationPort.readEntry` from the explicit worker perspective or the thread conversation by default, preserving validated {§entry-read-result}. |
|
|
388
456
|
| `op.exec` | Workspace | `command` | Constructs one execution statement on the default `sh` runtime and calls `ApplicationPort.dispatchClientAction` on the client worker, attached to the conversation Worker (`conversationWorkerId`, else the workspace's model worker) for Functionality. |
|
|
389
457
|
| `op.parse` | Workspace | `text` | Parses and projects PLURNK text under {§agui-op-parse}. |
|
|
@@ -529,9 +597,8 @@ nor hide updates from the producer ({§notifications-stream-event-on-channel-cha
|
|
|
529
597
|
`loop.cancel` is its counterpart: the addressable spelling of the SSE-hangup
|
|
530
598
|
abort. An action that opens a stream remains one live AG-UI Run; its result is
|
|
531
599
|
held until every observed stream emits `stream/concluded`, then the result and
|
|
532
|
-
`RUN_FINISHED` close that Run.
|
|
533
|
-
|
|
534
|
-
the action into detached background work.
|
|
600
|
+
`RUN_FINISHED` close that Run. Executing actions retain their cancellation
|
|
601
|
+
responsibility through interrupts under {§agui-run-disconnect}.
|
|
535
602
|
|
|
536
603
|
## §agui-topology-scope Topology scope
|
|
537
604
|
|
|
@@ -563,20 +630,16 @@ One in-process subscription receives Core events; AG-UI routes each event to the
|
|
|
563
630
|
Run that owns it. A message AG-UI Run binds to the Worker selected by its thread
|
|
564
631
|
and then to the exact `loopId` returned by `ApplicationPort.runLoop`; an
|
|
565
632
|
interrupt-resume Run restores its predecessor's projection and notification
|
|
566
|
-
scope.
|
|
567
|
-
Loop. A
|
|
568
|
-
|
|
569
|
-
|
|
633
|
+
scope. A same-worker interrupt remains bound to the pending item's Worker and
|
|
634
|
+
Loop. A foreign-worker interrupt preserves the owner's controlling Run binding,
|
|
635
|
+
using the pending item's Worker and Loop only as its release identity. Only the
|
|
636
|
+
controlling Run's bound Loop terminal may emit
|
|
570
637
|
`plurnk.terminated` and close the SSE.
|
|
571
638
|
The custom event preserves the daemon's exact universal `result`; failures use
|
|
572
639
|
the Problem `type` as the AG-UI error code and `detail` as its message. The
|
|
573
640
|
module never reconstructs a failure from a status, summary, or exception text.
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
Worker's Runs so an action-produced interrupt can settle its initiating Run. When
|
|
577
|
-
neither exists, they route to the nearest live ancestor conversation according to
|
|
578
|
-
Core's Worker topology. They never interrupt a concurrent Run while an exact loop
|
|
579
|
-
owner is live, and a gate that reaches a Run inside an open reasoning lifecycle waits for
|
|
641
|
+
Gate routing follows {§agui-worker-owner}; topology does not confer authority.
|
|
642
|
+
A gate that reaches a Run inside an open reasoning lifecycle waits for
|
|
580
643
|
it ({§agui-gate-deferral}). Terminations
|
|
581
644
|
that race ahead of the `runLoop` acknowledgement are held until the loop identity
|
|
582
645
|
is known. Sibling and concurrent loops therefore cannot end, relabel, or duplicate
|
|
@@ -589,7 +652,8 @@ this Run.
|
|
|
589
652
|
| Every other action | None; the Run carries only its direct state snapshot and action result. | This action result. |
|
|
590
653
|
|
|
591
654
|
An operation Run owns an execution from the row that announces it: a started or
|
|
592
|
-
queued execution
|
|
655
|
+
queued execution receipt (`200` or `202`) carries `attrs.stream`. A failed receipt's
|
|
656
|
+
proposed address opens no stream. An admitted address stays open for the Run
|
|
593
657
|
until its `stream/concluded`, so the action result is deferred even when the
|
|
594
658
|
command writes late or never (a `stream/event` is a race the result must not
|
|
595
659
|
win). A detached execution (`<-1>`) is nobody's obligation and never defers the
|
|
@@ -618,13 +682,13 @@ address is the daemon's.
|
|
|
618
682
|
|
|
619
683
|
## §agui-run-endpoint The AG-UI Run endpoint
|
|
620
684
|
|
|
621
|
-
`POST
|
|
685
|
+
`POST /agui` accepts a schema-valid AG-UI `RunAgentInput`: the last textual
|
|
622
686
|
`user` message becomes the
|
|
623
|
-
`ApplicationPort.runLoop` prompt (`maxTurns`
|
|
624
|
-
the forwarded PLURNK properties
|
|
687
|
+
`ApplicationPort.runLoop` prompt (`maxTurns` from
|
|
688
|
+
the forwarded PLURNK properties); the response is `text/event-stream`,
|
|
625
689
|
one `data:` line per event, ending after `RUN_FINISHED`/`RUN_ERROR`. Multimodal user content
|
|
626
690
|
is rejected until the model-loop seam supports it deliberately. Proposal
|
|
627
|
-
disposition remains Core policy;
|
|
691
|
+
disposition remains Core policy; this module routes review to the worker's owner.
|
|
628
692
|
|
|
629
693
|
§agui-run-source The run's user message is the causal actor behind its inbound SEND
|
|
630
694
|
({§message-causal-source}). The module supplies its canonical address as the loop's `source`:
|
|
@@ -682,11 +746,15 @@ reconstruct one from `RUN_ERROR`.
|
|
|
682
746
|
| `workspace-required` | 400 | forwardedProps.plurnk.workspace must name a workspace. Recovery: Provide a non-empty workspace name. |
|
|
683
747
|
| `interrupt-duplicate` | 400 | The resume contains the same interrupt more than once. Recovery: Include each pending interrupt exactly once. |
|
|
684
748
|
| `interrupt-invalid` | 400 | The resume contains an invalid client interrupt. Recovery: Resume with the interrupt IDs and response shapes supplied by the pending tool calls. |
|
|
685
|
-
| `interrupt-not-pending` | 409 | The resume addresses an interrupt that is not pending. Recovery: Refresh pending interrupts before resuming. |
|
|
749
|
+
| `interrupt-not-pending` | 409 | The resume addresses an interrupt that is not pending, or an unknown interrupt presentation. Recovery: Refresh pending interrupts before resuming. |
|
|
750
|
+
| `interrupt-binding-invalid` | 400 | The resume combines interrupts from different Runs, or does not match its interrupt's conversation. |
|
|
751
|
+
| `connection-closed` | 499 | The connection closed before the interrupt was resolved. |
|
|
686
752
|
| `worker-scope-invalid` | 400 | One resume must address interrupts for exactly one worker. Recovery: Resume each worker separately. |
|
|
687
753
|
| `interrupt-set-incomplete` | 409 | The resume does not address every pending interrupt for worker *id*. Recovery: Resolve every pending interrupt for this worker in one resume. |
|
|
688
754
|
| `invalid-json` | 400 | The request body is not valid JSON. |
|
|
689
755
|
| `invalid-run-input` | 400 | The request body does not satisfy the AG-UI RunAgentInput contract. |
|
|
756
|
+
| `control-invalid` | 400 | control must be a boolean. |
|
|
757
|
+
| `interactive-invalid` | 400 | interactive must be a boolean. |
|
|
690
758
|
| `unsupported-run-mode` | 400 | forwardedProps.plurnk.mode must be "sync" when present. |
|
|
691
759
|
| `invalid-sync-input` | 400 | Conversation synchronization cannot include messages, an action, or an interrupt resume. |
|
|
692
760
|
| `user-message-required` | 400 | A new AG-UI Run requires a non-empty textual user message. Recovery: Provide a non-empty user message. |
|
package/dist/AguiPlus.js
CHANGED
|
@@ -27,7 +27,7 @@ export const proposalToolCall = (p) => {
|
|
|
27
27
|
const toolCallId = proposalToolCallId(p.logEntryId);
|
|
28
28
|
return [
|
|
29
29
|
{ type: EventType.TOOL_CALL_START, toolCallId, toolCallName: proposalToolName(p.op) },
|
|
30
|
-
{ type: EventType.TOOL_CALL_ARGS, toolCallId, delta: JSON.stringify({ op: p.op, target: p.target, body: p.body, attrs: p.attrs,
|
|
30
|
+
{ type: EventType.TOOL_CALL_ARGS, toolCallId, delta: JSON.stringify({ op: p.op, target: p.target, body: p.body, attrs: p.attrs, owner: p.owner }) },
|
|
31
31
|
{ type: EventType.TOOL_CALL_END, toolCallId },
|
|
32
32
|
];
|
|
33
33
|
};
|
package/dist/AguiPlus.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AguiPlus.js","sourceRoot":"","sources":["../src/AguiPlus.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,qCAAqC;AACrC,oFAAoF;AACpF,0EAA0E;AAC1E,EAAE;AACF,gEAAgE;AAChE,kFAAkF;AAElF,OAAO,EAAE,SAAS,EAA6C,MAAM,YAAY,CAAC;AAGlF,OAAO,EAAE,qBAAqB,EAA+C,MAAM,0BAA0B,CAAC;AAW9G,wEAAwE;AACxE,0FAA0F;AAC1F,6FAA6F;AAC7F,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,UAAkB,EAAU,EAAE,CAAC,QAAQ,UAAU,EAAE,CAAC;AACvF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,UAAkB,EAAiB,EAAE;IAC1E,MAAM,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1C,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF,mFAAmF;AACnF,qDAAqD;AACrD,iFAAiF;AACjF,8EAA8E;AAC9E,4BAA4B;AAC5B,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,kBAAkB,CAAC;AAE5E,+EAA+E;AAC/E,0EAA0E;AAC1E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAuB,EAAe,EAAE;IACrE,MAAM,UAAU,GAAG,kBAAkB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACpD,OAAO;QACH,EAAE,IAAI,EAAE,SAAS,CAAC,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QACrF,EAAE,IAAI,EAAE,SAAS,CAAC,cAAc,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"AguiPlus.js","sourceRoot":"","sources":["../src/AguiPlus.ts"],"names":[],"mappings":"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"}
|
package/dist/AguiSurface.d.ts
CHANGED
|
@@ -23,6 +23,7 @@ export declare const AGUI_BUILTIN_ACTIONS: Readonly<{
|
|
|
23
23
|
"workspace.prompts": AguiActionContract;
|
|
24
24
|
"workspace.share": AguiActionContract;
|
|
25
25
|
"workspace.rename": AguiActionContract;
|
|
26
|
+
"workspace.rollback": AguiActionContract;
|
|
26
27
|
"entry.read": AguiActionContract;
|
|
27
28
|
"op.exec": AguiActionContract;
|
|
28
29
|
"op.parse": AguiActionContract;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AguiSurface.d.ts","sourceRoot":"","sources":["../src/AguiSurface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAM3D,KAAK,eAAe,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE5D,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;CACrC;AAED,MAAM,WAAW,wBAAwB;IACrC,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC;CACtC;
|
|
1
|
+
{"version":3,"file":"AguiSurface.d.ts","sourceRoot":"","sources":["../src/AguiSurface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAM3D,KAAK,eAAe,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE5D,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;CACrC;AAED,MAAM,WAAW,wBAAwB;IACrC,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC;CACtC;AA8DD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoFwB,CAAC;AA6B1D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;EA2EgC,CAAC"}
|
package/dist/AguiSurface.js
CHANGED
|
@@ -33,11 +33,12 @@ const worker = object({
|
|
|
33
33
|
id: POSITIVE,
|
|
34
34
|
name: NONEMPTY,
|
|
35
35
|
created_at: NONEMPTY,
|
|
36
|
+
owner: NONEMPTY,
|
|
36
37
|
origin: { enum: ["model", "client", "_plurnk"] },
|
|
37
38
|
parentWorkerId: nullable(POSITIVE),
|
|
38
39
|
kind: { enum: ["conversation", "fork", "work"] },
|
|
39
40
|
lifecycle: { enum: ["idle", "queued", "running", "parked", "completed", "failed"] },
|
|
40
|
-
}, ["id", "name", "created_at", "origin", "parentWorkerId", "kind", "lifecycle"]);
|
|
41
|
+
}, ["id", "name", "created_at", "owner", "origin", "parentWorkerId", "kind", "lifecycle"]);
|
|
41
42
|
const capabilityProjection = ref("CapabilityProjection");
|
|
42
43
|
// {§worker-effort-source} — `source` says whether the effort was chosen or seeded.
|
|
43
44
|
const effortResult = object({
|
|
@@ -94,6 +95,8 @@ export const AGUI_BUILTIN_ACTIONS = Object.freeze({
|
|
|
94
95
|
"workspace.prompts": action("workspace", object({ workerId: POSITIVE, limit: POSITIVE }), object({ prompts: array(string()) }, ["prompts"])),
|
|
95
96
|
"workspace.share": action("workspace", object({ folder: NONEMPTY }, ["folder"]), object({ folder: NONEMPTY }, ["folder"])),
|
|
96
97
|
"workspace.rename": action("workspace", object({ name: NONEMPTY }, ["name"]), object({ id: POSITIVE, name: NONEMPTY }, ["id", "name"])),
|
|
98
|
+
// {§rollback} — undo the bound worker's file mutations after a log coordinate, through ordinary operations.
|
|
99
|
+
"workspace.rollback": action("workspace", object({ to: NONEMPTY, workerId: POSITIVE }, ["to"]), ref("RollbackReport")),
|
|
97
100
|
"entry.read": action("workspace", object({
|
|
98
101
|
target: NONEMPTY,
|
|
99
102
|
workerId: POSITIVE,
|
package/dist/AguiSurface.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AguiSurface.js","sourceRoot":"","sources":["../src/AguiSurface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AguiSurface.js","sourceRoot":"","sources":["../src/AguiSurface.ts"],"names":[],"mappings":"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"}
|
package/dist/BuiltinActions.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type ActionOutcome } from "./AguiPlus.ts";
|
|
2
2
|
import { type AguiDiscovery, type ApplicationPort, type ClientEnvelope } from "@plurnk/plurnk-contracts";
|
|
3
3
|
import type { RunAgentInput } from "./types.ts";
|
|
4
|
-
export type BuiltinActionsPort = Pick<ApplicationPort, "attachWorkspace" | "cancelDrain" | "createWorkspace" | "dispatchClientAction" | "ensureModelWorker" | "executorJsonBodyTags" | "executorTags" | "forkWorker" | "listModels" | "listPrompts" | "listProviders" | "listWorkers" | "listWorkspaces" | "look" | "readEntry" | "readLog" | "readWorkerEffort" | "readWorkerModel" | "readWorkspaceCapabilities" | "renameWorkspace" | "runLoop" | "setWorkerEffort" | "setWorkerModel" | "setWorkerSpawnModel" | "setWorkspaceCapabilities" | "shareWorkspace">;
|
|
4
|
+
export type BuiltinActionsPort = Pick<ApplicationPort, "attachWorkspace" | "cancelDrain" | "createWorkspace" | "dispatchClientAction" | "ensureModelWorker" | "executorJsonBodyTags" | "executorTags" | "forkWorker" | "listModels" | "listPrompts" | "listProviders" | "listWorkers" | "listWorkspaces" | "look" | "readEntry" | "readLog" | "readWorkerEffort" | "readWorkerModel" | "readWorkspaceCapabilities" | "renameWorkspace" | "rollback" | "runLoop" | "setWorkerEffort" | "setWorkerModel" | "setWorkerSpawnModel" | "setWorkspaceCapabilities" | "shareWorkspace">;
|
|
5
5
|
export default class BuiltinActions {
|
|
6
6
|
#private;
|
|
7
7
|
constructor({ seam, capabilities, envelope, requireWorkspace }: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BuiltinActions.d.ts","sourceRoot":"","sources":["../src/BuiltinActions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAyC,KAAK,aAAa,EAAE,KAAK,eAAe,EAAyB,KAAK,cAAc,EAAkE,MAAM,0BAA0B,CAAC;AAGvO,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAwChD,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACjC,eAAe,EACb,iBAAiB,GACjB,aAAa,GACb,iBAAiB,GACjB,sBAAsB,GACtB,mBAAmB,GACnB,sBAAsB,GACtB,cAAc,GACd,YAAY,GACZ,YAAY,GACZ,aAAa,GACb,eAAe,GACf,aAAa,GACb,gBAAgB,GAChB,MAAM,GACN,WAAW,GACX,SAAS,GACT,kBAAkB,GAClB,iBAAiB,GACjB,2BAA2B,GAC3B,iBAAiB,GACjB,SAAS,GACT,iBAAiB,GACjB,gBAAgB,GAChB,qBAAqB,GACrB,0BAA0B,GAC1B,gBAAgB,CACrB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,cAAc;;IAM/B,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE;QAC5D,IAAI,EAAE,MAAM,kBAAkB,CAAC;QAC/B,YAAY,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;QAC3C,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;YAAE,GAAG,EAAE,cAAc,CAAC;YAAC,UAAU,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;QAC3H,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,KAAK,cAAc,CAAC;KAClF,EAKA;IAKK,cAAc,CAChB,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACpC,KAAK,EAAE,aAAa,EACpB,GAAG,EAAE,cAAc,GAAG,IAAI,EAC1B,oBAAoB,CAAC,EAAE,MAAM,GAC9B,OAAO,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"BuiltinActions.d.ts","sourceRoot":"","sources":["../src/BuiltinActions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAyC,KAAK,aAAa,EAAE,KAAK,eAAe,EAAyB,KAAK,cAAc,EAAkE,MAAM,0BAA0B,CAAC;AAGvO,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAwChD,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACjC,eAAe,EACb,iBAAiB,GACjB,aAAa,GACb,iBAAiB,GACjB,sBAAsB,GACtB,mBAAmB,GACnB,sBAAsB,GACtB,cAAc,GACd,YAAY,GACZ,YAAY,GACZ,aAAa,GACb,eAAe,GACf,aAAa,GACb,gBAAgB,GAChB,MAAM,GACN,WAAW,GACX,SAAS,GACT,kBAAkB,GAClB,iBAAiB,GACjB,2BAA2B,GAC3B,iBAAiB,GACjB,UAAU,GACV,SAAS,GACT,iBAAiB,GACjB,gBAAgB,GAChB,qBAAqB,GACrB,0BAA0B,GAC1B,gBAAgB,CACrB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,cAAc;;IAM/B,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE;QAC5D,IAAI,EAAE,MAAM,kBAAkB,CAAC;QAC/B,YAAY,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;QAC3C,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;YAAE,GAAG,EAAE,cAAc,CAAC;YAAC,UAAU,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;QAC3H,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,KAAK,cAAc,CAAC;KAClF,EAKA;IAKK,cAAc,CAChB,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACpC,KAAK,EAAE,aAAa,EACpB,GAAG,EAAE,cAAc,GAAG,IAAI,EAC1B,oBAAoB,CAAC,EAAE,MAAM,GAC9B,OAAO,CAAC,aAAa,CAAC,CA2ZxB;CAEJ"}
|
package/dist/BuiltinActions.js
CHANGED
|
@@ -132,6 +132,23 @@ export default class BuiltinActions {
|
|
|
132
132
|
}
|
|
133
133
|
return { ok: true, result: await this.#seam().renameWorkspace(world.workspaceId, p.name) };
|
|
134
134
|
}
|
|
135
|
+
// {§rollback} — the bound conversation's log, or a named worker's; the reversals are this
|
|
136
|
+
// client's own operations in its worker.
|
|
137
|
+
case "workspace.rollback": {
|
|
138
|
+
if (typeof p.to !== "string" || p.to.length === 0) {
|
|
139
|
+
return actionFailure("invalid-action-parameters", "workspace.rollback requires a log coordinate.", 400, { field: "to", recovery: "Name the coordinate as <loop>/<turn>/<item>." });
|
|
140
|
+
}
|
|
141
|
+
if (Object.hasOwn(p, "workerId")
|
|
142
|
+
&& (typeof p.workerId !== "number" || !Number.isSafeInteger(p.workerId) || p.workerId <= 0)) {
|
|
143
|
+
return actionFailure("invalid-action-parameters", "workspace.rollback workerId must be a positive integer.", 400, { field: "workerId", recovery: "Name a worker of this workspace, or omit it for the conversation." });
|
|
144
|
+
}
|
|
145
|
+
return { ok: true, result: await this.#seam().rollback({
|
|
146
|
+
workspaceId: world.workspaceId,
|
|
147
|
+
workerId: typeof p.workerId === "number" ? p.workerId : conversationWorkerId ?? await this.#seam().ensureModelWorker(world.workspaceId),
|
|
148
|
+
clientWorkerId: world.workerId,
|
|
149
|
+
to: p.to,
|
|
150
|
+
}) };
|
|
151
|
+
}
|
|
135
152
|
case "entry.read": {
|
|
136
153
|
if (typeof p.target !== "string") {
|
|
137
154
|
return actionFailure("invalid-action-parameters", "entry.read requires a string target.", 400, { field: "target", recovery: "Provide an entry URI." });
|