@cogitator-ai/tetsu 0.7.1 → 0.8.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../src/controller.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiD7B,OAAO,KAAK,EAAe,aAAa,EAAE,MAAM,YAAY,CAAC;AAqE7D;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoe9B,CAAC"}
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../src/controller.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA0D7B,OAAO,KAAK,EAAe,aAAa,EAAE,MAAM,YAAY,CAAC;AAiF7D;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAukB9B,CAAC"}
@@ -1,18 +1,20 @@
1
1
  import { controller, route } from '@tetsujs/core';
2
2
  import { sse } from '@tetsujs/sse';
3
3
  import { countMessageTokens } from '@cogitator-ai/memory';
4
- import { AgentStreamSession, checkRunLimits, createErrorEvent, createFinishEvent, createStartEvent, createSwarmEvent, createWorkflowEvent, generateId, readThreadPage, resolveSseHeartbeatMs, toAgentRunResponse, } from '@cogitator-ai/server-shared';
4
+ import { AgentStreamSession, checkRunLimits, createErrorEvent, createFinishEvent, createStartEvent, createSwarmEvent, createWorkflowEvent, generateId, readThreadPage, resolveSseHeartbeatMs, toAgentRunResponse, toWorkflowCompletedData, toWorkflowFailedData, } from '@cogitator-ai/server-shared';
5
5
  import { assertThreadAccess, ensureThreadAccess } from '@cogitator-ai/core';
6
6
  import { httpError } from '@tetsujs/core';
7
7
  import { anonymousHook, resolveCaller } from './auth.js';
8
8
  import { holdConnection, jsonBody } from './connection.js';
9
- import { clientClosedRequest, cogitatorErrors, describeError } from './errors.js';
10
- import { checkThreadAccess, executeSwarm, executeWorkflow, findAgent, findSwarm, findWorkflow, listAgents, listSwarms, listTools, listWorkflows, resumeAgent, runAgent, runDepsOf, serializeSwarmUsage, toResumeDecisions, toSwarmRunResponse, toWorkflowRunResponse, } from './operations.js';
11
- import { AddMessageResponse, AgentListResponse, AgentRunResponse, BlackboardResponse, errorEnvelope, errorsEnvelope, failureEnvelope, HealthResponse, NameParams, ReadyResponse, ResumeBody, RUN_FAILURES, requestSchemas, SwarmListResponse, SwarmRunResponse, ThreadParams, ThreadQuery, ThreadResponse, ToolListResponse, WorkflowListResponse, WorkflowRunResponse, } from './schemas.js';
9
+ import { clientClosedRequest, cogitatorErrors, describeError, WorkflowRunFailedError, workflowRouteError, } from './errors.js';
10
+ import { checkThreadAccess, checkWorkflowCheckpoint, executeSwarm, executeWorkflow, findAgent, findSwarm, findWorkflow, listAgents, listSwarms, listTools, listWorkflows, resumeAgent, resumeWorkflow, runAgent, runDepsOf, serializeSwarmUsage, toResumeDecisions, toSwarmRunResponse, toWorkflowRunResponse, } from './operations.js';
11
+ import { AddMessageResponse, AgentListResponse, AgentRunResponse, BlackboardResponse, errorEnvelope, errorsEnvelope, failureEnvelope, HealthResponse, NameParams, ReadyResponse, ResumeBody, RUN_FAILURES, requestSchemas, WORKFLOW_RUN_FAILURES, SwarmListResponse, SwarmRunResponse, ThreadParams, ThreadQuery, ThreadResponse, ToolListResponse, WorkflowListResponse, WorkflowRunResponse, } from './schemas.js';
12
12
  import { cogitatorSocket } from './socket.js';
13
13
  import { DONE_EVENT, eventsOf, resolveSignal, sseEvent } from './streaming.js';
14
14
  const AgentNotFound = errorEnvelope('AGENT_NOT_FOUND', 'No agent is registered under this name');
15
15
  const WorkflowNotFound = errorEnvelope('WORKFLOW_NOT_FOUND', 'No workflow is registered under this name');
