update demo execution to include timeouts to simulate async workloads
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "manifold-workflow-engine",
|
"name": "manifold-workflow-engine",
|
||||||
"version": "2.0.4",
|
"version": "2.0.5",
|
||||||
"author": "seemueller-io",
|
"author": "seemueller-io",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"description": "for building dynamic, LLM-driven workflows using a region-based execution model",
|
"description": "for building dynamic, LLM-driven workflows using a region-based execution model",
|
||||||
|
10
src/cli.ts
10
src/cli.ts
@@ -10,7 +10,6 @@ import {
|
|||||||
import { WorkflowState } from './types';
|
import { WorkflowState } from './types';
|
||||||
import log from './logger';
|
import log from './logger';
|
||||||
|
|
||||||
|
|
||||||
async function demonstrateNestedManifold(): Promise<void> {
|
async function demonstrateNestedManifold(): Promise<void> {
|
||||||
log.info("Starting demonstration of nested manifold.");
|
log.info("Starting demonstration of nested manifold.");
|
||||||
|
|
||||||
@@ -19,11 +18,15 @@ async function demonstrateNestedManifold(): Promise<void> {
|
|||||||
|
|
||||||
const validateOp = new WorkflowOperator('validation', async (state: WorkflowState) => {
|
const validateOp = new WorkflowOperator('validation', async (state: WorkflowState) => {
|
||||||
log.debug("Validating state.");
|
log.debug("Validating state.");
|
||||||
|
// Simulate asynchronous work
|
||||||
|
await new Promise((resolve) => setTimeout(resolve, 1000));
|
||||||
return { ...state, validated: true };
|
return { ...state, validated: true };
|
||||||
});
|
});
|
||||||
|
|
||||||
const cleanOp = new WorkflowOperator('cleaning', async (state: WorkflowState) => {
|
const cleanOp = new WorkflowOperator('cleaning', async (state: WorkflowState) => {
|
||||||
log.debug("Cleaning state.");
|
log.debug("Cleaning state.");
|
||||||
|
// Simulate asynchronous work
|
||||||
|
await new Promise((resolve) => setTimeout(resolve, 1000));
|
||||||
return { ...state, cleaned: true };
|
return { ...state, cleaned: true };
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -40,11 +43,15 @@ async function demonstrateNestedManifold(): Promise<void> {
|
|||||||
|
|
||||||
const analysisOp = new WorkflowOperator('analysis', async (state: WorkflowState) => {
|
const analysisOp = new WorkflowOperator('analysis', async (state: WorkflowState) => {
|
||||||
log.debug("Analyzing state.");
|
log.debug("Analyzing state.");
|
||||||
|
// Simulate asynchronous work
|
||||||
|
await new Promise((resolve) => setTimeout(resolve, 1000));
|
||||||
return { ...state, analyzed: true };
|
return { ...state, analyzed: true };
|
||||||
});
|
});
|
||||||
|
|
||||||
const transformOp = new WorkflowOperator('transformation', async (state: WorkflowState) => {
|
const transformOp = new WorkflowOperator('transformation', async (state: WorkflowState) => {
|
||||||
log.debug("Transforming state.");
|
log.debug("Transforming state.");
|
||||||
|
// Simulate asynchronous work
|
||||||
|
await new Promise((resolve) => setTimeout(resolve, 1000));
|
||||||
return { ...state, transformed: true };
|
return { ...state, transformed: true };
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -72,6 +79,7 @@ async function demonstrateNestedManifold(): Promise<void> {
|
|||||||
try {
|
try {
|
||||||
log.info(`Navigating with prompt: ${text}`);
|
log.info(`Navigating with prompt: ${text}`);
|
||||||
await mainManifold.navigate(text);
|
await mainManifold.navigate(text);
|
||||||
|
|
||||||
log.info(`Executing workflow with prompt: ${text}`);
|
log.info(`Executing workflow with prompt: ${text}`);
|
||||||
await mainManifold.executeWorkflow(text);
|
await mainManifold.executeWorkflow(text);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
Reference in New Issue
Block a user