@swirls/looms 0.1.0 → 0.3.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 (224) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/dist/actor/host.js +4 -5
  3. package/dist/actor/index.d.ts +1 -1
  4. package/dist/actor/index.js +1 -1
  5. package/dist/actor/routing.d.ts +5 -0
  6. package/dist/actor/routing.js +14 -0
  7. package/dist/agent/agent-session.js +1 -0
  8. package/dist/agent/debugger/agent-chat.d.ts +2 -0
  9. package/dist/agent/debugger/agent-chat.js +210 -0
  10. package/dist/agent/debugger/index.d.ts +5 -0
  11. package/dist/agent/debugger/index.js +19 -0
  12. package/dist/agent/debugger/summarize.d.ts +2 -0
  13. package/dist/agent/debugger/summarize.js +53 -0
  14. package/dist/agent/debugger/token-usage.d.ts +3 -0
  15. package/dist/agent/debugger/token-usage.js +11 -0
  16. package/dist/agent/definitions.d.ts +3 -11
  17. package/dist/agent/definitions.js +5 -6
  18. package/dist/agent/effects.d.ts +30 -0
  19. package/dist/agent/events.d.ts +2 -0
  20. package/dist/agent/events.js +2 -0
  21. package/dist/agent/llm.js +1 -8
  22. package/dist/agent/module.d.ts +604 -534
  23. package/dist/agent/module.js +11 -7
  24. package/dist/agent/projections.d.ts +5 -0
  25. package/dist/agent/projections.js +43 -2
  26. package/dist/agent/scope.d.ts +2 -0
  27. package/dist/agent/signals.d.ts +7 -0
  28. package/dist/agent/signals.js +25 -16
  29. package/dist/agent/threads.js +35 -21
  30. package/dist/agent/tool-schema.d.ts +1 -17
  31. package/dist/agent/tool-schema.js +3 -42
  32. package/dist/agent/transcript.d.ts +7 -0
  33. package/dist/agent/transcript.js +19 -0
  34. package/dist/agent/types.d.ts +10 -0
  35. package/dist/agent/types.js +4 -0
  36. package/dist/ai-vercel/index.d.ts +1 -1
  37. package/dist/ai-vercel/vercel-evaluator.d.ts +21 -8
  38. package/dist/ai-vercel/vercel-evaluator.js +7 -2
  39. package/dist/approval/debugger/approvals-view.d.ts +3 -0
  40. package/dist/approval/debugger/approvals-view.js +18 -0
  41. package/dist/approval/debugger/index.d.ts +4 -0
  42. package/dist/approval/debugger/index.js +11 -0
  43. package/dist/approval/debugger/summarize.d.ts +2 -0
  44. package/dist/approval/debugger/summarize.js +17 -0
  45. package/dist/approval/effects.d.ts +12 -0
  46. package/dist/approval/module.d.ts +24 -0
  47. package/dist/client/client.d.ts +310 -0
  48. package/dist/client/client.js +20 -2
  49. package/dist/cloudflare/router.d.ts +1 -1
  50. package/dist/cloudflare/router.js +6 -8
  51. package/dist/core/compose.js +1 -0
  52. package/dist/core/debugger-host.d.ts +16 -0
  53. package/dist/core/debugger-host.js +1 -0
  54. package/dist/core/effects.d.ts +7 -0
  55. package/dist/core/effects.js +1 -0
  56. package/dist/core/fold.js +12 -6
  57. package/dist/core/fork.d.ts +35 -0
  58. package/dist/core/fork.js +129 -0
  59. package/dist/core/index.d.ts +3 -0
  60. package/dist/core/index.js +2 -0
  61. package/dist/core/module-scope.d.ts +1 -0
  62. package/dist/core/module.d.ts +4 -2
  63. package/dist/core/projection.js +1 -0
  64. package/dist/core/protocol.d.ts +10 -1
  65. package/dist/core/protocol.js +11 -0
  66. package/dist/core/published.d.ts +43 -0
  67. package/dist/core/published.js +44 -0
  68. package/dist/core/replay.d.ts +8 -0
  69. package/dist/core/schema.d.ts +3 -1
  70. package/dist/core/schema.js +38 -0
  71. package/dist/core/snapshot-store.d.ts +4 -0
  72. package/dist/core/snapshot-store.js +7 -0
  73. package/dist/core/snapshots.js +3 -17
  74. package/dist/core/sqlite-store.js +39 -0
  75. package/dist/core/state.d.ts +14 -0
  76. package/dist/core/state.js +25 -2
  77. package/dist/core/store.d.ts +1 -0
  78. package/dist/debugger/app/assets/index-BevQYa-U.js +22 -0
  79. package/dist/debugger/app/assets/index-CgDzWJg7.css +2 -0
  80. package/dist/debugger/app/assets/rolldown-runtime-CbXtAM7H.js +1 -0
  81. package/dist/debugger/app/assets/routes-B17Om93i.js +47 -0
  82. package/dist/debugger/app/index.html +14 -0
  83. package/dist/debugger/components/composer.d.ts +20 -0
  84. package/dist/debugger/components/composer.js +26 -0
  85. package/dist/debugger/components/debugger-split.d.ts +2 -1
  86. package/dist/debugger/components/debugger-split.js +2 -2
  87. package/dist/debugger/components/event-inspector.d.ts +2 -1
  88. package/dist/debugger/components/event-inspector.js +25 -16
  89. package/dist/debugger/components/event-stream.d.ts +2 -1
  90. package/dist/debugger/components/event-stream.js +12 -71
  91. package/dist/debugger/components/follow-list.d.ts +19 -0
  92. package/dist/debugger/components/follow-list.js +96 -0
  93. package/dist/debugger/components/json-tree.d.ts +11 -0
  94. package/dist/debugger/components/json-tree.js +120 -0
  95. package/dist/debugger/components/json-view.js +2 -2
  96. package/dist/debugger/components/run-tree.js +50 -20
  97. package/dist/debugger/components/status-dot.d.ts +4 -0
  98. package/dist/debugger/components/status-dot.js +6 -2
  99. package/dist/debugger/context.d.ts +14 -0
  100. package/dist/debugger/context.js +17 -0
  101. package/dist/debugger/contracts.d.ts +7 -4
  102. package/dist/debugger/events/builtin-families.d.ts +3 -0
  103. package/dist/debugger/events/builtin-families.js +9 -0
  104. package/dist/debugger/events/catalog.d.ts +3 -4
  105. package/dist/debugger/events/catalog.js +25 -17
  106. package/dist/debugger/events/protocol-summarize.d.ts +1 -2
  107. package/dist/debugger/events/protocol-summarize.js +36 -37
  108. package/dist/debugger/index.d.ts +20 -6
  109. package/dist/debugger/index.js +19 -5
  110. package/dist/debugger/lib/cn.d.ts +1 -0
  111. package/dist/debugger/lib/cn.js +3 -0
  112. package/dist/debugger/lib/event-counts.d.ts +2 -2
  113. package/dist/debugger/lib/event-counts.js +5 -9
  114. package/dist/debugger/lib/event-meta.d.ts +2 -3
  115. package/dist/debugger/lib/event-meta.js +6 -11
  116. package/dist/debugger/lib/json.d.ts +25 -0
  117. package/dist/debugger/lib/json.js +87 -0
  118. package/dist/debugger/lib/payload.d.ts +7 -0
  119. package/dist/debugger/lib/payload.js +11 -0
  120. package/dist/debugger/lib/time.d.ts +3 -0
  121. package/dist/debugger/lib/time.js +24 -0
  122. package/dist/debugger/plugin.d.ts +36 -0
  123. package/dist/debugger/plugin.js +14 -0
  124. package/dist/debugger/server/index.d.ts +14 -0
  125. package/dist/debugger/server/index.js +114 -0
  126. package/dist/debugger/shell/debugger-shell.d.ts +15 -0
  127. package/dist/debugger/shell/debugger-shell.js +43 -0
  128. package/dist/debugger/shell/definition-key.d.ts +3 -0
  129. package/dist/debugger/shell/definition-key.js +4 -0
  130. package/dist/debugger/shell/events-pane.d.ts +12 -0
  131. package/dist/debugger/shell/events-pane.js +25 -0
  132. package/dist/debugger/shell/projections-panel.d.ts +4 -0
  133. package/dist/debugger/shell/projections-panel.js +59 -0
  134. package/dist/debugger/shell/run-controls.d.ts +5 -0
  135. package/dist/debugger/shell/run-controls.js +99 -0
  136. package/dist/debugger/shell/run-search.d.ts +6 -0
  137. package/dist/debugger/shell/run-search.js +100 -0
  138. package/dist/debugger/shell/run-type-menu.d.ts +6 -0
  139. package/dist/debugger/shell/run-type-menu.js +11 -0
  140. package/dist/debugger/shell/schema-form.d.ts +31 -0
  141. package/dist/debugger/shell/schema-form.js +117 -0
  142. package/dist/debugger/shell/start-form.d.ts +3 -0
  143. package/dist/debugger/shell/start-form.js +75 -0
  144. package/dist/debugger/shell/use-start-run.d.ts +14 -0
  145. package/dist/debugger/shell/use-start-run.js +32 -0
  146. package/dist/debugger/shell/workspace.d.ts +6 -0
  147. package/dist/debugger/shell/workspace.js +15 -0
  148. package/dist/debugger/styles.css +111 -27
  149. package/dist/debugger/ui/button.d.ts +24 -0
  150. package/dist/debugger/ui/button.js +24 -0
  151. package/dist/debugger/ui/command.d.ts +9 -0
  152. package/dist/debugger/ui/command.js +24 -0
  153. package/dist/debugger/ui/dropdown-menu.d.ts +13 -0
  154. package/dist/debugger/ui/dropdown-menu.js +37 -0
  155. package/dist/debugger/ui/panel.d.ts +14 -0
  156. package/dist/debugger/ui/panel.js +16 -0
  157. package/dist/debugger/ui/popover.d.ts +7 -0
  158. package/dist/debugger/ui/popover.js +17 -0
  159. package/dist/debugger/ui/resizable.d.ts +7 -0
  160. package/dist/debugger/ui/resizable.js +14 -0
  161. package/dist/debugger/ui/scroll-area.d.ts +2 -1
  162. package/dist/debugger/ui/scroll-area.js +5 -3
  163. package/dist/debugger/ui/select.d.ts +10 -0
  164. package/dist/debugger/ui/select.js +21 -0
  165. package/dist/debugger/ui/tabs.js +2 -2
  166. package/dist/debugger/ui/textarea.d.ts +3 -0
  167. package/dist/debugger/ui/textarea.js +7 -0
  168. package/dist/evaluator/effects.d.ts +12 -0
  169. package/dist/evaluator/module.d.ts +24 -0
  170. package/dist/projectors/index-model.d.ts +13 -7
  171. package/dist/projectors/index-model.js +21 -26
  172. package/dist/projectors/memory.js +19 -11
  173. package/dist/projectors/postgres.js +20 -19
  174. package/dist/projectors/schema.js +20 -18
  175. package/dist/projectors/sqlite.js +32 -27
  176. package/dist/react/materialize.js +16 -11
  177. package/dist/react/react.d.ts +6 -2
  178. package/dist/react/react.js +5 -2
  179. package/dist/react/store.d.ts +1 -1
  180. package/dist/react/store.js +1 -1
  181. package/dist/react/tables.d.ts +3 -2
  182. package/dist/runtime/cancellation.js +14 -27
  183. package/dist/runtime/errors.d.ts +39 -0
  184. package/dist/runtime/errors.js +32 -0
  185. package/dist/runtime/helpers.d.ts +2 -0
  186. package/dist/runtime/helpers.js +23 -1
  187. package/dist/runtime/index.d.ts +1 -1
  188. package/dist/runtime/index.js +1 -1
  189. package/dist/runtime/looms.d.ts +13 -1
  190. package/dist/runtime/looms.js +5 -2
  191. package/dist/runtime/repository.js +16 -1
  192. package/dist/runtime/run-start.js +1 -3
  193. package/dist/runtime/runtime.d.ts +1 -1
  194. package/dist/runtime/runtime.js +60 -18
  195. package/dist/runtime/server/auth.d.ts +1 -0
  196. package/dist/runtime/server/auth.js +5 -0
  197. package/dist/runtime/server/debugger-host.d.ts +11 -0
  198. package/dist/runtime/server/debugger-host.js +32 -0
  199. package/dist/runtime/server/fetch-handler.d.ts +5 -1
  200. package/dist/runtime/server/fetch-handler.js +24 -13
  201. package/dist/runtime/server/http.d.ts +3 -0
  202. package/dist/runtime/server/http.js +21 -2
  203. package/dist/runtime/server/routes/definitions.d.ts +3 -0
  204. package/dist/runtime/server/routes/definitions.js +20 -0
  205. package/dist/runtime/server/routes/runs.js +43 -3
  206. package/dist/runtime/server.d.ts +3 -1
  207. package/dist/runtime/server.js +3 -1
  208. package/dist/runtime/types.d.ts +11 -1
  209. package/dist/runtime/wake-engine.js +5 -2
  210. package/dist/s2/snapshot-store.js +45 -7
  211. package/dist/workflow/debugger/index.d.ts +4 -0
  212. package/dist/workflow/debugger/index.js +11 -0
  213. package/dist/workflow/debugger/nodes-view.d.ts +3 -0
  214. package/dist/workflow/debugger/nodes-view.js +13 -0
  215. package/dist/workflow/debugger/summarize.d.ts +2 -0
  216. package/dist/workflow/debugger/summarize.js +30 -0
  217. package/dist/workflow/effects.d.ts +24 -0
  218. package/dist/workflow/effects.js +1 -0
  219. package/dist/workflow/module.d.ts +48 -0
  220. package/package.json +20 -1
  221. package/dist/debugger/events/domain-summarize.d.ts +0 -3
  222. package/dist/debugger/events/domain-summarize.js +0 -107
  223. package/dist/debugger/events/family.d.ts +0 -8
  224. package/dist/debugger/events/family.js +0 -44
