@positronic/core 0.0.51 → 0.0.53

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 (97) hide show
  1. package/dist/src/dsl/{loop-messages.js → agent-messages.js} +21 -21
  2. package/dist/src/dsl/brain-runner.js +13 -9
  3. package/dist/src/dsl/brain-state-machine.js +315 -251
  4. package/dist/src/dsl/brain.js +5 -1912
  5. package/dist/src/dsl/builder/brain.js +944 -0
  6. package/dist/src/dsl/builder/step.js +75 -0
  7. package/dist/src/dsl/constants.js +9 -10
  8. package/dist/src/dsl/create-brain.js +63 -0
  9. package/dist/src/dsl/definitions/blocks.js +1 -0
  10. package/dist/src/dsl/definitions/brain-types.js +4 -0
  11. package/dist/src/dsl/definitions/events.js +2 -0
  12. package/dist/src/dsl/definitions/run-params.js +1 -0
  13. package/dist/src/dsl/definitions/steps.js +2 -0
  14. package/dist/src/dsl/execution/constants.js +14 -0
  15. package/dist/src/dsl/execution/event-stream.js +1638 -0
  16. package/dist/src/dsl/execution/retry.js +298 -0
  17. package/dist/src/dsl/types.js +2 -2
  18. package/dist/src/index.js +6 -4
  19. package/dist/src/tools/index.js +181 -0
  20. package/dist/src/ui/component-utils.js +107 -0
  21. package/dist/src/ui/generate-page-html.js +36 -0
  22. package/dist/src/ui/generate-ui.js +601 -0
  23. package/dist/src/ui/types.js +165 -0
  24. package/dist/src/ui/validate-form.js +428 -0
  25. package/dist/src/yaml/data-validator.js +302 -0
  26. package/dist/src/yaml/index.js +9 -0
  27. package/dist/src/yaml/parser.js +224 -0
  28. package/dist/src/yaml/schema-extractor.js +330 -0
  29. package/dist/src/yaml/type-inference.js +210 -0
  30. package/dist/src/yaml/types.js +12 -0
  31. package/dist/types/clients/types.d.ts +42 -0
  32. package/dist/types/clients/types.d.ts.map +1 -1
  33. package/dist/types/dsl/agent-messages.d.ts +18 -0
  34. package/dist/types/dsl/agent-messages.d.ts.map +1 -0
  35. package/dist/types/dsl/brain-runner.d.ts +2 -2
  36. package/dist/types/dsl/brain-runner.d.ts.map +1 -1
  37. package/dist/types/dsl/brain-state-machine.d.ts +41 -29
  38. package/dist/types/dsl/brain-state-machine.d.ts.map +1 -1
  39. package/dist/types/dsl/brain.d.ts +7 -273
  40. package/dist/types/dsl/brain.d.ts.map +1 -1
  41. package/dist/types/dsl/builder/brain.d.ts +200 -0
  42. package/dist/types/dsl/builder/brain.d.ts.map +1 -0
  43. package/dist/types/dsl/builder/step.d.ts +15 -0
  44. package/dist/types/dsl/builder/step.d.ts.map +1 -0
  45. package/dist/types/dsl/constants.d.ts +8 -9
  46. package/dist/types/dsl/constants.d.ts.map +1 -1
  47. package/dist/types/dsl/create-brain.d.ts +80 -0
  48. package/dist/types/dsl/create-brain.d.ts.map +1 -0
  49. package/dist/types/dsl/definitions/blocks.d.ts +62 -0
  50. package/dist/types/dsl/definitions/blocks.d.ts.map +1 -0
  51. package/dist/types/dsl/definitions/brain-types.d.ts +33 -0
  52. package/dist/types/dsl/definitions/brain-types.d.ts.map +1 -0
  53. package/dist/types/dsl/definitions/events.d.ts +129 -0
  54. package/dist/types/dsl/definitions/events.d.ts.map +1 -0
  55. package/dist/types/dsl/definitions/run-params.d.ts +26 -0
  56. package/dist/types/dsl/definitions/run-params.d.ts.map +1 -0
  57. package/dist/types/dsl/definitions/steps.d.ts +20 -0
  58. package/dist/types/dsl/definitions/steps.d.ts.map +1 -0
  59. package/dist/types/dsl/example-webhook.d.ts +1 -1
  60. package/dist/types/dsl/example-webhook.d.ts.map +1 -1
  61. package/dist/types/dsl/execution/constants.d.ts +16 -0
  62. package/dist/types/dsl/execution/constants.d.ts.map +1 -0
  63. package/dist/types/dsl/execution/event-stream.d.ts +44 -0
  64. package/dist/types/dsl/execution/event-stream.d.ts.map +1 -0
  65. package/dist/types/dsl/execution/retry.d.ts +30 -0
  66. package/dist/types/dsl/execution/retry.d.ts.map +1 -0
  67. package/dist/types/dsl/types.d.ts +35 -14
  68. package/dist/types/dsl/types.d.ts.map +1 -1
  69. package/dist/types/index.d.ts +11 -9
  70. package/dist/types/index.d.ts.map +1 -1
  71. package/dist/types/tools/index.d.ts +33 -0
  72. package/dist/types/tools/index.d.ts.map +1 -0
  73. package/dist/types/ui/component-utils.d.ts +19 -0
  74. package/dist/types/ui/component-utils.d.ts.map +1 -0
  75. package/dist/types/ui/generate-page-html.d.ts +39 -0
  76. package/dist/types/ui/generate-page-html.d.ts.map +1 -0
  77. package/dist/types/ui/generate-ui.d.ts +47 -0
  78. package/dist/types/ui/generate-ui.d.ts.map +1 -0
  79. package/dist/types/ui/types.d.ts +138 -0
  80. package/dist/types/ui/types.d.ts.map +1 -0
  81. package/dist/types/ui/validate-form.d.ts +45 -0
  82. package/dist/types/ui/validate-form.d.ts.map +1 -0
  83. package/dist/types/yaml/data-validator.d.ts +35 -0
  84. package/dist/types/yaml/data-validator.d.ts.map +1 -0
  85. package/dist/types/yaml/index.d.ts +11 -0
  86. package/dist/types/yaml/index.d.ts.map +1 -0
  87. package/dist/types/yaml/parser.d.ts +20 -0
  88. package/dist/types/yaml/parser.d.ts.map +1 -0
  89. package/dist/types/yaml/schema-extractor.d.ts +29 -0
  90. package/dist/types/yaml/schema-extractor.d.ts.map +1 -0
  91. package/dist/types/yaml/type-inference.d.ts +50 -0
  92. package/dist/types/yaml/type-inference.d.ts.map +1 -0
  93. package/dist/types/yaml/types.d.ts +89 -0
  94. package/dist/types/yaml/types.d.ts.map +1 -0
  95. package/package.json +4 -2
  96. package/dist/types/dsl/loop-messages.d.ts +0 -18
  97. package/dist/types/dsl/loop-messages.d.ts.map +0 -1
