@studio-foundation/engine 0.4.0-beta → 0.5.2

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 (86) hide show
  1. package/README.md +1 -1
  2. package/dist/__tests__/engine.script-stage.test.js +13 -32
  3. package/dist/__tests__/engine.script-stage.test.js.map +1 -1
  4. package/dist/engine.d.ts +2 -0
  5. package/dist/engine.d.ts.map +1 -1
  6. package/dist/engine.js +134 -1
  7. package/dist/engine.js.map +1 -1
  8. package/dist/events.d.ts +48 -0
  9. package/dist/events.d.ts.map +1 -1
  10. package/dist/events.js.map +1 -1
  11. package/dist/index.d.ts +5 -1
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +4 -0
  14. package/dist/index.js.map +1 -1
  15. package/dist/pipeline/call-input.d.ts +4 -0
  16. package/dist/pipeline/call-input.d.ts.map +1 -0
  17. package/dist/pipeline/call-input.js +28 -0
  18. package/dist/pipeline/call-input.js.map +1 -0
  19. package/dist/pipeline/call-orchestrator.d.ts +21 -0
  20. package/dist/pipeline/call-orchestrator.d.ts.map +1 -0
  21. package/dist/pipeline/call-orchestrator.js +127 -0
  22. package/dist/pipeline/call-orchestrator.js.map +1 -0
  23. package/dist/pipeline/condition-evaluator.d.ts +12 -0
  24. package/dist/pipeline/condition-evaluator.d.ts.map +1 -1
  25. package/dist/pipeline/condition-evaluator.js +27 -9
  26. package/dist/pipeline/condition-evaluator.js.map +1 -1
  27. package/dist/pipeline/context-propagation.d.ts +1 -0
  28. package/dist/pipeline/context-propagation.d.ts.map +1 -1
  29. package/dist/pipeline/context-propagation.js +18 -0
  30. package/dist/pipeline/context-propagation.js.map +1 -1
  31. package/dist/pipeline/contract-loader.d.ts.map +1 -1
  32. package/dist/pipeline/contract-loader.js +67 -0
  33. package/dist/pipeline/contract-loader.js.map +1 -1
  34. package/dist/pipeline/external-validator.d.ts +3 -0
  35. package/dist/pipeline/external-validator.d.ts.map +1 -0
  36. package/dist/pipeline/external-validator.js +65 -0
  37. package/dist/pipeline/external-validator.js.map +1 -0
  38. package/dist/pipeline/external-validator.test.d.ts +2 -0
  39. package/dist/pipeline/external-validator.test.d.ts.map +1 -0
  40. package/dist/pipeline/external-validator.test.js +40 -0
  41. package/dist/pipeline/external-validator.test.js.map +1 -0
  42. package/dist/pipeline/loader.d.ts.map +1 -1
  43. package/dist/pipeline/loader.js +154 -1
  44. package/dist/pipeline/loader.js.map +1 -1
  45. package/dist/pipeline/loader.test.js +30 -0
  46. package/dist/pipeline/loader.test.js.map +1 -1
  47. package/dist/pipeline/map-input.d.ts +13 -0
  48. package/dist/pipeline/map-input.d.ts.map +1 -0
  49. package/dist/pipeline/map-input.js +80 -0
  50. package/dist/pipeline/map-input.js.map +1 -0
  51. package/dist/pipeline/map-orchestrator.d.ts +35 -0
  52. package/dist/pipeline/map-orchestrator.d.ts.map +1 -0
  53. package/dist/pipeline/map-orchestrator.js +223 -0
  54. package/dist/pipeline/map-orchestrator.js.map +1 -0
  55. package/dist/pipeline/output-checker.d.ts +3 -0
  56. package/dist/pipeline/output-checker.d.ts.map +1 -0
  57. package/dist/pipeline/output-checker.js +40 -0
  58. package/dist/pipeline/output-checker.js.map +1 -0
  59. package/dist/pipeline/output-checker.test.d.ts +2 -0
  60. package/dist/pipeline/output-checker.test.d.ts.map +1 -0
  61. package/dist/pipeline/output-checker.test.js +62 -0
  62. package/dist/pipeline/output-checker.test.js.map +1 -0
  63. package/dist/pipeline/stage-executor.d.ts.map +1 -1
  64. package/dist/pipeline/stage-executor.js +48 -9
  65. package/dist/pipeline/stage-executor.js.map +1 -1
  66. package/dist/pipeline/stage-resolver.js +1 -1
  67. package/dist/pipeline/stage-resolver.js.map +1 -1
  68. package/dist/pipeline/strict-fields.d.ts +20 -0
  69. package/dist/pipeline/strict-fields.d.ts.map +1 -0
  70. package/dist/pipeline/strict-fields.js +62 -0
  71. package/dist/pipeline/strict-fields.js.map +1 -0
  72. package/dist/pipeline/task-input.d.ts +14 -0
  73. package/dist/pipeline/task-input.d.ts.map +1 -0
  74. package/dist/pipeline/task-input.js +22 -0
  75. package/dist/pipeline/task-input.js.map +1 -0
  76. package/dist/pipeline/task-input.test.d.ts +2 -0
  77. package/dist/pipeline/task-input.test.d.ts.map +1 -0
  78. package/dist/pipeline/task-input.test.js +33 -0
  79. package/dist/pipeline/task-input.test.js.map +1 -0
  80. package/dist/pipeline/template-interpolation.d.ts +9 -0
  81. package/dist/pipeline/template-interpolation.d.ts.map +1 -0
  82. package/dist/pipeline/template-interpolation.js +33 -0
  83. package/dist/pipeline/template-interpolation.js.map +1 -0
  84. package/dist/state/status-derivation.js +3 -3
  85. package/dist/state/status-derivation.js.map +1 -1
  86. package/package.json +5 -5
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @studio-foundation/engine
2
2
 