@@ -203,6 +203,9 @@ export declare const callLlmEffect: NoInfer<import("@swirls/looms/core").EffectD
203
203
  readonly payload: {
204
204
  readonly turn: number;
205
205
  };
206
+ }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
207
+ readonly type: "agent.turn.stopped";
208
+ readonly payload: {};
206
209
  }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
207
210
  readonly type: "agent.turn.text_delta";
208
211
  readonly payload: {
@@ -291,6 +294,11 @@ export declare const callLlmEffect: NoInfer<import("@swirls/looms/core").EffectD
291
294
  readonly attempt: number;
292
295
  readonly deadlineAt: number | null;
293
296
  };
297
+ }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
298
+ readonly type: "runtime.fork.elided";
299
+ readonly payload: {
300
+ readonly type: string;
301
+ };
294
302
  }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
295
303
  readonly type: "runtime.run.cancelled";
296
304
  readonly payload: {
@@ -302,6 +310,12 @@ export declare const callLlmEffect: NoInfer<import("@swirls/looms/core").EffectD
302
310
  readonly output: Schema.Json;
303
311
  readonly error: string | null;
304
312
  };
313
+ }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
314
+ readonly type: "runtime.run.forked";
315
+ readonly payload: {
316
+ readonly sourceRunId: string;
317
+ readonly sourceSeq: number;
318
+ };
305
319
  }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