@@ -1,40 +1,40 @@
1
1
  import { BRAIN_EVENTS } from './constants.js';
2
2
  /**
3
- * Reconstructs the loop context from stored events and a webhook response.
4
- * Returns null if this is not a loop resume (no LOOP_WEBHOOK event found).
5
- */ export function reconstructLoopContext(events, webhookResponse) {
6
- // Find LOOP_WEBHOOK event - if not present, this is not a loop resume
7
- var loopWebhookEvent = events.find(function(e) {
8
- return e.type === BRAIN_EVENTS.LOOP_WEBHOOK;
3
+ * Reconstructs the agent context from stored events and a webhook response.
4
+ * Returns null if this is not an agent resume (no AGENT_WEBHOOK event found).
5
+ */ export function reconstructAgentContext(events, webhookResponse) {
6
+ // Find AGENT_WEBHOOK event - if not present, this is not an agent resume
7
+ var agentWebhookEvent = events.find(function(e) {
8
+ return e.type === BRAIN_EVENTS.AGENT_WEBHOOK;
9
9
  });
10
- if (!loopWebhookEvent) {
10
+ if (!agentWebhookEvent) {
11
11
  return null;
12
12
  }
13
- // Find LOOP_START to get the initial prompt and system
14
- var loopStartEvent = events.find(function(e) {
15
- return e.type === BRAIN_EVENTS.LOOP_START;
13
+ // Find AGENT_START to get the initial prompt and system
14
+ var agentStartEvent = events.find(function(e) {
15
+ return e.type === BRAIN_EVENTS.AGENT_START;
16
16
  });
17
- if (!loopStartEvent) {
18
- throw new Error('LOOP_START event not found but LOOP_WEBHOOK exists - invalid event sequence');
17
+ if (!agentStartEvent) {
18
+ throw new Error('AGENT_START event not found but AGENT_WEBHOOK exists - invalid event sequence');
19
19
  }
20
20
  var messages = [];
21
21
  // Add initial user message from the prompt
22
22
  messages.push({
23
23
  role: 'user',
24
- content: loopStartEvent.prompt
24
+ content: agentStartEvent.prompt
25
25
  });
26
26
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
27
27
  try {
28
28
  // Process events in order to rebuild conversation
29
29
  for(var _iterator = events[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
30
30
  var event = _step.value;
31
- if (event.type === BRAIN_EVENTS.LOOP_ASSISTANT_MESSAGE) {
31
+ if (event.type === BRAIN_EVENTS.AGENT_ASSISTANT_MESSAGE) {
32
32
  var assistantEvent = event;
33
33
  messages.push({
34
34
  role: 'assistant',
35
35
  content: assistantEvent.content
36
36
  });
37
- } else if (event.type === BRAIN_EVENTS.LOOP_TOOL_RESULT) {
37
+ } else if (event.type === BRAIN_EVENTS.AGENT_TOOL_RESULT) {
38
38
  var toolResultEvent = event;
39
39
  messages.push({
40
40
  role: 'tool',
@@ -62,15 +62,15 @@ import { BRAIN_EVENTS } from './constants.js';
62
62
  messages.push({
63
63
  role: 'tool',
64
64
  content: JSON.stringify(webhookResponse),
65
- toolCallId: loopWebhookEvent.toolCallId,
66
- toolName: loopWebhookEvent.toolName
65
+ toolCallId: agentWebhookEvent.toolCallId,
66
+ toolName: agentWebhookEvent.toolName
67
67
  });
68
68
  return {
69
69
  messages: messages,
70
- pendingToolCallId: loopWebhookEvent.toolCallId,
71
- pendingToolName: loopWebhookEvent.toolName,
72
- prompt: loopStartEvent.prompt,
73
- system: loopStartEvent.system,
70
+ pendingToolCallId: agentWebhookEvent.toolCallId,
71
+ pendingToolName: agentWebhookEvent.toolName,
72
+ prompt: agentStartEvent.prompt,
73
+ system: agentStartEvent.system,
74
74
  webhookResponse: webhookResponse
75
75
  };
76
76
  }
@@ -275,8 +275,8 @@ function _ts_values(o) {
275
275
  }
276
276
  import { BRAIN_EVENTS } from './constants.js';
277
277
  import { applyPatches } from './json-patch.js';
278
- import { reconstructLoopContext } from './loop-messages.js';
279
- import { createBrainExecutionMachine, sendEvent, sendAction, BRAIN_ACTIONS } from './brain-state-machine.js';
278
+ import { reconstructAgentContext } from './agent-messages.js';
279
+ import { createBrainExecutionMachine, sendEvent } from './brain-state-machine.js';
280
280
  import { DEFAULT_ENV } from './brain.js';
281
281
  export var BrainRunner = /*#__PURE__*/ function() {
282
282
  "use strict";
@@ -331,12 +331,12 @@ export var BrainRunner = /*#__PURE__*/ function() {
331
331
  key: "run",
332
332
  value: function run(_0) {
333
333
  return _async_to_generator(function(brain) {
334
- var _ref, _ref_initialState, initialState, options, initialCompletedSteps, brainRunId, endAfter, signal, response, loopEvents, _this_options, adapters, client, resources, pages, env, resolvedEnv, machineInitialState, initialStepCount, machine, loopResumeContext, brainRun, _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _loop, _iterator, _step, _ret, err, error, cancelledEvent;
334
+ var _ref, _ref_initialState, initialState, options, initialCompletedSteps, brainRunId, endAfter, signal, response, agentEvents, _this_options, adapters, client, resources, pages, env, resolvedEnv, machineInitialState, initialStepCount, machine, agentResumeContext, brainRun, _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _loop, _iterator, _step, _ret, err, error, cancelledEvent;
335
335
  var _arguments = arguments;
336
336
  return _ts_generator(this, function(_state) {
337
337
  switch(_state.label){
338
338
  case 0:
339
- _ref = _arguments.length > 1 && _arguments[1] !== void 0 ? _arguments[1] : {}, _ref_initialState = _ref.initialState, initialState = _ref_initialState === void 0 ? {} : _ref_initialState, options = _ref.options, initialCompletedSteps = _ref.initialCompletedSteps, brainRunId = _ref.brainRunId, endAfter = _ref.endAfter, signal = _ref.signal, response = _ref.response, loopEvents = _ref.loopEvents;
339
+ _ref = _arguments.length > 1 && _arguments[1] !== void 0 ? _arguments[1] : {}, _ref_initialState = _ref.initialState, initialState = _ref_initialState === void 0 ? {} : _ref_initialState, options = _ref.options, initialCompletedSteps = _ref.initialCompletedSteps, brainRunId = _ref.brainRunId, endAfter = _ref.endAfter, signal = _ref.signal, response = _ref.response, agentEvents = _ref.agentEvents;
340
340
  _this_options = this.options, adapters = _this_options.adapters, client = _this_options.client, resources = _this_options.resources, pages = _this_options.pages, env = _this_options.env;
341
341
  resolvedEnv = env !== null && env !== void 0 ? env : DEFAULT_ENV;
342
342
  // Apply any patches from completed steps to get the initial state
@@ -356,8 +356,8 @@ export var BrainRunner = /*#__PURE__*/ function() {
356
356
  machine = createBrainExecutionMachine({
357
357
  initialState: machineInitialState
358
358
  });
359
- // If loopEvents and response are provided, reconstruct loop context
360
- loopResumeContext = loopEvents && response ? reconstructLoopContext(loopEvents, response) : null;
359
+ // If agentEvents and response are provided, reconstruct agent context
360
+ agentResumeContext = agentEvents && response ? reconstructAgentContext(agentEvents, response) : null;
361
361
  brainRun = brainRunId && initialCompletedSteps ? brain.run({
362
362
  initialState: initialState,
363
363
  initialCompletedSteps: initialCompletedSteps,
@@ -368,7 +368,7 @@ export var BrainRunner = /*#__PURE__*/ function() {
368
368
  pages: pages,
369
369
  env: resolvedEnv,
370
370
  response: response,
371
- loopResumeContext: loopResumeContext
371
+ agentResumeContext: agentResumeContext
372
372
  }) : brain.run({
373
373
  initialState: initialState,
374
374
  options: options,
@@ -407,7 +407,9 @@ export var BrainRunner = /*#__PURE__*/ function() {
407
407
  2
408
408
  ];
409
409
  // Use state machine to create cancelled event
410
- sendAction(machine, BRAIN_ACTIONS.CANCEL_BRAIN, {});
410
+ sendEvent(machine, {
411
+ type: BRAIN_EVENTS.CANCELLED
412
+ });
411
413
  cancelledEvent = machine.context.currentEvent;
412
414
  return [
413
415
  4,
@@ -554,7 +556,9 @@ export var BrainRunner = /*#__PURE__*/ function() {
554
556
  3,
555
557
  17
556
558
  ];
557
- sendAction(machine, BRAIN_ACTIONS.CANCEL_BRAIN, {});
559
+ sendEvent(machine, {
560
+ type: BRAIN_EVENTS.CANCELLED
561
+ });
558
562
  cancelledEvent = machine.context.currentEvent;
559
563
  return [
560
564
  4,