3
- **Studio** is an agentic pipeline runtime that executes multi-stage LLM workflows with structural validation and automatic retry. This package is the **engine**: pipeline orchestration, state machine, persistence, lifecycle hooks, and skills injection.
3
+ **Studio** is a declarative YAML runtime for AI agents. It orchestrates multi-stage agent workflows with structured output validation and automatic retry. This package is the **engine**: pipeline orchestration, state machine, persistence, lifecycle hooks, and skills injection.
4
4
 
5
5
  It loads pipeline configs, sequences stages, delegates each stage to [`ralph`](https://www.npmjs.com/package/@studio-foundation/ralph) + [`runner`](https://www.npmjs.com/package/@studio-foundation/runner), persists state, and emits events for observability. It knows about pipelines, stages, groups, hooks, and skills, but never about LLMs, files, or domain concepts.
6
6
 
@@ -56,53 +56,34 @@ describe('engine — script stage execution', () => {
56
56
  runtime: 'python',
57
57
  }));
58
58
  });
59
- it('retries on script error (runScript returns error field)', async () => {
60
- const scriptError = {
61
- output: null,
62
- tool_calls: [],
63
- tool_calls_count: 0,
64
- duration_ms: 10,
65
- error: 'Script exited with code 1: parse error',
66
- };
67
- vi.mocked(runScript)
68
- .mockResolvedValueOnce(scriptError)
69
- .mockResolvedValueOnce(scriptError)
70
- .mockResolvedValue({
71
- output: { title: 'My Book', chapters: 3 },
72
- tool_calls: [],
73
- tool_calls_count: 0,
74
- duration_ms: 50,
75
- });
76
- const engine = makeEngine();
77
- const result = await engine.run({
78
- pipelineDef: {
79
- ...SCRIPT_PIPELINE,
80
- stages: [{ ...SCRIPT_PIPELINE.stages[0], ralph: { max_attempts: 3, retry_strategy: 'none' } }],
81
- },
82
- userInput: 'parse book.epub',
83
- });
84
- expect(result.status).toBe('success');
85
- expect(vi.mocked(runScript)).toHaveBeenCalledTimes(3);
86
- });
87
- it('fails stage after exhausting max_attempts', async () => {
59
+ it('does not retry a script error a deterministic crash fails fast (STU-568)', async () => {
60
+ // A script is deterministic: re-running the same command on the same stdin
61
+ // yields the same crash. Burning 3 attempts on an identical ImportError is
62
+ // exactly what STU-568 fixes — even with max_attempts: 3, one call is enough.
88
63
  vi.mocked(runScript).mockResolvedValue({
89
64
  output: null,
90
65
  tool_calls: [],
91
66
  tool_calls_count: 0,
92
67
  duration_ms: 10,
93
- error: 'Script exited with code 1: always failing',
68
+ error: "Script exited with code 1: ImportError: cannot import name 'EXTRACTION_CONFIG_FILE'",
94
69
  });
95
70
  const engine = makeEngine();
96
71
  const result = await engine.run({
97
72
  pipelineDef: {
98
73
  ...SCRIPT_PIPELINE,
99
- stages: [{ ...SCRIPT_PIPELINE.stages[0], ralph: { max_attempts: 2, retry_strategy: 'none' } }],
74
+ stages: [{ ...SCRIPT_PIPELINE.stages[0], ralph: { max_attempts: 3, retry_strategy: 'none' } }],
100
75
  },
101
76
  userInput: 'parse book.epub',
102
77
  });
103
78
  expect(result.status).toBe('failed');
104
79
  expect(result.stages[0]?.status).toBe('failed');
105
- expect(vi.mocked(runScript)).toHaveBeenCalledTimes(2);
80
+ // Failed on the first attempt without burning the other two.
81
+ expect(vi.mocked(runScript)).toHaveBeenCalledTimes(1);
82
+ // The child's real reason (exit code + stderr) is surfaced on the agent run
83
+ // — this is what `studio status` and the CLI's "Errors:" line read (STU-568).
84
+ const lastAgentRun = result.stages[0]?.tasks[0]?.agent_runs.at(-1);
85
+ expect(lastAgentRun?.status).toBe('failed');
86
+ expect(lastAgentRun?.error).toMatch(/ImportError: cannot import name 'EXTRACTION_CONFIG_FILE'/);
106
87
  });
107
88
  });