306
320
  readonly type: "runtime.run.started";
307
321
  readonly payload: {
@@ -334,6 +348,7 @@ export declare const callLlmEffect: NoInfer<import("@swirls/looms/core").EffectD
334
348
  readonly payload: {
335
349
  readonly threadId: string;
336
350
  readonly reason?: string | undefined;
351
+ readonly resumeSeq?: number | undefined;
337
352
  };
338
353
  }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
339
354
  readonly type: "runtime.thread.completed";
@@ -587,6 +602,9 @@ export declare const executeToolEffect: NoInfer<import("@swirls/looms/core").Eff
587
602
  readonly payload: {
588
603
  readonly turn: number;
589
604
  };
605
+ }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
606
+ readonly type: "agent.turn.stopped";
607
+ readonly payload: {};
590
608
  }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
591
609
  readonly type: "agent.turn.text_delta";
592
610
  readonly payload: {
@@ -675,6 +693,11 @@ export declare const executeToolEffect: NoInfer<import("@swirls/looms/core").Eff
675
693
  readonly attempt: number;
676
694
  readonly deadlineAt: number | null;
677
695
  };
696
+ }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
697
+ readonly type: "runtime.fork.elided";
698
+ readonly payload: {
699
+ readonly type: string;
700
+ };
678
701
  }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
