@plurnk/plurnk-agui 1.17.0 → 1.19.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.
Files changed (48) hide show
  1. package/.env.defaults +9 -2
  2. package/README.md +2 -1
  3. package/SPEC.md +127 -54
  4. package/dist/AguiPlus.d.ts +0 -3
  5. package/dist/AguiPlus.d.ts.map +1 -1
  6. package/dist/AguiPlus.js +0 -3
  7. package/dist/AguiPlus.js.map +1 -1
  8. package/dist/AguiSurface.d.ts +0 -1
  9. package/dist/AguiSurface.d.ts.map +1 -1
  10. package/dist/AguiSurface.js +1 -8
  11. package/dist/AguiSurface.js.map +1 -1
  12. package/dist/BuiltinActions.d.ts +2 -1
  13. package/dist/BuiltinActions.d.ts.map +1 -1
  14. package/dist/BuiltinActions.js +24 -8
  15. package/dist/BuiltinActions.js.map +1 -1
  16. package/dist/EventRouter.js +2 -2
  17. package/dist/EventRouter.js.map +1 -1
  18. package/dist/MessageAddress.d.ts +9 -0
  19. package/dist/MessageAddress.d.ts.map +1 -0
  20. package/dist/MessageAddress.js +25 -0
  21. package/dist/MessageAddress.js.map +1 -0
  22. package/dist/Module.d.ts +10 -0
  23. package/dist/Module.d.ts.map +1 -1
  24. package/dist/Module.js +92 -33
  25. package/dist/Module.js.map +1 -1
  26. package/dist/Portal.d.ts +2 -11
  27. package/dist/Portal.d.ts.map +1 -1
  28. package/dist/Portal.js +41 -27
  29. package/dist/Portal.js.map +1 -1
  30. package/dist/RunHandler.d.ts +1 -1
  31. package/dist/RunHandler.d.ts.map +1 -1
  32. package/dist/RunHandler.js +14 -16
  33. package/dist/RunHandler.js.map +1 -1
  34. package/dist/Translator.d.ts +1 -1
  35. package/dist/Translator.d.ts.map +1 -1
  36. package/dist/Translator.js +56 -107
  37. package/dist/Translator.js.map +1 -1
  38. package/dist/action-results.d.ts +0 -1
  39. package/dist/action-results.d.ts.map +1 -1
  40. package/dist/action-results.js +1 -26
  41. package/dist/action-results.js.map +1 -1
  42. package/dist/config.d.ts +2 -0
  43. package/dist/config.d.ts.map +1 -1
  44. package/dist/config.js +10 -1
  45. package/dist/config.js.map +1 -1
  46. package/dist/types.d.ts +2 -0
  47. package/dist/types.d.ts.map +1 -1
  48. package/package.json +6 -6
@@ -2,8 +2,7 @@ import { TurnDisposition } from "@plurnk/plurnk-contracts";
2
2
  // The projection — plurnk's log-shaped wire onto AG-UI's event vocabulary. PURE: one daemon
3
3
  // notification in, zero-or-more AG-UI events out, with per-worker turn tracking as the only state.
4
4
  // The mapping ({§agui-projection}):
5
- // log/entry op=TASK (model) → ACTIVITY_SNAPSHOT (the latest task inventory)
6
- // log/entry op=SEND (model) → optional standard reasoning lifecycle, then TEXT_MESSAGE triple
5
+ // log/entry response (model) → optional standard reasoning lifecycle, then TEXT_MESSAGE triple
7
6
  // (assistant speech; the signal rides plurnk.send)
8
7
  // log/entry rejected emission → forensic row only, no conversational event
9
8
  // log/entry other (model) → TOOL_CALL_START/ARGS/END + TOOL_CALL_RESULT (an op row IS a
@@ -17,11 +16,11 @@ import { TurnDisposition } from "@plurnk/plurnk-contracts";
17
16
  // ({§agui-numbers-passthrough}).
18
17
  import { EventType, } from "./types.js";
19
18
  import { derivationActivity } from "./AguiPlus.js";