108
89
  //# sourceMappingURL=engine.script-stage.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"engine.script-stage.test.js","sourceRoot":"","sources":["../../src/__tests__/engine.script-stage.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.script-stage.test.js","sourceRoot":"","sources":["../../src/__tests__/engine.script-stage.test.ts"],"names":[],"mappings":"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"}
package/dist/engine.d.ts CHANGED
@@ -43,6 +43,8 @@ export declare class PipelineEngine {
43
43
  private pipelineTotals;
44
44
  private stageExecutor;
45
45
  private groupOrchestrator;
46
+ private mapOrchestrator;
47
+ private callOrchestrator;
46
48
  constructor(config: EngineConfig, events?: EngineEvents | undefined);
47
49
  run(input: RunInput): Promise<PipelineRun>;
48
50
  /** For external listeners via the generic event bus */
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,WAAW,EACX,kBAAkB,EAClB,UAAU,EAEV,QAAQ,EACT,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,gBAAgB,EAItB,MAAM,2BAA2B,CAAC;AAUnC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAMhD,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IAChD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AA2DD,qBAAa,cAAc;IAOvB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,MAAM,CAAC;IAPjB,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,iBAAiB,CAAoB;gBAGnC,MAAM,EAAE,YAAY,EACpB,MAAM,CAAC,EAAE,YAAY,YAAA;IAqBzB,GAAG,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC;IAsThD,uDAAuD;IACvD,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,aAAa,EAAE,aAAa,KAAK,IAAI,GAAG,IAAI;YAM/D,aAAa;CAc5B"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,WAAW,EACX,kBAAkB,EAClB,UAAU,EAEV,QAAQ,EACT,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,gBAAgB,EAItB,MAAM,2BAA2B,CAAC;AAUnC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAQhD,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IAChD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAgED,qBAAa,cAAc;IASvB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,MAAM,CAAC;IATjB,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,gBAAgB,CAAmB;gBAGjC,MAAM,EAAE,YAAY,EACpB,MAAM,CAAC,EAAE,YAAY,YAAA;IAiCzB,GAAG,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC;IA4bhD,uDAAuD;IACvD,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,aAAa,EAAE,aAAa,KAAK,IAAI,GAAG,IAAI;YAM/D,aAAa;CAc5B"}
package/dist/engine.js CHANGED
@@ -1,7 +1,7 @@
1
1
  // Main pipeline engine — the orchestrator