679
702
  readonly type: "runtime.run.cancelled";
680
703
  readonly payload: {
@@ -686,6 +709,12 @@ export declare const executeToolEffect: NoInfer<import("@swirls/looms/core").Eff
686
709
  readonly output: Schema.Json;
687
710
  readonly error: string | null;
688
711
  };
712
+ }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
713
+ readonly type: "runtime.run.forked";
714
+ readonly payload: {
715
+ readonly sourceRunId: string;
716
+ readonly sourceSeq: number;
717
+ };
689
718
  }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
690
719
  readonly type: "runtime.run.started";
691
720
  readonly payload: {
@@ -718,6 +747,7 @@ export declare const executeToolEffect: NoInfer<import("@swirls/looms/core").Eff
718
747
  readonly payload: {
719
748
  readonly threadId: string;
720
749
  readonly reason?: string | undefined;
750
+ readonly resumeSeq?: number | undefined;
721
751
  };
722
752
  }) | (Omit<import("@swirls/looms/core").EventInput, "payload" | "type"> & {
723
753
  readonly type: "runtime.thread.completed";
@@ -69,6 +69,7 @@ export declare const AgentSteeredPayloadSchema: Schema.Struct<{
69
69
  readonly interrupt: Schema.optional<Schema.Boolean>;
70
70
  }>;
71
71
  export declare const AgentSessionDeliverySchema: Schema.Union<readonly [Schema.Literal<"steer">, Schema.Literal<"followUp">, Schema.Literal<"nextTurn">]>;
72
+ export declare const AgentTurnStoppedPayloadSchema: Schema.Struct<{}>;
72
73
  export declare const AgentSessionMessageSubmittedPayloadSchema: Schema.Struct<{
73
74
  readonly messageId: Schema.String;
74
75
  readonly text: Schema.String;
@@ -231,6 +232,7 @@ export declare const agentCatalog: import("@swirls/looms/core").EventCatalog<"ag
231
232
  }>;
232
233
  readonly interrupt: Schema.optional<Schema.Boolean>;
233
234
  }>;
235
+ 'turn.stopped': Schema.Struct<{}>;
234
236
  'session.message.submitted': Schema.Struct<{
235
237
  readonly messageId: Schema.String;
236
238
  readonly text: Schema.String;
@@ -38,6 +38,7 @@ export const AgentSessionDeliverySchema = Schema.Union([
38
38
  Schema.Literal('followUp'),
39
39
  Schema.Literal('nextTurn'),
40
40
  ]);
41
+ export const AgentTurnStoppedPayloadSchema = Schema.Struct({});
41
42
  export const AgentSessionMessageSubmittedPayloadSchema = Schema.Struct({
42
43
  messageId: Schema.String,
43
44
  text: Schema.String,
@@ -86,6 +87,7 @@ export const agentCatalog = defineEventCatalog('agent', {
86
87
  'tool_call.requested': AgentToolCallRequestedPayloadSchema,
87
88
  'tool.result': AgentToolResultPayloadSchema,
88
89
  steered: AgentSteeredPayloadSchema,
90
+ 'turn.stopped': AgentTurnStoppedPayloadSchema,
89
91
  'session.message.submitted': AgentSessionMessageSubmittedPayloadSchema,
90
92
  'session.steer.delivered': AgentSessionSteerDeliveredPayloadSchema,
91
93
  'session.turn.started': AgentSessionTurnStartedPayloadSchema,
package/dist/agent/llm.js CHANGED
@@ -36,14 +36,7 @@ export const makeStubLlm = (policy = {}) => ({
36
36
  toolCalls,
37
37
  };
38
38
  }
39
- let lastUser;
40
- for (let i = args.messages.length - 1; i >= 0; i--) {
41
- const item = args.messages[i];
42
- if (item?.role === 'user') {
43
- lastUser = item;
44
- break;
45
- }
46
- }
39
+ const lastUser = args.messages.findLast((item) => item.role === 'user');
47
40
  const lastContent = args.messages.at(-1)?.content;
48
41
  const content = lastUser?.content ??
49
42
  (Predicate.isString(lastContent) ? lastContent : stringifyJson(lastContent ?? null));