16
+ const WorkflowResumeNotFound = failureEnvelope(404, 'No workflow is registered under this name, no checkpoint of it belongs to the caller (`CHECKPOINT_NOT_FOUND`), or a node called an agent or tool that does not exist');
17
+ const WorkflowStreamResumeNotFound = errorsEnvelope(['WORKFLOW_NOT_FOUND', 'CHECKPOINT_NOT_FOUND'], 'No workflow is registered under this name, or no checkpoint of it belongs to the caller');
16
18
  const SwarmNotFound = errorEnvelope('SWARM_NOT_FOUND', 'No swarm is registered under this name');
17
19
  const RunNotFound = failureEnvelope(404, 'No agent, workflow or swarm is registered under this name, or the agent called a tool it does not have', ['SWARM_NOT_FOUND']);
18
20
  const NotImplemented = failureEnvelope(501, 'The optional package this endpoint needs is not installed', ['PACKAGE_NOT_INSTALLED']);
@@ -52,7 +54,7 @@ export const cogitatorController = controller('Cogitator', (deps) => {
52
54
  const admitted = anonymousHook(deps.anonymous);
53
55
  const errors = cogitatorErrors();
54
56
  const heartbeatMs = resolveSseHeartbeatMs(deps.sseHeartbeatMs);
55
- const { RunBody, SwarmRunBody, WorkflowRunBody, AddMessageBody } = requestSchemas(deps);
57
+ const { RunBody, SwarmRunBody, WorkflowRunBody, WorkflowResumeBody, AddMessageBody } = requestSchemas(deps);
56
58
  const streamOptions = () => ({ until: resolveSignal(deps.until), heartbeatMs });
57
59
  const memoryOf = async () => {
58
60
  const memory = await deps.cogitator.getMemory();
@@ -329,7 +331,7 @@ export const cogitatorController = controller('Cogitator', (deps) => {
329
331
  body: WorkflowRunBody,
330
332
  response: {
331
333
  415: NotJson,
332
- ...RUN_FAILURES,
334
+ ...WORKFLOW_RUN_FAILURES,
333
335
  200: WorkflowRunResponse,
334
336
  404: RunNotFound,
335
337
  501: NotImplemented,
@@ -345,13 +347,13 @@ export const cogitatorController = controller('Cogitator', (deps) => {
345
347
  const workflow = findWorkflow(deps, ctx.params.name);
346
348
  const signal = ctx.req.signal;
347
349
  try {
348
- const result = await executeWorkflow(deps, workflow, ctx.body.input, ctx.body.options ?? {}, signal);
350
+ const result = await executeWorkflow(deps, workflow, ctx.body.input, ctx.body.options ?? {}, signal, ctx.cogitatorAuth);
349
351
  return toWorkflowRunResponse(result);
350
352
  }
351
353
  catch (error) {
352
354
  if (signal.aborted)
353
355
  throw clientClosedRequest();
354
- throw error;
356
+ throw workflowRouteError(error);
355
357
  }
356
358
  },
357
359
  }),
@@ -371,8 +373,72 @@ export const cogitatorController = controller('Cogitator', (deps) => {
371
373
  },
372
374
  handler: (ctx) => {
373
375
  const workflow = findWorkflow(deps, ctx.params.name);
374
- const body = ctx.body;
375
- return sse(ctx, (signal) => workflowEvents(deps, workflow, body, signal), streamOptions());
376
+ const { input, options } = ctx.body;
377
+ const auth = ctx.cogitatorAuth;
378
+ return sse(ctx, (signal) => workflowEvents((callbacks) => executeWorkflow(deps, workflow, input, { ...options, ...callbacks }, signal, auth), signal), streamOptions());
379
+ },
380
+ }),
381
+ resumeWorkflow: route({
382
+ method: 'POST',
383
+ path: '/workflows/:name/resume',
384
+ schema: {
385
+ params: NameParams,
386
+ body: WorkflowResumeBody,
387
+ response: {
388
+ 415: NotJson,
389
+ ...WORKFLOW_RUN_FAILURES,
390
+ 200: WorkflowRunResponse,
391
+ 404: WorkflowResumeNotFound,
392
+ 501: NotImplemented,
393
+ },
394
+ },
395
+ hooks: {
396
+ beforeParse: [caller, admitted, jsonBody],
397
+ beforeHandle: [holdConnection],
398
+ onError: [errors],
399
+ },
400
+ docs: {
401
+ summary: 'Resume a workflow from a checkpoint and wait for its final state',
402
+ description: 'The nodes the checkpoint completed are passed over, the rest run. Only a checkpoint of this workflow saved for the caller resumes, any other answers `404 CHECKPOINT_NOT_FOUND`.',
403
+ tags: ['workflows'],
404
+ },
405
+ handler: async (ctx) => {
406
+ const workflow = findWorkflow(deps, ctx.params.name);
407
+ const { checkpointId, options } = ctx.body;
408
+ const auth = ctx.cogitatorAuth;
409
+ await checkWorkflowCheckpoint(deps, workflow, checkpointId, auth);
410
+ const signal = ctx.req.signal;
411
+ try {
412
+ const result = await resumeWorkflow(deps, workflow, checkpointId, options ?? {}, signal, auth);
413
+ return toWorkflowRunResponse(result);
414
+ }
415
+ catch (error) {
416
+ if (signal.aborted)
417
+ throw clientClosedRequest();
418
+ throw workflowRouteError(error);
419
+ }
420
+ },
421
+ }),
422
+ streamResumeWorkflow: route({
423
+ method: 'POST',
424
+ path: '/workflows/:name/resume/stream',
425
+ schema: {
426
+ params: NameParams,
427
+ body: WorkflowResumeBody,
428
+ response: { 200: StreamOpened, 404: WorkflowStreamResumeNotFound, 415: NotJson },
429
+ },
430
+ hooks: { beforeParse: [caller, admitted, jsonBody], onError: [errors] },
431
+ docs: {
432
+ summary: 'Resume a workflow from a checkpoint and stream node events',
433
+ description: `${STREAM_DESCRIPTION} A checkpoint that is not one of this workflow saved for the caller answers \`404 CHECKPOINT_NOT_FOUND\` before the stream opens.`,
434
+ tags: ['workflows'],
435
+ },
436
+ handler: async (ctx) => {
437
+ const workflow = findWorkflow(deps, ctx.params.name);
438
+ const { checkpointId, options } = ctx.body;
439
+ const auth = ctx.cogitatorAuth;
440
+ await checkWorkflowCheckpoint(deps, workflow, checkpointId, auth);
441
+ return sse(ctx, (signal) => workflowEvents((callbacks) => resumeWorkflow(deps, workflow, checkpointId, { ...options, ...callbacks }, signal, auth), signal), streamOptions());
376
442
  },
377
443
  }),
378
444
  listSwarms: route({
@@ -503,34 +569,35 @@ async function* agentEvents(start, signal, threadId) {
503
569
  throw error;
504
570
  }
505
571
  }
506
- async function* workflowEvents(deps, workflow, body, signal) {
572
+ async function* workflowEvents(start, signal) {
507
573
  const messageId = generateId('wf');
508
574
  let result;
509
575
  yield sseEvent(createStartEvent(messageId));
510
576
  try {
511
577
  yield* eventsOf(signal, async (emit) => {
512
578
  const event = (name, data) => emit(sseEvent(createWorkflowEvent(name, data)));
513
- result = await executeWorkflow(deps, workflow, body.input, {
514
- ...body.options,
579
+ result = await start({
515
580
  onNodeStart: (nodeName) => event('node_started', { nodeName, timestamp: Date.now() }),
516
581
  onNodeComplete: (nodeName, output, duration) => event('node_completed', { nodeName, output, duration }),
517
582
  onNodeError: (nodeName, error) => event('node_error', { nodeName, error: describeError(error).message }),
518
583
  onNodeProgress: (nodeName, progress) => event('node_progress', { nodeName, progress }),
519
- }, signal);
584
+ });
520
585
  });
521
586
  }
522
587
  catch (error) {
523
588
  if (signal.aborted)
524
589
  return;
590
+ if (error instanceof WorkflowRunFailedError) {
591
+ yield sseEvent(createWorkflowEvent('workflow_failed', toWorkflowFailedData(error)));
592
+ yield* failure(error.failure);
593
+ return;
594
+ }
525
595
  yield* failure(error);
526
596
  return;
527
597
  }
528
598
  if (signal.aborted || !result)
529
599
  return;
530
- yield sseEvent(createWorkflowEvent('workflow_completed', {
531
- workflowId: result.workflowId,
532
- duration: result.duration,
533
- }));
600
+ yield sseEvent(createWorkflowEvent('workflow_completed', toWorkflowCompletedData(result)));
534
601
  yield sseEvent(createFinishEvent(messageId));
535
602
  yield DONE_EVENT;
536
603
  }
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../src/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../src/controller.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { HttpError } from '@tetsujs/core';
2
+ import type { BaseCtx } from '@tetsujs/core';
2
3
  import type { HttpErrorDescription } from '@cogitator-ai/server-shared';
3
4
  import type { CogitatorError } from '@cogitator-ai/types';
4
5
  /** The status a request is answered with when its client left before the answer was ready. */
@@ -8,14 +9,32 @@ export declare const CLIENT_CLOSED_REQUEST = 499;
8
9
  * with `Retry-After` when the error says when to retry.
9
10
  */
10
11
  export declare function cogitatorErrorResponse(error: CogitatorError): Response;
12
+ /**
13
+ * The error of a workflow run that failed, with the last checkpoint it saved when it saved one,
14
+ * so the answer can tell the client where to resume it from
15
+ */
16
+ export declare class WorkflowRunFailedError extends Error {
17
+ readonly failure: Error;
18
+ readonly checkpointId: string | undefined;
19
+ constructor(failure: Error, checkpointId: string | undefined);
20
+ }
21
+ /**
22
+ * What a JSON workflow route throws for `error`: the error a run that saved no checkpoint
23
+ * failed with, so the application's own `onError` hooks see it as it was, and a failure with a
24
+ * checkpoint as it is, for {@link cogitatorErrors} to answer with its `checkpointId`
25
+ */
26
+ export declare function workflowRouteError(error: unknown): unknown;
27
+ /** The error a workflow run failed with, or `error` itself when it is not a failed run */
28
+ export declare function unwrapWorkflowFailure(error: unknown): unknown;
11
29
  /**
12
30
  * An `onError` hook that answers every `CogitatorError` with its status, code and
13
- * `Retry-After`, and a swarm that ran out of time with `504 RUN_TIMEOUT`.
31
+ * `Retry-After`, a swarm that ran out of time with `504 RUN_TIMEOUT`, and a failed workflow run
32
+ * like its error, with the `checkpointId` to resume it from.
14
33
  *
15
34
  * `cogitatorController()` mounts one on each of its routes. Mount another on the
16
35
  * application to map errors thrown by your own routes the same way.
17
36
  */
18
- export declare function cogitatorErrors(): import("@tetsujs/core").Hook<"onError", import("@tetsujs/core").BaseCtx & {
37
+ export declare function cogitatorErrors(): import("@tetsujs/core").Hook<"onError", BaseCtx & {
19
38
  readonly error: unknown;
20
39
  }, unknown>;
21
40
  /** The `HttpError` a refusal of the shared contract is thrown as, in the Tetsu envelope */
@@ -31,7 +50,7 @@ export interface DescribedError {
31
50
  * about is `INTERNAL_ERROR`, the code the streams and sockets of every adapter send, while the
32
51
  * JSON answer keeps Tetsu's own `500 INTERNAL_SERVER_ERROR`.
33
52
  */
34
- export declare function describeError(error: unknown): DescribedError;
53
+ export declare function describeError(thrown: unknown): DescribedError;
35
54
  export declare function isModuleNotFoundError(error: unknown): boolean;
36
55
  export declare function importOptional<T>(load: () => Promise<T>, packageName: string): Promise<T>;
37
56
  export declare function clientClosedRequest(): HttpError;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,SAAS,EAAa,MAAM,eAAe,CAAC;AAGtE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,8FAA8F;AAC9F,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAUzC;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,cAAc,GAAG,QAAQ,CAEtE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe;;YAK9B;AAED,2FAA2F;AAC3F,wBAAgB,YAAY,CAAC,OAAO,EAAE,oBAAoB,GAAG,SAAS,CAErE;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc,CAiB5D;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAG7D;AAED,wBAAsB,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAa/F;AAED,wBAAgB,mBAAmB,IAAI,SAAS,CAE/C"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,SAAS,EAA4B,MAAM,eAAe,CAAC;AACrF,OAAO,KAAK,EAAE,OAAO,EAAa,MAAM,eAAe,CAAC;AAExD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,8FAA8F;AAC9F,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAUzC;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,cAAc,GAAG,QAAQ,CAEtE;AAED;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;IAE7C,QAAQ,CAAC,OAAO,EAAE,KAAK;IACvB,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS;gBADhC,OAAO,EAAE,KAAK,EACd,YAAY,EAAE,MAAM,GAAG,SAAS;CAK5C;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAI1D;AAED,0FAA0F;AAC1F,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE7D;AAuCD;;;;;;;GAOG;AACH,wBAAgB,eAAe;;YAQ9B;AAED,2FAA2F;AAC3F,wBAAgB,YAAY,CAAC,OAAO,EAAE,oBAAoB,GAAG,SAAS,CAErE;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,cAAc,CAkB7D;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAG7D;AAED,wBAAsB,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAa/F;AAED,wBAAgB,mBAAmB,IAAI,SAAS,CAE/C"}
package/dist/errors.js CHANGED
@@ -1,4 +1,4 @@
1
- import { errorBody, hook, HttpError, httpError } from '@tetsujs/core';
1
+ import { errorBody, hook, HttpError, httpError, reportFailure } from '@tetsujs/core';
2
2
  import { describeHttpError, errorHeaders, INTERNAL_ERROR } from '@cogitator-ai/server-shared';
3
3
  /** The status a request is answered with when its client left before the answer was ready. */
4
4
  export const CLIENT_CLOSED_REQUEST = 499;
@@ -16,15 +16,76 @@ function describedResponse(described) {
16
16
  export function cogitatorErrorResponse(error) {
17
17
  return describedResponse(describeHttpError(error) ?? INTERNAL_ERROR);
18
18
  }
19
+ /**
20
+ * The error of a workflow run that failed, with the last checkpoint it saved when it saved one,
21
+ * so the answer can tell the client where to resume it from
22
+ */
23
+ export class WorkflowRunFailedError extends Error {
24
+ failure;
25
+ checkpointId;
26
+ constructor(failure, checkpointId) {
27
+ super(failure.message, { cause: failure });
28
+ this.failure = failure;
29
+ this.checkpointId = checkpointId;
30
+ this.name = 'WorkflowRunFailedError';
31
+ }
32
+ }
33
+ /**
34
+ * What a JSON workflow route throws for `error`: the error a run that saved no checkpoint
35
+ * failed with, so the application's own `onError` hooks see it as it was, and a failure with a
36
+ * checkpoint as it is, for {@link cogitatorErrors} to answer with its `checkpointId`
37
+ */
38
+ export function workflowRouteError(error) {
39
+ return error instanceof WorkflowRunFailedError && error.checkpointId === undefined
40
+ ? error.failure
41
+ : error;
42
+ }
43
+ /** The error a workflow run failed with, or `error` itself when it is not a failed run */
44
+ export function unwrapWorkflowFailure(error) {
45
+ return error instanceof WorkflowRunFailedError ? error.failure : error;
46
+ }
47
+ /**
48
+ * Answers a failed workflow run that saved a checkpoint like the error it failed with, plus the
49
+ * `checkpointId` to resume it from: a `CogitatorError` with its status and code, an `HttpError` a
50
+ * node threw with its own status and body. Any other error is reported to the application and
51
+ * answered with Tetsu's own `500 INTERNAL_SERVER_ERROR` and the `checkpointId`, before the
52
+ * application's own `onError` hooks, which then do not see it: throw an `HttpError` or a
53
+ * `CogitatorError` from a node to choose the answer. A JSON route throws the error of a run
54
+ * without a checkpoint as it is (see {@link workflowRouteError}).
55
+ */
56
+ function workflowFailureResponse(ctx, error) {
57
+ const checkpoint = error.checkpointId === undefined ? {} : { checkpointId: error.checkpointId };
58
+ if (error.failure instanceof HttpError) {
59
+ const { status, body } = error.failure;
60
+ const envelope = body === undefined
61
+ ? errorBody(status)
62
+ : typeof body === 'string'
63
+ ? errorBody(status, undefined, body)
64
+ : body;
65
+ return Response.json(typeof envelope === 'object' && envelope !== null && !Array.isArray(envelope)
66
+ ? { ...envelope, ...checkpoint }
67
+ : envelope, { status });
68
+ }
69
+ const described = describeHttpError(error.failure);
70
+ if (described) {
71
+ return Response.json({ ...errorBody(described.status, described.code, described.message), ...checkpoint }, { status: described.status, headers: errorHeaders(described) });
72
+ }
73
+ reportFailure(ctx, 'unhandled', error.failure);
74
+ return Response.json({ ...errorBody(500), ...checkpoint }, { status: 500 });
75
+ }
19
76
  /**
20
77
  * An `onError` hook that answers every `CogitatorError` with its status, code and
21
- * `Retry-After`, and a swarm that ran out of time with `504 RUN_TIMEOUT`.
78
+ * `Retry-After`, a swarm that ran out of time with `504 RUN_TIMEOUT`, and a failed workflow run
79
+ * like its error, with the `checkpointId` to resume it from.
22
80
  *
23
81
  * `cogitatorController()` mounts one on each of its routes. Mount another on the
24
82
  * application to map errors thrown by your own routes the same way.
25
83
  */
26
84
  export function cogitatorErrors() {
27
85
  return hook.onError((ctx) => {
86
+ if (ctx.error instanceof WorkflowRunFailedError) {
87
+ return workflowFailureResponse(ctx, ctx.error);
88
+ }
28
89
  const described = describeHttpError(ctx.error);
29
90
  return described ? describedResponse(described) : undefined;
30
91
  });
@@ -38,7 +99,8 @@ export function refusalError(refusal) {
38
99
  * about is `INTERNAL_ERROR`, the code the streams and sockets of every adapter send, while the
39
100
  * JSON answer keeps Tetsu's own `500 INTERNAL_SERVER_ERROR`.
40
101
  */
41
- export function describeError(error) {
102
+ export function describeError(thrown) {
103
+ const error = unwrapWorkflowFailure(thrown);
42
104
  const described = describeHttpError(error);
43
105
  if (described) {
44
106
  return { message: described.message, code: described.code, unexpected: false };
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -4,7 +4,7 @@ export type { CallerFields, CallerHook } from './auth.js';
4
4
  export { cogitatorErrors, cogitatorErrorResponse, describeError, CLIENT_CLOSED_REQUEST, } from './errors.js';
5
5
  export type { DescribedError } from './errors.js';
6
6
  export { cogitatorErrorStatus } from '@cogitator-ai/server-shared';
7
- export { RunBody, ResumeBody, SwarmRunBody, WorkflowRunBody, AddMessageBody, SocketMessage, AgentRunResponse, AgentListResponse, ThreadResponse, ToolListResponse, WorkflowListResponse, WorkflowRunResponse, SwarmListResponse, SwarmRunResponse, BlackboardResponse, HealthResponse, ThreadQuery, } from './schemas.js';
8
- export type { AuthContext, Authenticate, AuthorizeThread, CogitatorDeps, DepsBuilder, ShutdownSignal, WebSocketOptions, AgentRunRequest, AgentResumeRequest, SwarmRunRequest, WorkflowRunRequest, AddMessageRequest, HealthResponseBody, AgentListResponseBody, AgentRunResponseBody, ThreadResponseBody, ToolListResponseBody, WorkflowListResponseBody, WorkflowRunResponseBody, SwarmListResponseBody, SwarmRunResponseBody, BlackboardResponseBody, WebSocketClientMessage, WebSocketServerMessage, } from './types.js';
7
+ export { RunBody, ResumeBody, SwarmRunBody, WorkflowRunBody, WorkflowResumeBody, AddMessageBody, SocketMessage, AgentRunResponse, AgentListResponse, ThreadResponse, ToolListResponse, WorkflowListResponse, WorkflowRunResponse, SwarmListResponse, SwarmRunResponse, BlackboardResponse, HealthResponse, ThreadQuery, } from './schemas.js';
8
+ export type { AuthContext, Authenticate, AuthorizeThread, CogitatorDeps, DepsBuilder, ShutdownSignal, WebSocketOptions, AgentRunRequest, AgentResumeRequest, SwarmRunRequest, WorkflowRunRequest, WorkflowResumeRequest, AddMessageRequest, HealthResponseBody, AgentListResponseBody, AgentRunResponseBody, ThreadResponseBody, ToolListResponseBody, WorkflowListResponseBody, WorkflowRunResponseBody, SwarmListResponseBody, SwarmRunResponseBody, BlackboardResponseBody, WebSocketClientMessage, WebSocketServerMessage, } from './types.js';
9
9
  export type { AnonymousPolicy, RunLimits, StreamEvent, Usage } from '@cogitator-ai/server-shared';
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,OAAO,EACL,OAAO,EACP,UAAU,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,WAAW,GACZ,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,WAAW,EACX,YAAY,EACZ,eAAe,EACf,aAAa,EACb,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,OAAO,EACL,OAAO,EACP,UAAU,EACV,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,WAAW,GACZ,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,WAAW,EACX,YAAY,EACZ,eAAe,EACf,aAAa,EACb,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC"}
package/dist/index.js CHANGED
@@ -2,5 +2,5 @@ export { cogitatorController } from './controller.js';
2
2
  export { callerHook } from './auth.js';
3
3
  export { cogitatorErrors, cogitatorErrorResponse, describeError, CLIENT_CLOSED_REQUEST, } from './errors.js';
4
4
  export { cogitatorErrorStatus } from '@cogitator-ai/server-shared';
5
- export { RunBody, ResumeBody, SwarmRunBody, WorkflowRunBody, AddMessageBody, SocketMessage, AgentRunResponse, AgentListResponse, ThreadResponse, ToolListResponse, WorkflowListResponse, WorkflowRunResponse, SwarmListResponse, SwarmRunResponse, BlackboardResponse, HealthResponse, ThreadQuery, } from './schemas.js';
5
+ export { RunBody, ResumeBody, SwarmRunBody, WorkflowRunBody, WorkflowResumeBody, AddMessageBody, SocketMessage, AgentRunResponse, AgentListResponse, ThreadResponse, ToolListResponse, WorkflowListResponse, WorkflowRunResponse, SwarmListResponse, SwarmRunResponse, BlackboardResponse, HealthResponse, ThreadQuery, } from './schemas.js';
6
6
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,OAAO,EACL,OAAO,EACP,UAAU,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,WAAW,GACZ,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,OAAO,EACL,OAAO,EACP,UAAU,EACV,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,WAAW,GACZ,MAAM,cAAc,CAAC"}
@@ -51,8 +51,23 @@ export declare function runAgent(deps: CogitatorDeps, agent: Agent, options: Run
51
51
  * `THREAD_ACCESS_DENIED`.
52
52
  */
53
53
  export declare function resumeAgent(deps: CogitatorDeps, agent: Agent, threadId: string, options: ResumeOptions, auth: AuthContext | undefined, runDeps: RunDeps): Promise<RunResult>;
54
- /** Runs a workflow with `maxIterations` and `maxConcurrency` held to the server's limits */
55
- export declare function executeWorkflow(deps: CogitatorDeps, workflow: Workflow<WorkflowState>, input: Record<string, unknown> | undefined, options: WorkflowExecuteOptions, signal: AbortSignal): Promise<WorkflowResult<WorkflowState>>;
54
+ /**
55
+ * Runs a workflow with `maxIterations` and `maxConcurrency` held to the server's limits. A run
56
+ * with `checkpoint` saves its checkpoints to `workflowCheckpoints` as the caller's.
57
+ */
58
+ export declare function executeWorkflow(deps: CogitatorDeps, workflow: Workflow<WorkflowState>, input: Record<string, unknown> | undefined, options: WorkflowExecuteOptions, signal: AbortSignal, auth?: AuthContext): Promise<WorkflowResult<WorkflowState>>;
59
+ /**
60
+ * Throws `404 CHECKPOINT_NOT_FOUND` unless `checkpointId` is a checkpoint of `workflow` that
61
+ * belongs to the caller, so a resume of a checkpoint that is missing, of another user or of
62
+ * another workflow is refused before anything runs
63
+ */
64
+ export declare function checkWorkflowCheckpoint(deps: CogitatorDeps, workflow: Workflow<WorkflowState>, checkpointId: string, auth: AuthContext | undefined): Promise<void>;
65
+ /**
66
+ * Resumes a workflow from a checkpoint of the caller, with `maxIterations` and `maxConcurrency`
67
+ * held to the server's limits. The resumed run saves its checkpoints too, so it can be resumed
68
+ * again.
69
+ */
70
+ export declare function resumeWorkflow(deps: CogitatorDeps, workflow: Workflow<WorkflowState>, checkpointId: string, options: WorkflowExecuteOptions, signal: AbortSignal, auth: AuthContext | undefined): Promise<WorkflowResult<WorkflowState>>;
56
71
  /**
57
72
  * Runs a swarm built for this request, its timeout held to the server's limit, and answers
58
73
  * with what `finish` makes of it, then closes the swarm, whether the run succeeded, failed or was aborted: a distributed swarm
@@ -1 +1 @@
1
- {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../src/operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../src/operations.ts"],"names":[],"mappings":"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"}