2
2
  // Connects ralph (retry loop) + runner (agent execution) + contracts (validation)
3
3
  import { randomUUID } from 'node:crypto';
4
- import { isStageGroup } from '@studio-foundation/contracts';
4
+ import { isStageGroup, isMapStage, isCallStage } from '@studio-foundation/contracts';
5
5
  import { AnonymizationMiddleware, createStudioRunTool, STUDIO_RUN_PROMPT_SNIPPET, } from '@studio-foundation/runner';
6
6
  import { loadPipelineByName } from './pipeline/loader.js';
7
7
  import { executeStartupCommands } from './pipeline/startup-executor.js';
@@ -11,6 +11,8 @@ import { PipelineEventEmitter } from './events.js';
11
11
  import { resolveProjectPaths } from './pipeline/types.js';
12
12
  import { StageExecutor } from './pipeline/stage-executor.js';
13
13
  import { GroupOrchestrator } from './pipeline/group-orchestrator.js';
14
+ import { MapOrchestrator } from './pipeline/map-orchestrator.js';
15
+ import { CallOrchestrator } from './pipeline/call-orchestrator.js';
14
16
  /**
15
17
  * Collect all leaf stage names in pipeline order (group containers are transparent).
16
18
  */
@@ -21,6 +23,12 @@ function collectLeafStageNames(entries) {
21
23
  for (const stage of entry.stages)
22
24
  names.push(stage.name);
23
25
  }
26
+ else if (isMapStage(entry)) {
27
+ names.push(entry.map);
28
+ }
29
+ else if (isCallStage(entry)) {
30
+ names.push(entry.call);
31
+ }
24
32
  else {
25
33
  names.push(entry.name);
26
34
  }
@@ -46,6 +54,7 @@ function countTotalStages(entries) {
46
54
  count += entry.stages.length;
47
55
  }
48
56
  else {
57
+ // Simple stage or map (fan-out) stage — one entry each.
49
58
  count++;
50
59
  }
51
60
  }
@@ -74,6 +83,8 @@ export class PipelineEngine {
74
83
  pipelineTotals = { tokens: 0, toolCalls: 0 };
75
84
  stageExecutor;
76
85
  groupOrchestrator;
86
+ mapOrchestrator;
87
+ callOrchestrator;
77
88
  constructor(config, events) {
78
89
  this.config = config;
79
90
  this.events = events;
@@ -94,6 +105,18 @@ export class PipelineEngine {
94
105
  emitter: this.emitter,
95
106
  stageExecutor: this.stageExecutor,
96
107
  });
108
+ this.mapOrchestrator = new MapOrchestrator({
109
+ events,
110
+ emitter: this.emitter,
111
+ spawner: config.spawner,
112
+ maxDepth: config.maxDepth ?? 3,
113
+ });
114
+ this.callOrchestrator = new CallOrchestrator({
115
+ events,
116
+ emitter: this.emitter,
117
+ spawner: config.spawner,
118
+ maxDepth: config.maxDepth ?? 3,
119
+ });
97
120
  }
98
121
  async run(input) {
99
122
  const signal = input.signal;
@@ -260,6 +283,116 @@ export class PipelineEngine {
260
283
  return pipelineRun;
261
284
  }
262
285
  }