20
- import { AcpPlanValue, Validator } from "@plurnk/plurnk-contracts";
19
+ import MessageAddress from "./MessageAddress.js";
20
+ import { Validator } from "@plurnk/plurnk-contracts";
21
21
  export default class Translator {
22
22
  #threadId;
23
23
  #runId; // AG-UI's Run id (echoed from RunAgentInput.runId) — the standard face
24
- #planMessageId;
25
24
  #currentTurn = null;
26
25
  #stepOpen = false;
27
26
  #modelWorkerId;
@@ -31,7 +30,6 @@ export default class Translator {
31
30
  constructor(args) {
32
31
  this.#threadId = args.threadId;
33
32
  this.#runId = args.runId;
34
- this.#planMessageId = `${args.threadId}/plan`;
35
33
  this.#currentTurn = args.continuation?.currentTurn ?? null;
36
34
  this.#modelWorkerId = args.continuation?.modelWorkerId ?? args.modelWorkerId ?? null;
37
35
  this.#completedReasoning = new Map(args.continuation?.completedReasoning.map(([turnId, values]) => [turnId, [...values]]) ?? []);
@@ -89,12 +87,7 @@ export default class Translator {
89
87
  logEntry(n) {
90
88
  const e = n.entry;
91
89
  const events = [];
92
- const planProjection = typeof e.op === "string" && TurnDisposition.isOp(e.op)
93
- ? Translator.#projectPlanTransaction(e.tx)
94
- : null;
95
- const clientEntry = planProjection === null
96
- ? e
97
- : { ...e, tx: planProjection.tx };
90
+ const clientEntry = e;
98
91
  // {§agui-topology-scope} — the workspace broadcast carries EVERY worker's rows (workers, the
99
92
  // plurnk worker, siblings); only the THREAD's model worker projects onto the core vocabulary.
100
93
  // Everything else rides plurnk.row/plurnk.ambient — visible to rich clients as topology,
@@ -107,10 +100,8 @@ export default class Translator {
107
100
  this.#modelWorkerId = workerId;
108
101
  const foreign = this.#modelWorkerId !== null && typeof workerId === "number" && workerId !== this.#modelWorkerId;
109
102
  // {§agui-row-channel} — the complete client-facing row rides plurnk.row alongside the core projection:
110
- // curation metadata, durable tags, coordinates — everything the TUI/nvim render that
111
- // the core vocabulary can't hold. TASK bodies use the same ACP projection as PLAN activity;
112
- // native extensions do not cross this standards boundary. Rich clients render from
113
- // plurnk.row; generic clients never see the difference.
103
+ // curation metadata, durable tags, coordinates — everything clients render that
104
+ // the core vocabulary can't hold. Rich clients render the original operations.
114
105
  const row = { type: EventType.CUSTOM, name: "plurnk.row", value: clientEntry };
115
106
  if (foreign) {
116
107
  events.push(row);
@@ -120,38 +111,33 @@ export default class Translator {
120
111
  // A family client renders the SEND from plurnk.row rather than duplicating
121
112
  // TEXT_MESSAGE. Delay that one mirror until after the standard reasoning
122
113
  // lifecycle so both generic and family clients observe reasoning before speech.
123
- const response = Translator.isResponse(e);
124
- const delayedSendRow = e.origin === "model" && (response || planProjection !== null);
114
+ const response = Translator.isResponse(e, this.#threadId);
115
+ const lifecycle = typeof e.op === "string" && TurnDisposition.isOp(e.op);
116
+ const reasoningRow = response || lifecycle || e.op === "NOTE";
117
+ const delayedSendRow = e.origin === "model" && reasoningRow;
125
118
  if (!delayedSendRow)
126
119
  events.push(row);
127
120
  if (typeof e.turn_id === "number")
128
121
  events.push(...this.#enterTurn(e.turn_id));
129
- if (e.origin !== "model") {
122
+ if (e.origin !== "model" && !response) {
130
123
  events.push({ type: EventType.CUSTOM, name: "plurnk.ambient", value: clientEntry });
131
124
  return events;
132
125
  }
133
126
  const id = e.coordinate ?? String(e.id);
134
- if (response || planProjection !== null) {
127
+ if (reasoningRow) {
135
128
  const text = Translator.#txBody(e.tx);
136
129
  events.push(...Translator.#readableReasoningEvents(id, Translator.#claimReasoning(this.#completedReasoning, e.turn_id, e.reasoning)));
137
- events.push(row);
138
- if (planProjection !== null) {
139
- events.push({
140
- type: EventType.ACTIVITY_SNAPSHOT,
141
- messageId: this.#planMessageId,
142
- activityType: "PLAN",
143
- content: planProjection.plan,
144
- replace: true,
145
- });
130
+ if (delayedSendRow)
131
+ events.push(row);
132
+ if (response) {
133
+ events.push({ type: EventType.TEXT_MESSAGE_START, messageId: id, role: "assistant" });
134
+ events.push({ type: EventType.TEXT_MESSAGE_CONTENT, messageId: id, delta: text });
135
+ events.push({ type: EventType.TEXT_MESSAGE_END, messageId: id });
136
+ }
137
+ if (response || lifecycle) {
146
138
  events.push({ type: EventType.CUSTOM, name: "plurnk.send", value: { signal: e.signal, status: e.status_rx, coordinate: e.coordinate } });
147
139
  return events;
148
140
  }
149
- events.push({ type: EventType.TEXT_MESSAGE_START, messageId: id, role: "assistant" });
150
- if (text.length > 0)
151
- events.push({ type: EventType.TEXT_MESSAGE_CONTENT, messageId: id, delta: text });
152
- events.push({ type: EventType.TEXT_MESSAGE_END, messageId: id });
153
- events.push({ type: EventType.CUSTOM, name: "plurnk.send", value: { signal: e.signal, status: e.status_rx, coordinate: e.coordinate } });
154
- return events;
155
141
  }
156
142
  if (e.op === null) {
157
143
  const kind = Translator.#modelArtifactKind(e.attrs);
@@ -258,14 +244,11 @@ export default class Translator {
258
244
  }
259
245
  return events;
260
246
  }
261
- // {§agui-replay} — the workspace log as AG-UI history: model inventories retain their
262
- // activity identity and model SENDs become assistant messages. Everything else
247
+ // {§agui-replay} — delivered model responses become assistant messages. Everything else
263
248
  // stays reachable through live plurnk.row rendering. Wire rows arrive as the
264
249
  // log.read projection (tx parsed).
265
250
  replay(entries, currentUser) {
266
251
  const messages = [];
267
- let currentPlan = null;
268
- let currentPlanPosition = 0;
269
252
  const deliveredReasoning = new Map();
270
253
  const chronological = entries.toSorted((left, right) => {
271
254
  const leftId = typeof left.id === "number" ? left.id : Number.MAX_SAFE_INTEGER;
@@ -274,29 +257,23 @@ export default class Translator {
274
257
  });
275
258
  for (const e of chronological) {
276
259
  const id = String(e.coordinate ?? e.id);
277
- if (e.origin === "_plurnk" && e.op === "prompt") {
278
- messages.push({ id, role: "user", content: Translator.#resultContent(e.rx) });
260
+ // {§message-arrival} — an arrival replays as a user message; another actor's arrival
261
+ // carries its source as the message name ({§message-causal-source}).
262
+ if (e.origin === "_plurnk" && e.op === "SEND" && Translator.#attrKind(e.attrs) === "message") {
263
+ messages.push({ id: MessageAddress.messageId(e.source, this.#threadId) ?? id,
264
+ role: "user", content: Translator.#txBody(e.tx), ...(typeof e.source === "string" ? { name: e.source } : {}) });
279
265
  continue;
280
266
  }
281
- if (e.origin !== "model")
267
+ const response = Translator.isResponse(e, this.#threadId);
268
+ if (e.origin !== "model" && !response)
282
269
  continue;
283
270
  const text = Translator.#txBody(e.tx);
284
- if (e.op === "SEND" || typeof e.op === "string" && TurnDisposition.isOp(e.op)) {
271
+ if (e.op === "SEND" || e.op === "NOTE" || typeof e.op === "string" && TurnDisposition.isOp(e.op)) {
285
272
  const reasoning = Translator.#claimReasoning(deliveredReasoning, e.turn_id, e.reasoning);
286
273
  if (reasoning.length > 0)
287
274
  messages.push({ id: `${id}/reasoning`, role: "reasoning", content: reasoning });
288
275
  }
289
- if (typeof e.op === "string" && TurnDisposition.isOp(e.op)) {
290
- currentPlan = {
291
- id: this.#planMessageId,
292
- role: "activity",
293
- activityType: "PLAN",
294
- content: Translator.#txPlan(e.tx),
295
- };
296
- currentPlanPosition = messages.length;
297
- continue;
298
- }
299
- if (Translator.isResponse(e)) {
276
+ if (response) {
300
277
  const message = { id, role: "assistant", content: text };
301
278
  messages.push(message);
302
279
  }
@@ -306,8 +283,6 @@ export default class Translator {
306
283
  }
307
284
  }
308
285
  }
309
- if (currentPlan !== null)
310
- messages.splice(currentPlanPosition, 0, currentPlan);
311
286
  if (currentUser !== undefined && !messages.some(({ id }) => id === currentUser.id)) {
312
287
  messages.push(currentUser);
313
288
  }
@@ -337,9 +312,6 @@ export default class Translator {
337
312
  { op: "replace", path: "/plurnk/status/lifecycle", value: "running" },
338
313
  { op: "replace", path: "/plurnk/status/loopId", value: packet.loopId },
339
314
  { op: "replace", path: "/plurnk/status/packetCount", value: packet.packetCount },
340
- { op: "replace", path: "/plurnk/status/scheduledAt", value: packet.scheduledAt ?? null },
341
- { op: "replace", path: "/plurnk/status/intervalMinutes", value: packet.intervalMinutes ?? null },
342
- { op: "replace", path: "/plurnk/status/recurrenceId", value: packet.recurrenceId ?? null },
343
315
  ],
344
316
  }];
345
317
  }
@@ -378,7 +350,7 @@ export default class Translator {
378
350
  return value;
379
351
  }
380
352
  // {§agui-readable-reasoning} Durable reasoning precedes the turn's first
381
- // speech or inventory projection when live delivery has not already supplied it.
353
+ // speech or note projection when live delivery has not already supplied it.
382
354
  static #readableReasoningEvents(sendId, value) {
383
355
  if (typeof value !== "string" || value.length === 0)
384
356
  return [];
@@ -405,42 +377,37 @@ export default class Translator {
405
377
  const kind = parsed.kind;
406
378
  return kind === "emissionAttempt" ? kind : null;
407
379
  }
408
- static #projectPlanTransaction(tx) {
409
- let parsed = tx;
410
- if (typeof tx === "string") {
411
- try {
412
- parsed = JSON.parse(tx);
413
- }
414
- catch (error) {
415
- throw new TypeError("A TASK log row carries malformed transaction JSON.", { cause: error });
416
- }
417
- }
418
- if (parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) {
419
- throw new TypeError("A TASK log row carries a noncanonical transaction.");
420
- }
421
- const transaction = parsed;
422
- try {
423
- const plan = AcpPlanValue.project(transaction.body);
424
- return { plan, tx: { ...transaction, body: plan } };
425
- }
426
- catch (error) {
427
- throw new TypeError("A TASK log row carries a noncanonical Plurnk Plan body.", { cause: error });
428
- }
429
- }
430
- static #txPlan(tx) {
431
- return Translator.#projectPlanTransaction(tx).plan;
432
- }
433
380
  // {§loop-response-messages}: share admission with reattach orientation.
434
- static isResponse(entry) {
435
- if (entry.origin !== "model" || entry.op !== "SEND"
436
- || typeof entry.status_rx !== "number" || entry.status_rx < 200 || entry.status_rx >= 300
437
- || entry.source != null || entry.inherited_history === 1)
381
+ static isResponse(entry, threadId) {
382
+ if (entry.op !== "SEND")
383
+ return false;
384
+ const deliveredReply = Translator.#attrKind(entry.attrs) === "reply";
385
+ if ((!deliveredReply && entry.source != null) || entry.inherited_history === 1)
438
386
  return false;
439
387
  const tx = typeof entry.tx === "string" ? JSON.parse(entry.tx) : entry.tx;
440
- return tx !== null && typeof tx === "object" && tx.target == null;
388
+ if (tx === null || typeof tx !== "object")
389
+ return false;
390
+ if (!(typeof entry.status_rx === "number" && entry.status_rx >= 200 && entry.status_rx < 300))
391
+ return false;
392
+ if (Translator.#txBody(entry.tx).length === 0)
393
+ return false;
394
+ const rx = typeof entry.rx === "string" ? JSON.parse(entry.rx) : entry.rx;
395
+ if (rx === null || typeof rx !== "object")
396
+ return false;
397
+ const answers = rx.answers;
398
+ if (!Array.isArray(answers))
399
+ return false;
400
+ if (threadId === undefined)
401
+ return true;
402
+ return !deliveredReply && entry.origin === "model" && answers.length === 0
403
+ || answers.some((address) => MessageAddress.messageId(address, threadId) !== null);
441
404
  }
442
405
  // The model-facing textual statement body out of the tx. The real
443
406
  // wire ships tx PARSED (an object); a string is tolerated and parsed for robustness.
407
+ static #attrKind(attrs) {
408
+ const parsed = typeof attrs === "string" ? JSON.parse(attrs) : attrs;
409
+ return parsed !== null && typeof parsed === "object" ? parsed.kind : undefined;
410
+ }
444
411
  static #txBody(tx) {
445
412
  let parsed = tx;
446
413
  if (typeof tx === "string") {
@@ -470,24 +437,6 @@ export default class Translator {
470
437
  return "";
471
438
  return JSON.stringify(v);
472
439
  }
473
- static #resultContent(value) {
474
- let parsed = value;
475
- if (typeof parsed === "string") {
476
- const raw = parsed;
477
- try {
478
- parsed = JSON.parse(parsed);
479
- }
480
- catch {
481
- return raw;
482
- }
483
- }
484
- if (parsed !== null && typeof parsed === "object") {
485
- const content = parsed.content;
486
- if (typeof content === "string")
487
- return content;
488
- }
489
- throw new TypeError("A prompt replay row must carry textual rx.content.");
490
- }
491
440
  // Tool-call args: the op's addressing + body as one JSON string (AG-UI streams args as deltas;
492
441
  // a dispatched plurnk op is atomic, so the whole args object arrives as one delta).
493
442
  static #argsFor(e) {
@@ -1 +1 @@
1
- {"version":3,"file":"Translator.js","sourceRoot":"","sources":["../src/Translator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Translator.js","sourceRoot":"","sources":["../src/Translator.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,4 @@ export declare class HttpProblemError extends Error {
5
5
  constructor(problem: ProblemDetails);
6
6
  }
7
7
  export declare const actionFailure: (code: string, detail: string, status?: number, extensions?: Readonly<Record<string, unknown>>) => ActionOutcome;
8
- export declare const problemFromError: (error: unknown) => ProblemDetails | null;
9
8
  //# sourceMappingURL=action-results.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"action-results.d.ts","sourceRoot":"","sources":["../src/action-results.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAA6C,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1G,qBAAa,gBAAiB,SAAQ,KAAK;IACvC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IAEjC,YAAY,OAAO,EAAE,cAAc,EAIlC;CACJ;AAED,eAAO,MAAM,aAAa,SAChB,MAAM,UACJ,MAAM,WACN,MAAM,eACF,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAC9C,aAOD,CAAC;AAEH,eAAO,MAAM,gBAAgB,UAAW,OAAO,KAAG,cAAc,GAAG,IAoBlE,CAAC"}
1
+ {"version":3,"file":"action-results.d.ts","sourceRoot":"","sources":["../src/action-results.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAEzE,qBAAa,gBAAiB,SAAQ,KAAK;IACvC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IAEjC,YAAY,OAAO,EAAE,cAAc,EAIlC;CACJ;AAED,eAAO,MAAM,aAAa,SAChB,MAAM,UACJ,MAAM,WACN,MAAM,eACF,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAC9C,aAOD,CAAC"}
@@ -1,6 +1,6 @@
1
1
  // Action outcomes and failures the AG-UI module's run and built-in paths both produce.
2
2
  import {} from "./AguiPlus.js";
3
- import { Problems, Validator } from "@plurnk/plurnk-contracts";
3
+ import { Problems } from "@plurnk/plurnk-contracts";
4
4
  export class HttpProblemError extends Error {
5
5
  problem;
6
6
  constructor(problem) {
@@ -17,29 +17,4 @@ export const actionFailure = (code, detail, status = 400, extensions = {}) => ({
17
17
  ...extensions,
18
18
  }),
19
19
  });
20
- export const problemFromError = (error) => {
21
- if (error instanceof HttpProblemError)
22
- return error.problem;
23
- if (typeof error !== "object" || error === null)
24
- return null;
25
- const result = error.result;
26
- if (result !== undefined) {
27
- try {
28
- return Validator.assertOperationResult(result).problem ?? null;
29
- }
30
- catch {
31
- return null;
32
- }
33
- }
34
- const problem = error.problem;
35
- if (problem !== undefined) {
36
- try {
37
- return Validator.assertProblemDetails(problem);
38
- }
39
- catch {
40
- return null;
41
- }
42
- }
43
- return null;
44
- };
45
20
  //# sourceMappingURL=action-results.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"action-results.js","sourceRoot":"","sources":["../src/action-results.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,OAAO,EAAsB,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAA6C,MAAM,0BAA0B,CAAC;AAE1G,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAC9B,OAAO,CAAiB;IAEjC,YAAY,OAAuB;QAC/B,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CACzB,IAAY,EACZ,MAAc,EACd,MAAM,GAAW,GAAG,EACpB,UAAU,GAAsC,EAAE,EACrC,EAAE,CAAC,CAAC;IACjB,EAAE,EAAE,KAAK;IACT,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE;QAC1D,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,kBAAkB;QAC9D,SAAS,EAAE,KAAK;QAChB,GAAG,UAAU;KAChB,CAAC;CACL,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAyB,EAAE;IACtE,IAAI,KAAK,YAAY,gBAAgB;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC;IAC5D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC7D,MAAM,MAAM,GAAI,KAA8B,CAAC,MAAM,CAAC;IACtD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACvB,IAAI,CAAC;YACD,OAAO,SAAS,CAAC,qBAAqB,CAAC,MAAyB,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC;QACtF,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IACD,MAAM,OAAO,GAAI,KAA+B,CAAC,OAAO,CAAC;IACzD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACxB,IAAI,CAAC;YACD,OAAO,SAAS,CAAC,oBAAoB,CAAC,OAAyB,CAAC,CAAC;QACrE,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"action-results.js","sourceRoot":"","sources":["../src/action-results.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,OAAO,EAAsB,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAuB,MAAM,0BAA0B,CAAC;AAEzE,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAC9B,OAAO,CAAiB;IAEjC,YAAY,OAAuB;QAC/B,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CACzB,IAAY,EACZ,MAAc,EACd,MAAM,GAAW,GAAG,EACpB,UAAU,GAAsC,EAAE,EACrC,EAAE,CAAC,CAAC;IACjB,EAAE,EAAE,KAAK;IACT,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE;QAC1D,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,kBAAkB;QAC9D,SAAS,EAAE,KAAK;QAChB,GAAG,UAAU;KAChB,CAAC;CACL,CAAC,CAAC"}
package/dist/config.d.ts CHANGED
@@ -2,6 +2,7 @@ export interface ModuleOptions {
2
2
  readonly host: string;
3
3
  readonly port: number;
4
4
  readonly token?: string;
5
+ readonly allowOrigin?: string;
5
6
  readonly maxTurns?: number;
6
7
  readonly heartbeatMs?: number;
7
8
  readonly env?: NodeJS.ProcessEnv;
@@ -10,6 +11,7 @@ export interface ResolvedModuleOptions {
10
11
  readonly host: string;
11
12
  readonly port: number;
12
13
  readonly token: string;
14
+ readonly allowOrigin: string;
13
15
  readonly maxTurns?: number;
14
16
  readonly heartbeatMs: number;
15
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACpC;AAED,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAChC;AAsBD,eAAO,MAAM,oBAAoB,YAAa,aAAa,KAAG,qBAoB7D,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACpC;AAED,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAChC;AAsBD,eAAO,MAAM,oBAAoB,YAAa,aAAa,KAAG,qBA2B7D,CAAC"}
package/dist/config.js CHANGED
@@ -13,14 +13,23 @@ const environmentMaxTurns = (raw) => {
13
13
  };
14
14
  export const resolveModuleOptions = (options) => {
15
15
  const env = options.env === undefined ? process.env : options.env;
16
- const token = options.token === undefined ? env.PLURNK_AGUI_TOKEN ?? "" : options.token;
16
+ // {§operator-config-only-home} — an absent key is a broken floor, never a silent "no
17
+ // authentication": only the panel's own empty value may say that the listener is open.
18
+ const token = options.token === undefined ? env.PLURNK_AGUI_TOKEN : options.token;
19
+ if (token === undefined)
20
+ throw new Error("PLURNK_AGUI_TOKEN is missing from the assembled environment floor.");
17
21
  if (typeof token !== "string") {
18
22
  throw new Error(`ModuleOptions.token must be a string; got ${JSON.stringify(token)}.`);
19
23
  }
24
+ // {§agui-cors} — the panel states the origin; only its own empty value sends no CORS header.
25
+ const allowOrigin = options.allowOrigin === undefined ? env.PLURNK_AGUI_ALLOW_ORIGIN : options.allowOrigin;
26
+ if (allowOrigin === undefined)
27
+ throw new Error("PLURNK_AGUI_ALLOW_ORIGIN is missing from the assembled environment floor.");
20
28
  return {
21
29
  host: options.host,
22
30
  port: options.port,
23
31
  token,
32
+ allowOrigin,
24
33
  maxTurns: options.maxTurns === undefined
25
34
  ? environmentMaxTurns(env.PLURNK_AGUI_MAX_TURNS)
26
35
  : safeInteger(options.maxTurns, "ModuleOptions.maxTurns", -1),
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAiBA,MAAM,YAAY,GAAG,aAAa,CAAC;AAEnC,MAAM,WAAW,GAAG,CAChB,GAAY,EACZ,IAAY,EACZ,OAAe,EACf,OAAO,GAAW,MAAM,CAAC,gBAAgB,EACnC,EAAE;IACR,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;IACnH,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,OAAO,IAAI,KAAK,GAAG,OAAO,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,gCAAgC,OAAO,YAAY,OAAO,SAAS,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACtH,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,GAAuB,EAAsB,EAAE;IACxE,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IACtD,OAAO,WAAW,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAAsB,EAAyB,EAAE;IAClF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;IAClE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACxF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,6CAA6C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO;QACH,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK;QACL,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,SAAS;YACpC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAqB,CAAC;YAChD,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC;QACjE,WAAW,EAAE,WAAW,CACpB,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EACtF,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,2BAA2B,EAC5F,CAAC,EACD,YAAY,CACf;KACJ,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAmBA,MAAM,YAAY,GAAG,aAAa,CAAC;AAEnC,MAAM,WAAW,GAAG,CAChB,GAAY,EACZ,IAAY,EACZ,OAAe,EACf,OAAO,GAAW,MAAM,CAAC,gBAAgB,EACnC,EAAE;IACR,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;IACnH,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,OAAO,IAAI,KAAK,GAAG,OAAO,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,gCAAgC,OAAO,YAAY,OAAO,SAAS,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACtH,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,GAAuB,EAAsB,EAAE;IACxE,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IACtD,OAAO,WAAW,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAAsB,EAAyB,EAAE;IAClF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;IAClE,qFAAqF;IACrF,uFAAuF;IACvF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IAClF,IAAI,KAAK,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC/G,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,6CAA6C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3F,CAAC;IACD,6FAA6F;IAC7F,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IAC3G,IAAI,WAAW,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC5H,OAAO;QACH,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK;QACL,WAAW;QACX,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,SAAS;YACpC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAqB,CAAC;YAChD,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC;QACjE,WAAW,EAAE,WAAW,CACpB,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EACtF,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,2BAA2B,EAC5F,CAAC,EACD,YAAY,CACf;KACJ,CAAC;AACN,CAAC,CAAC"}
package/dist/types.d.ts CHANGED
@@ -18,6 +18,8 @@ export interface LogEntryNotification {
18
18
  turn_id?: number;
19
19
  attrs?: unknown;
20
20
  tags?: string[];
21
+ source?: string | null;
22
+ inherited_history?: number;
21
23
  reasoning?: string;
22
24
  };
23
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EACR,SAAS,IAAI,SAAS,EACtB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,WAAW,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAIxG,MAAM,WAAW,oBAAoB;IACjC,KAAK,EAAE;QACH,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEzB,EAAE,CAAC,EAAE,OAAO,CAAC;QACb,EAAE,CAAC,EAAE,OAAO,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACL;AAED,MAAM,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEtD,MAAM,MAAM,0BAA0B,GAAG;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;CAC3B,GAAG,CACE;IAAE,KAAK,EAAE,OAAO,GAAG,KAAK,CAAA;CAAE,GAC1B;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CACxC,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,eAAe,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,EAAE;QACH,UAAU,EAAE,kBAAkB,CAAC;QAC/B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;QAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;QAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjC,CAAC;CACL"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EACR,SAAS,IAAI,SAAS,EACtB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,WAAW,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAIxG,MAAM,WAAW,oBAAoB;IACjC,KAAK,EAAE;QACH,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEzB,EAAE,CAAC,EAAE,OAAO,CAAC;QACb,EAAE,CAAC,EAAE,OAAO,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACL;AAED,MAAM,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEtD,MAAM,MAAM,0BAA0B,GAAG;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;CAC3B,GAAG,CACE;IAAE,KAAK,EAAE,OAAO,GAAG,KAAK,CAAA;CAAE,GAC1B;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CACxC,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,eAAe,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,EAAE;QACH,UAAU,EAAE,kBAAkB,CAAC;QAC/B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;QAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;QAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjC,CAAC;CACL"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plurnk/plurnk-agui",
3
- "version": "1.17.0",
3
+ "version": "1.19.0",
4
4
  "description": "AG-UI HTTP and SSE interface for the PLURNK daemon",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -28,12 +28,9 @@
28
28
  },
29
29
  "scripts": {
30
30
  "test": "npm run test:lint && npm run test:unit && npm run test:intg",
31
- "artifacts:begin": "node ../scripts/test-artifacts.mjs begin",
32
- "pretest:intg": "npm run artifacts:begin",
33
31
  "test:lint": "tsc --noEmit",
34
32
  "test:unit": "node --conditions=plurnk-dev --env-file-if-exists=.env.defaults --test src/*.test.ts",
35
- "test:intg": "node --conditions=plurnk-dev --env-file-if-exists=.env.defaults --test test/intg/*.test.ts",
36
- "artifacts:clean": "node ../scripts/test-artifacts.mjs clean",
33
+ "test:intg": "PLURNK_TEST_RUN=$(date -u +%Y%m%dT%H%M%SZ) node --conditions=plurnk-dev --env-file-if-exists=.env.defaults --test test/intg/*.test.ts",
37
34
  "prepublishOnly": "npm test",
38
35
  "build:clean": "rm -rf dist",
39
36
  "build:dist": "tsc -p tsconfig.build.json",
@@ -43,6 +40,7 @@
43
40
  "devDependencies": {
44
41
  "@ag-ui/client": "0.0.59",
45
42
  "@types/ws": "8.18.1",
43
+ "json-p3": "2.3.1",
46
44
  "ws": "8.21.3"
47
45
  },
48
46
  "keywords": [
@@ -65,6 +63,8 @@
65
63
  "dependencies": {
66
64
  "@ag-ui/core": "^0.0.59",
67
65
  "@opentelemetry/api": "^1.9.1",
68
- "@plurnk/plurnk-contracts": "1.17.0"
66
+ "@plurnk/plurnk-contracts": "1.19.0",
67
+ "@plurnk/plurnk-parser": "1.19.0",
68
+ "@plurnk/plurnk-schemes": "1.19.0"
69
69
  }
70
70
  }