286
+ else if (isMapStage(entry)) {
287
+ // ========== MAP (FAN-OUT) ==========
288
+ stageCounter++;
289
+ // Skip stage if resuming from a later stage
290
+ if (skipSet.has(entry.map)) {
291
+ const skippedReason = input.originalRunId
292
+ ? `resumed from run ${input.originalRunId}`
293
+ : 'resumed from prior run';
294
+ const skippedRun = makeSkippedStageRun(entry.map, skippedReason);
295
+ this.events?.onStageComplete?.({
296
+ stage_name: entry.map,
297
+ stage_index: stageCounter - 1,
298
+ total_stages: totalStages,
299
+ status: 'skipped',
300
+ attempts: 0,
301
+ duration_ms: 0,
302
+ skipped_reason: skippedReason,
303
+ });
304
+ pipelineRun.stages.push(skippedRun);
305
+ previousStageName = entry.map;
306
+ continue;
307
+ }
308
+ const mapResult = await this.mapOrchestrator.run(entry, pipelineContext, stageCounter - 1, totalStages, pipelineRun.id, input.depth ?? 0, signal);
309
+ pipelineRun.stages.push(mapResult.stageRun);
310
+ if (mapResult.status === 'failed' || mapResult.status === 'cancelled') {
311
+ pipelineRun.status = mapResult.status;
312
+ pipelineRun.completed_at = new Date().toISOString();
313
+ if (mapResult.status === 'cancelled') {
314
+ this.events?.onPipelineCancelled?.({
315
+ run_id: pipelineRun.id,
316
+ cancelled_at_stage: mapResult.stageRun.stage_name,
317
+ duration_ms: Date.now() - pipelineStartTime,
318
+ });
319
+ }
320
+ await this.config.db?.savePipelineRun(pipelineRun);
321
+ if (runMiddleware) {
322
+ await this.persistKeymap(pipelineRun.id, runMiddleware.getKeymap());
323
+ }
324
+ this.events?.onPipelineComplete?.({
325
+ pipeline_name: pipeline.name,
326
+ run_id: pipelineRun.id,
327
+ status: pipelineRun.status,
328
+ duration_ms: Date.now() - pipelineStartTime,
329
+ total_tokens: this.pipelineTotals.tokens,
330
+ total_tool_calls: this.pipelineTotals.toolCalls,
331
+ });
332
+ this.emitter.emit({ type: 'pipeline_complete', pipelineId: pipelineRun.id });
333
+ return pipelineRun;
334
+ }
335
+ // Propagate the collected fan-out output to downstream stages.
336
+ if (mapResult.output !== undefined) {
337
+ addStageOutput(pipelineContext, entry.map, mapResult.output);
338
+ }
339
+ previousStageName = entry.map;
340
+ }
341
+ else if (isCallStage(entry)) {
342
+ // ========== CALL (ONE-SHOT SUB-PIPELINE) ==========
343
+ stageCounter++;
344
+ // Skip stage if resuming from a later stage
345
+ if (skipSet.has(entry.call)) {
346
+ const skippedReason = input.originalRunId
347
+ ? `resumed from run ${input.originalRunId}`
348
+ : 'resumed from prior run';
349
+ const skippedRun = makeSkippedStageRun(entry.call, skippedReason);
350
+ this.events?.onStageComplete?.({
351
+ stage_name: entry.call,
352
+ stage_index: stageCounter - 1,
353
+ total_stages: totalStages,
354
+ status: 'skipped',
355
+ attempts: 0,
356
+ duration_ms: 0,
357
+ skipped_reason: skippedReason,
358
+ });
359
+ pipelineRun.stages.push(skippedRun);
360
+ previousStageName = entry.call;
361
+ continue;
362
+ }
363
+ const callResult = await this.callOrchestrator.run(entry, pipelineContext, stageCounter - 1, totalStages, pipelineRun.id, input.depth ?? 0, signal);
364
+ pipelineRun.stages.push(callResult.stageRun);
365
+ if (callResult.status === 'failed' || callResult.status === 'cancelled') {
366
+ pipelineRun.status = callResult.status;
367
+ pipelineRun.completed_at = new Date().toISOString();
368
+ if (callResult.status === 'cancelled') {
369
+ this.events?.onPipelineCancelled?.({
370
+ run_id: pipelineRun.id,
371
+ cancelled_at_stage: callResult.stageRun.stage_name,
372
+ duration_ms: Date.now() - pipelineStartTime,
373
+ });
374
+ }
375
+ await this.config.db?.savePipelineRun(pipelineRun);
376
+ if (runMiddleware) {
377
+ await this.persistKeymap(pipelineRun.id, runMiddleware.getKeymap());
378
+ }
379
+ this.events?.onPipelineComplete?.({
380
+ pipeline_name: pipeline.name,
381
+ run_id: pipelineRun.id,
382
+ status: pipelineRun.status,
383
+ duration_ms: Date.now() - pipelineStartTime,
384
+ total_tokens: this.pipelineTotals.tokens,
385
+ total_tool_calls: this.pipelineTotals.toolCalls,
386
+ });
387
+ this.emitter.emit({ type: 'pipeline_complete', pipelineId: pipelineRun.id });
388
+ return pipelineRun;
389
+ }
390
+ // Propagate the child pipeline's output to downstream stages.
391
+ if (callResult.output !== undefined) {
392
+ addStageOutput(pipelineContext, entry.call, callResult.output);
393
+ }
394
+ previousStageName = entry.call;
395
+ }
263
396
  else {
264
397
  // ========== SIMPLE STAGE ==========
265
398
  stageCounter++;
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
package/dist/events.d.ts CHANGED
@@ -75,6 +75,35 @@ export interface GroupCompleteEvent {
75
75
  iterations: number;
76
76
  status: string;
77
77
  }
78
+ export interface MapStartEvent {
79
+ map_name: string;
80
+ total_items: number;
81
+ concurrency: number;
82
+ }
83
+ export interface MapItemStartEvent {
84
+ map_name: string;
85
+ index: number;
86
+ total_items: number;
87
+ /** Human-readable identity of the item (derived from the item, not just its index). */
88
+ label: string;
89
+ }
90
+ export interface MapItemCompleteEvent {
91
+ map_name: string;
92
+ index: number;
93
+ total_items: number;
94
+ status: 'success' | 'failed';
95
+ /** Human-readable identity of the item — same value as the matching MapItemStartEvent. */
96
+ label?: string;
97
+ run_id?: string;
98
+ error?: string;
99
+ }
100
+ export interface MapCompleteEvent {
101
+ map_name: string;
102
+ total: number;
103
+ succeeded: number;
104
+ failed: number;
105
+ status: string;
106
+ }
78
107
  export interface StageContextEvent {
79
108
  stage: string;
80
109
  run_id: string;
@@ -108,6 +137,10 @@ export interface EngineEvents {
108
137
  onGroupIteration?: (event: GroupIterationEvent) => void;
109
138
  onGroupFeedback?: (event: GroupFeedbackEvent) => void;
110
139
  onGroupComplete?: (event: GroupCompleteEvent) => void;
140
+ onMapStart?: (event: MapStartEvent) => void;
141
+ onMapItemStart?: (event: MapItemStartEvent) => void;
142
+ onMapItemComplete?: (event: MapItemCompleteEvent) => void;
143
+ onMapComplete?: (event: MapCompleteEvent) => void;
111
144
  onStageContext?: (event: StageContextEvent) => void;
112
145
  onToolCallStart?: (event: StagedToolCallStartEvent) => void;
113
146
  onToolCallComplete?: (event: StagedToolCallCompleteEvent) => void;
@@ -154,6 +187,21 @@ export type PipelineEvent = {
154
187
  groupName: string;
155
188
  iterations: number;
156
189
  status: string;
190
+ } | {
191
+ type: 'map_start';
192
+ mapName: string;
193
+ totalItems: number;
194
+ } | {
195
+ type: 'map_item_complete';
196
+ mapName: string;
197
+ index: number;
198
+ status: string;
199
+ } | {
200
+ type: 'map_complete';
201
+ mapName: string;
202
+ succeeded: number;
203
+ failed: number;
204
+ status: string;
157
205
  };
158
206
  export declare class PipelineEventEmitter {
159
207
  private listeners;
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AA0JA,MAAM,OAAO,oBAAoB;IACvB,SAAS,GAA0C,EAAE,CAAC;IAE9D,EAAE,CAAC,QAAwC;QACzC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,CAAC,KAAoB;QACvB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAkMA,MAAM,OAAO,oBAAoB;IACvB,SAAS,GAA0C,EAAE,CAAC;IAE9D,EAAE,CAAC,QAAwC;QACzC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,CAAC,KAAoB;QACvB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;CACF"}
package/dist/index.d.ts CHANGED
@@ -1,7 +1,11 @@
1
1
  export { PipelineEngine } from './engine.js';
2
2
  export type { EngineConfig, RunInput } from './engine.js';
3
3
  export { PipelineEventEmitter } from './events.js';
4
- export type { EngineEvents, PipelineEvent, PipelineStartEvent, PipelineCompleteEvent, PipelineCancelledEvent, StageStartEvent, StageCompleteEvent, StageRetryEvent, ToolCallSummary, TokenUsage, GroupStartEvent, GroupIterationEvent, GroupFeedbackEvent, GroupCompleteEvent, StageContextEvent, StagedToolCallStartEvent, StagedToolCallCompleteEvent, } from './events.js';
4
+ export type { EngineEvents, PipelineEvent, PipelineStartEvent, PipelineCompleteEvent, PipelineCancelledEvent, StageStartEvent, StageCompleteEvent, StageRetryEvent, ToolCallSummary, TokenUsage, GroupStartEvent, GroupIterationEvent, GroupFeedbackEvent, GroupCompleteEvent, StageContextEvent, StagedToolCallStartEvent, StagedToolCallCompleteEvent, MapStartEvent, MapItemCompleteEvent, MapCompleteEvent, } from './events.js';
5
+ export { MapOrchestrator } from './pipeline/map-orchestrator.js';
6
+ export type { MapStageOutput, MapItemResult, MapRunResult } from './pipeline/map-orchestrator.js';
7
+ export { CallOrchestrator } from './pipeline/call-orchestrator.js';
8
+ export type { CallRunResult } from './pipeline/call-orchestrator.js';
5
9
  export { deriveStageStatus } from './state/status-derivation.js';
6
10
  export { isValidTransition, transition } from './state/state-machine.js';
7
11
  export type { StageLifecycleState } from './state/state-machine.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EACV,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,UAAU,EACV,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,wBAAwB,EACxB,2BAA2B,GAC5B,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACzE,YAAY,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGpE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACpF,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGjF,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGhF,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAGvG,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,YAAY,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAG1E,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAChE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EACV,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,UAAU,EACV,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,wBAAwB,EACxB,2BAA2B,EAC3B,aAAa,EACb,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAGlG,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,YAAY,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAGrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACzE,YAAY,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGpE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACpF,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGjF,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGhF,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAGvG,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,YAAY,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAG1E,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAChE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC"}
package/dist/index.js CHANGED
@@ -3,6 +3,10 @@
3
3
  export { PipelineEngine } from './engine.js';
4
4
  // Events
5
5
  export { PipelineEventEmitter } from './events.js';
6
+ // Fan-out (map) stage
7
+ export { MapOrchestrator } from './pipeline/map-orchestrator.js';
8
+ // One-shot sub-pipeline call stage
9
+ export { CallOrchestrator } from './pipeline/call-orchestrator.js';
6
10
  // State management
7
11
  export { deriveStageStatus } from './state/status-derivation.js';
8
12
  export { isValidTransition, transition } from './state/state-machine.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mCAAmC;AAEnC,cAAc;AACd,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C,SAAS;AACT,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAqBnD,mBAAmB;AACnB,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGzE,YAAY;AACZ,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGpF,mBAAmB;AACnB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAEhF,sBAAsB;AACtB,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,mCAAmC,CAAC;AAG3C,sBAAsB;AACtB,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGhE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,WAAW;AACX,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,kBAAkB;AAClB,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mCAAmC;AAEnC,cAAc;AACd,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C,SAAS;AACT,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAwBnD,sBAAsB;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAGjE,mCAAmC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAGnE,mBAAmB;AACnB,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGzE,YAAY;AACZ,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGpF,mBAAmB;AACnB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAEhF,sBAAsB;AACtB,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,mCAAmC,CAAC;AAG3C,sBAAsB;AACtB,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGhE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,WAAW;AACX,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,kBAAkB;AAClB,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { CallStage } from '@studio-foundation/contracts';
2
+ import type { PipelineContext } from './context-propagation.js';
3
+ export declare function buildCallInput(call: CallStage, context: PipelineContext): Record<string, unknown>;
4
+ //# sourceMappingURL=call-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call-input.d.ts","sourceRoot":"","sources":["../../src/pipeline/call-input.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAIhE,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBjG"}
@@ -0,0 +1,28 @@
1
+ // Build the input for a one-shot `call` stage's child run.
2
+ //
3
+ // A call stage runs a named pipeline once. Its `input:` template is resolved
4
+ // against the *parent* context — {{input}}, {{input.<path>}} and
5
+ // {{stages.<name>.output.<path>}}, the same references `condition` and `map`'s
6
+ // `over` read (resolveContextPath). With no template the parent input is
7
+ // forwarded to the child unchanged.
8
+ import { resolveContextPath } from './condition-evaluator.js';
9
+ import { interpolateTemplate } from './template-interpolation.js';
10
+ export function buildCallInput(call, context) {
11
+ const scope = { input: context.input, stageOutputs: context.stageOutputs };
12
+ if (call.input) {
13
+ const result = {};
14
+ for (const [key, template] of Object.entries(call.input)) {
15
+ result[key] = interpolateTemplate(template, (ref) => resolveContextPath(ref, scope));
16
+ }
17
+ return result;
18
+ }
19
+ // No template → forward the parent input verbatim (the "run this pipeline with
20
+ // the same input I received" case that chains top-level pipelines).
21
+ const input = context.input;
22
+ if (input !== null && typeof input === 'object' && !Array.isArray(input)) {
23
+ return input;
24
+ }
25
+ throw new Error(`Call stage '${call.call}': the parent input is not an object, so it cannot be forwarded to ` +
26
+ `'${call.pipeline ?? call.call}' directly. Add an 'input:' template mapping the child's fields.`);
27
+ }
28
+ //# sourceMappingURL=call-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call-input.js","sourceRoot":"","sources":["../../src/pipeline/call-input.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,EAAE;AACF,6EAA6E;AAC7E,iEAAiE;AACjE,+EAA+E;AAC/E,yEAAyE;AACzE,oCAAoC;AAIpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,MAAM,UAAU,cAAc,CAAC,IAAe,EAAE,OAAwB;IACtE,MAAM,KAAK,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC;IAE3E,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACzD,MAAM,CAAC,GAAG,CAAC,GAAG,mBAAmB,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QACvF,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,+EAA+E;IAC/E,oEAAoE;IACpE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzE,OAAO,KAAgC,CAAC;IAC1C,CAAC;IAED,MAAM,IAAI,KAAK,CACb,eAAe,IAAI,CAAC,IAAI,qEAAqE;QAC7F,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,kEAAkE,CACjG,CAAC;AACJ,CAAC"}
@@ -0,0 +1,21 @@
1
+ import type { CallStage, RunSpawner, StageRun, StageStatus } from '@studio-foundation/contracts';
2
+ import type { EngineEvents, PipelineEventEmitter } from '../events.js';
3
+ import type { PipelineContext } from './context-propagation.js';
4
+ export interface CallRunResult {
5
+ status: StageStatus;
6
+ stageRun: StageRun;
7
+ /** The child pipeline's output — propagated to downstream stages under the stage name. */
8
+ output?: unknown;
9
+ }
10
+ export interface CallOrchestratorConfig {
11
+ events?: EngineEvents;
12
+ emitter: PipelineEventEmitter;
13
+ spawner?: RunSpawner;
14
+ maxDepth: number;
15
+ }
16
+ export declare class CallOrchestrator {
17
+ private config;
18
+ constructor(config: CallOrchestratorConfig);
19
+ run(call: CallStage, context: PipelineContext, stageIndex: number, totalStages: number, runId: string, depth: number, signal?: AbortSignal): Promise<CallRunResult>;
20
+ }
21
+ //# sourceMappingURL=call-orchestrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call-orchestrator.d.ts","sourceRoot":"","sources":["../../src/pipeline/call-orchestrator.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAW,MAAM,8BAA8B,CAAC;AAC1G,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAGvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,0FAA0F;IAC1F,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,oBAAoB,CAAC;IAC9B,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAMD,qBAAa,gBAAgB;IACf,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,sBAAsB;IAE5C,GAAG,CACP,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,aAAa,CAAC;CAiH1B"}