@studio-foundation/engine 0.13.0 → 0.15.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 (60) hide show
  1. package/dist/__tests__/engine.map-batch.test.d.ts +2 -0
  2. package/dist/__tests__/engine.map-batch.test.d.ts.map +1 -0
  3. package/dist/__tests__/engine.map-batch.test.js +216 -0
  4. package/dist/__tests__/engine.map-batch.test.js.map +1 -0
  5. package/dist/engine.d.ts +4 -0
  6. package/dist/engine.d.ts.map +1 -1
  7. package/dist/engine.js +29 -1
  8. package/dist/engine.js.map +1 -1
  9. package/dist/events.d.ts +24 -6
  10. package/dist/events.d.ts.map +1 -1
  11. package/dist/events.js.map +1 -1
  12. package/dist/index.d.ts +5 -2
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +5 -2
  15. package/dist/index.js.map +1 -1
  16. package/dist/pipeline/agent-loader.test.js +0 -36
  17. package/dist/pipeline/agent-loader.test.js.map +1 -1
  18. package/dist/pipeline/call-orchestrator.d.ts +3 -1
  19. package/dist/pipeline/call-orchestrator.d.ts.map +1 -1
  20. package/dist/pipeline/call-orchestrator.js +8 -3
  21. package/dist/pipeline/call-orchestrator.js.map +1 -1
  22. package/dist/pipeline/condition-evaluator.d.ts +11 -6
  23. package/dist/pipeline/condition-evaluator.d.ts.map +1 -1
  24. package/dist/pipeline/condition-evaluator.js +12 -0
  25. package/dist/pipeline/condition-evaluator.js.map +1 -1
  26. package/dist/pipeline/contract-coverage.d.ts +20 -0
  27. package/dist/pipeline/contract-coverage.d.ts.map +1 -0
  28. package/dist/pipeline/contract-coverage.js +43 -0
  29. package/dist/pipeline/contract-coverage.js.map +1 -0
  30. package/dist/pipeline/contract-coverage.test.d.ts +2 -0
  31. package/dist/pipeline/contract-coverage.test.d.ts.map +1 -0
  32. package/dist/pipeline/contract-coverage.test.js +72 -0
  33. package/dist/pipeline/contract-coverage.test.js.map +1 -0
  34. package/dist/pipeline/group-orchestrator.d.ts.map +1 -1
  35. package/dist/pipeline/group-orchestrator.js +21 -1
  36. package/dist/pipeline/group-orchestrator.js.map +1 -1
  37. package/dist/pipeline/loader.d.ts.map +1 -1
  38. package/dist/pipeline/loader.js +29 -1
  39. package/dist/pipeline/loader.js.map +1 -1
  40. package/dist/pipeline/loader.test.js +38 -0
  41. package/dist/pipeline/loader.test.js.map +1 -1
  42. package/dist/pipeline/map-orchestrator.d.ts +8 -1
  43. package/dist/pipeline/map-orchestrator.d.ts.map +1 -1
  44. package/dist/pipeline/map-orchestrator.js +89 -5
  45. package/dist/pipeline/map-orchestrator.js.map +1 -1
  46. package/dist/pipeline/stage-executor.d.ts.map +1 -1
  47. package/dist/pipeline/stage-executor.js +30 -19
  48. package/dist/pipeline/stage-executor.js.map +1 -1
  49. package/dist/pipeline/strict-fields.d.ts +1 -1
  50. package/dist/pipeline/strict-fields.js +1 -1
  51. package/dist/pipeline/types.d.ts +3 -1
  52. package/dist/pipeline/types.d.ts.map +1 -1
  53. package/dist/spawners/direct-engine-spawner.d.ts.map +1 -1
  54. package/dist/spawners/direct-engine-spawner.js +23 -2
  55. package/dist/spawners/direct-engine-spawner.js.map +1 -1
  56. package/package.json +4 -4
  57. package/dist/repo-resolver.d.ts +0 -10
  58. package/dist/repo-resolver.d.ts.map +0 -1
  59. package/dist/repo-resolver.js +0 -39
  60. package/dist/repo-resolver.js.map +0 -1
@@ -2,6 +2,7 @@
2
2
  // Handles the execution of a single pipeline stage: ralph loop, validation, hooks, observability.
3
3
  import { randomUUID } from 'node:crypto';
4
4
  import { join } from 'node:path';
5
+ import { accumulateTokenUsage, emptyTokenUsage } from '@studio-foundation/contracts';
5
6
  import { ralph, validateSchema, validateToolCalls, validateRequiredTools, validateCountedTools, validateToolGroups, compose, exponentialBackoff, fixedDelay, noDelay, } from '@studio-foundation/ralph';
6
7
  import { runAgent, runScript, AnonymizationMiddleware, } from '@studio-foundation/runner';
7
8
  import { buildTaskInput } from './task-input.js';
@@ -72,6 +73,8 @@ export class StageExecutor {
72
73
  }
73
74
  // Load agent profile — only for LLM stages (script stages have no agent)
74
75
  let agentConfig = null;
76
+ let pluginSkills = [];
77
+ let projectSkills = [];
75
78
  if (stageDef.agent) {
76
79
  agentConfig = await loadAgentProfile(stageDef.agent, paths.agentsDir);
77
80
  // Apply defaults from config.yaml when agent YAML omits provider/model
@@ -88,25 +91,13 @@ export class StageExecutor {
88
91
  if (!agentConfig.model) {
89
92
  throw new Error(`Agent '${stageDef.agent}' has no model and no default is configured. Run: studio config set defaults.model <model>`);
90
93
  }
91
- // Inject plugin skills into system_prompt for agents that declare plugins
94
+ // Loaded here because these paths are the engine's (INV-09), assembled in
95
+ // the runner's prompt-builder because the prompt is not (INV-06).
92
96
  if (agentConfig.plugins?.length && this.config.pluginSkills) {
93
- const skillChunks = agentConfig.plugins
94
- .flatMap((p) => this.config.pluginSkills[p] ?? []);
95
- if (skillChunks.length > 0) {
96
- agentConfig.system_prompt = `${agentConfig.system_prompt ?? ''}\n\n${skillChunks.join('\n\n---\n\n')}`;
97
- }
97
+ pluginSkills = agentConfig.plugins.flatMap((p) => this.config.pluginSkills[p] ?? []);
98
98
  }
99
- // Inject project skills (.studio/skills/*.skill.md) for agents that declare skills
100
99
  if (agentConfig.skills?.length) {
101
- const loaded = await loadSkillFiles(agentConfig.skills, paths.skillsDir);
102
- if (loaded.length > 0) {
103
- const skillChunks = loaded.map((s) => `## Skill: ${s.name}\n\n${s.content}`);
104
- agentConfig.system_prompt = `${agentConfig.system_prompt ?? ''}\n\n${skillChunks.join('\n\n---\n\n')}`;
105
- }
106
- }
107
- // Inject project domain invariants (.studio/invariants.md) into system_prompt
108
- if (pipelineContext.invariantsContent) {
109
- agentConfig.system_prompt = `${agentConfig.system_prompt ?? ''}\n\n---\n\n## Project Invariants\n\n${pipelineContext.invariantsContent}`;
100
+ projectSkills = await loadSkillFiles(agentConfig.skills, paths.skillsDir);
110
101
  }
111
102
  }
112
103
  // Validate: stage must have either agent (LLM) or script (script executor)
@@ -240,6 +231,12 @@ export class StageExecutor {
240
231
  return {};
241
232
  }
242
233
  : undefined;
234
+ // Every attempt costs tokens, including the ones that failed validation.
235
+ // Accumulating here (rather than reading the winning attempt's usage) is what
236
+ // makes a stage that retried twice report what it actually spent. ralph stays
237
+ // generic — it never learns what a token is (INV-02).
238
+ const stageUsage = emptyTokenUsage();
239
+ let stageUsageReported = false;
243
240
  // Execute ralph loop — catch unexpected executor throws (network errors, etc.)
244
241
  // and convert them to a failed stage rather than crashing the pipeline.
245
242
  let ralphResult;
@@ -266,6 +263,9 @@ export class StageExecutor {
266
263
  toolRegistry: toolRegistry,
267
264
  providerRegistry: this.config.providerRegistry,
268
265
  outputContract: contract ?? undefined,
266
+ pluginSkills,
267
+ skills: projectSkills,
268
+ projectInvariants: pipelineContext.invariantsContent,
269
269
  maxToolCalls: stageDef.ralph?.max_tool_calls,
270
270
  anonymizationMiddleware: runMiddleware ?? stageMiddleware ?? undefined,
271
271
  signal,
@@ -315,6 +315,10 @@ export class StageExecutor {
315
315
  ...(result.error ? { error: result.error } : {}),
316
316
  };
317
317
  taskRun.agent_runs.push(agentRun);
318
+ if (result.token_usage) {
319
+ accumulateTokenUsage(stageUsage, result.token_usage);
320
+ stageUsageReported = true;
321
+ }
318
322
  return result;
319
323
  },
320
324
  validator: ralphValidator,
@@ -339,6 +343,9 @@ export class StageExecutor {
339
343
  failures: event.allFailures,
340
344
  agent_output_raw: rawOutput,
341
345
  tool_calls_count: event.result.tool_calls_count,
346
+ // What this discarded attempt cost — the part of a stage's bill that
347
+ // is invisible from the stage total alone.
348
+ token_usage: event.result.token_usage,
342
349
  });
343
350
  this.config.emitter.emit({
344
351
  type: 'task_retry',
@@ -407,7 +414,7 @@ export class StageExecutor {
407
414
  return { stageRun, status: 'cancelled' };
408
415
  }
409
416
  // Post-validation: check if a successful output is semantically rejected
410
- // (e.g. QA stage returned valid JSON but status says "implementation_incomplete")
417
+ // (valid JSON, but a field the contract watches carries a rejecting value)
411
418
  let postResult;
412
419
  if (stageStatus === 'success' && contract?.post_validation?.rejection_detection) {
413
420
  const agentOutput = ralphResult.status === 'success' ? ralphResult.result?.output : undefined;
@@ -462,6 +469,9 @@ export class StageExecutor {
462
469
  if (lastResult?.output !== undefined) {
463
470
  stageRun.output = lastResult.output;
464
471
  }
472
+ if (stageUsageReported) {
473
+ stageRun.token_usage = stageUsage;
474
+ }
465
475
  const stageDurationMs = stageRun.completed_at && stageRun.started_at
466
476
  ? new Date(stageRun.completed_at).getTime() - new Date(stageRun.started_at).getTime()
467
477
  : 0;
@@ -477,7 +487,7 @@ export class StageExecutor {
477
487
  : lastResult ? summarizeOutput(lastResult.output) : undefined,
478
488
  output: lastResult?.output,
479
489
  tool_calls: lastResult ? lastResult.tool_calls : undefined,
480
- token_usage: lastResult?.token_usage,
490
+ token_usage: stageUsageReported ? stageUsage : undefined,
481
491
  rejection_reason: postResult?.rejection_reason,
482
492
  rejection_details: postResult?.rejection_details,
483
493
  });
@@ -488,7 +498,8 @@ export class StageExecutor {
488
498
  postValidation: postResult,
489
499
  lastAgentOutput: lastResult?.output,
490
500
  toolCalls: lastResult?.tool_calls,
491
- tokensDelta: lastResult?.token_usage?.total_tokens ?? 0,
501
+ tokenUsage: stageUsageReported ? stageUsage : undefined,
502
+ tokensDelta: stageUsage.total_tokens,
492
503
  toolCallsDelta: lastResult?.tool_calls_count ?? 0,
493
504
  };
494
505
  }
@@ -1 +1 @@
1
- {"version":3,"file":"stage-executor.js","sourceRoot":"","sources":["../../src/pipeline/stage-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stage-executor.js","sourceRoot":"","sources":["../../src/pipeline/stage-executor.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * @param obj parsed YAML object (or nested block) to check
5
5
  * @param allowed every field name the kernel actually implements
6
- * @param what human label for the block, e.g. "contract" or "stage 'qa'"
6
+ * @param what human label for the block, e.g. "contract" or "stage 'review'"
7
7
  * @param context file suffix for the error message, e.g. " (from /path)"
8
8
  */
9
9
  export declare function assertKnownFields(obj: Record<string, unknown>, allowed: readonly string[], what: string, context: string): void;
@@ -8,7 +8,7 @@
8
8
  *
9
9
  * @param obj parsed YAML object (or nested block) to check
10
10
  * @param allowed every field name the kernel actually implements
11
- * @param what human label for the block, e.g. "contract" or "stage 'qa'"
11
+ * @param what human label for the block, e.g. "contract" or "stage 'review'"
12
12
  * @param context file suffix for the error message, e.g. " (from /path)"
13
13
  */
14
14
  export function assertKnownFields(obj, allowed, what, context) {
@@ -1,4 +1,4 @@
1
- import type { StageRun, StageStatus, ToolCall } from '@studio-foundation/contracts';
1
+ import type { StageRun, StageStatus, TokenUsage, ToolCall } from '@studio-foundation/contracts';
2
2
  import type { PostValidationResult } from './post-validator.js';
3
3
  import type { PipelineContext } from './context-propagation.js';
4
4
  export interface ProjectPaths {
@@ -15,6 +15,7 @@ export interface StageResult {
15
15
  postValidation?: PostValidationResult;
16
16
  lastAgentOutput?: unknown;
17
17
  toolCalls?: ToolCall[];
18
+ tokenUsage?: TokenUsage;
18
19
  tokensDelta?: number;
19
20
  toolCallsDelta?: number;
20
21
  }
@@ -23,6 +24,7 @@ export interface GroupResult {
23
24
  stageRuns: StageRun[];
24
25
  stagesExecuted: number;
25
26
  context: PipelineContext;
27
+ totalTokenUsage?: TokenUsage;
26
28
  totalTokensDelta: number;
27
29
  totalToolCallsDelta: number;
28
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/pipeline/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACpF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY,CAQpE;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,eAAe,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;CAC7B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/pipeline/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAChG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY,CAQpE;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,eAAe,CAAC;IACzB,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;CAC7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"direct-engine-spawner.d.ts","sourceRoot":"","sources":["../../src/spawners/direct-engine-spawner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAe,MAAM,8BAA8B,CAAC;AACtG,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAwB,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAEvE,qBAAa,mBAAoB,YAAW,UAAU;IAGxC,OAAO,CAAC,YAAY;IAAgB,OAAO,CAAC,MAAM,CAAC;IAF/D,OAAO,CAAC,YAAY,CAAK;gBAEL,YAAY,EAAE,YAAY,EAAU,MAAM,CAAC,EAAE,YAAY,YAAA;IAEvE,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;CA4B9D"}
1
+ {"version":3,"file":"direct-engine-spawner.d.ts","sourceRoot":"","sources":["../../src/spawners/direct-engine-spawner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAe,MAAM,8BAA8B,CAAC;AAGtG,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAwB,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAEvE,qBAAa,mBAAoB,YAAW,UAAU;IAGxC,OAAO,CAAC,YAAY;IAAgB,OAAO,CAAC,MAAM,CAAC;IAF/D,OAAO,CAAC,YAAY,CAAK;gBAEL,YAAY,EAAE,YAAY,EAAU,MAAM,CAAC,EAAE,YAAY,YAAA;IAEvE,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;CAkD9D"}
@@ -1,3 +1,4 @@
1
+ import { sumTokenUsage } from '@studio-foundation/contracts';
1
2
  import { PipelineEngine } from '../engine.js';
2
3
  import { createTaggingAdapter } from '../events.js';
3
4
  export class DirectEngineSpawner {
@@ -9,6 +10,23 @@ export class DirectEngineSpawner {
9
10
  this.events = events;
10
11
  }
11
12
  async spawnAndWait(config) {
13
+ // Per-spawn overrides — today only a substituted provider registry, set by a
14
+ // `batch:` map stage so this child's LLM calls park in the parent's batch
15
+ // window. The cast is the price of contracts staying a leaf (INV-04): the
16
+ // registry type lives in runner, so SpawnOverrides can only name it as
17
+ // `unknown`. A remote spawner ignores overrides entirely — a batch window is
18
+ // a this-process object.
19
+ //
20
+ // The override rides on the child's own spawner too, so a nested `call`/`map`
21
+ // inside the item batches with it rather than silently dropping back to
22
+ // full-price single calls.
23
+ const overrideRegistry = config.overrides?.providerRegistry;
24
+ const engineConfig = overrideRegistry
25
+ ? { ...this.engineConfig, providerRegistry: overrideRegistry }
26
+ : this.engineConfig;
27
+ const spawner = overrideRegistry
28
+ ? new DirectEngineSpawner(engineConfig, this.events)
29
+ : this;
12
30
  // Hand the spawner down: without it a child engine cannot run `call`/`map`
13
31
  // stages of its own, capping nesting at depth 1 while maxDepth promises 3
14
32
  // (STU-615). The orchestrators' depth guard is the recursion limit.
@@ -19,7 +37,7 @@ export class DirectEngineSpawner {
19
37
  const childEvents = this.events
20
38
  ? createTaggingAdapter(this.events, { depth: config.depth, childId: `d${config.depth}#${this.childCounter++}` })
21
39
  : undefined;
22
- const child = new PipelineEngine({ ...this.engineConfig, spawner: this }, childEvents);
40
+ const child = new PipelineEngine({ ...engineConfig, spawner }, childEvents);
23
41
  const result = await child.run({
24
42
  pipeline: config.pipeline,
25
43
  input: config.input,
@@ -31,7 +49,10 @@ export class DirectEngineSpawner {
31
49
  }
32
50
  const lastStage = [...result.stages].reverse().find(s => s.status === 'success');
33
51
  const output = lastStage?.output ?? null;
34
- return { run_id: result.id, status: result.status, output };
52
+ // Roll the child's per-stage usage up into one number for the caller, so a
53
+ // parent's `map`/`call` stage can report what the fan-out actually spent.
54
+ const token_usage = sumTokenUsage(result.stages.map(s => s.token_usage));
55
+ return { run_id: result.id, status: result.status, output, ...(token_usage ? { token_usage } : {}) };
35
56
  }
36
57
  }
37
58
  //# sourceMappingURL=direct-engine-spawner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"direct-engine-spawner.js","sourceRoot":"","sources":["../../src/spawners/direct-engine-spawner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAqB,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAqB,MAAM,cAAc,CAAC;AAEvE,MAAM,OAAO,mBAAmB;IAGV;IAAoC;IAFhD,YAAY,GAAG,CAAC,CAAC;IAEzB,YAAoB,YAA0B,EAAU,MAAqB;QAAzD,iBAAY,GAAZ,YAAY,CAAc;QAAU,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEjF,KAAK,CAAC,YAAY,CAAC,MAAmB;QACpC,2EAA2E;QAC3E,0EAA0E;QAC1E,oEAAoE;QACpE,EAAE;QACF,sEAAsE;QACtE,qEAAqE;QACrE,4CAA4C;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM;YAC7B,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,CAAC;YAChH,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,KAAK,GAAG,IAAI,cAAc,CAAC,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;QACvF,MAAM,MAAM,GAAgB,MAAM,KAAK,CAAC,GAAG,CAAC;YAC1C,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAChG,MAAM,IAAI,KAAK,CAAC,aAAa,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;QACjF,MAAM,MAAM,GAAI,SAA8C,EAAE,MAAM,IAAI,IAAI,CAAC;QAE/E,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAC9D,CAAC;CACF"}
1
+ {"version":3,"file":"direct-engine-spawner.js","sourceRoot":"","sources":["../../src/spawners/direct-engine-spawner.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@studio-foundation/engine",
3
- "version": "0.13.0",
3
+ "version": "0.15.0",
4
4
  "description": "Pipeline orchestration, state machine, and lifecycle hooks for Studio",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -28,9 +28,9 @@
28
28
  "dependencies": {
29
29
  "js-yaml": "^4.1.0",
30
30
  "pg": "^8.19.0",
31
- "@studio-foundation/ralph": "0.13.0",
32
- "@studio-foundation/runner": "0.13.0",
33
- "@studio-foundation/contracts": "0.13.0"
31
+ "@studio-foundation/contracts": "0.15.0",
32
+ "@studio-foundation/ralph": "0.15.0",
33
+ "@studio-foundation/runner": "0.15.0"
34
34
  },
35
35
  "devDependencies": {
36
36
  "@types/js-yaml": "^4.0.9",
@@ -1,10 +0,0 @@
1
- export interface RepoResolveOptions {
2
- repoPathOverride?: string;
3
- repoUrl?: string;
4
- rawProjectsDir?: string;
5
- pipelineName: string;
6
- branch?: string;
7
- }
8
- export declare function cloneRepo(repoUrl: string, projectsDir: string, pipelineName: string, branch?: string): Promise<string>;
9
- export declare function resolveRepoPath(options: RepoResolveOptions): Promise<string>;
10
- //# sourceMappingURL=repo-resolver.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repo-resolver.d.ts","sourceRoot":"","sources":["../src/repo-resolver.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,SAAS,CAC7B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,CAqBjB;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAmBlF"}
@@ -1,39 +0,0 @@
1
- import { execSync } from 'node:child_process';
2
- import { mkdir } from 'node:fs/promises';
3
- import { resolve, join } from 'node:path';
4
- import { homedir } from 'node:os';
5
- export async function cloneRepo(repoUrl, projectsDir, pipelineName, branch) {
6
- await mkdir(projectsDir, { recursive: true });
7
- const timestamp = new Date().toISOString()
8
- .replace(/:/g, 'h')
9
- .replace(/\..+$/, '')
10
- .replace('T', 'T');
11
- const dirName = `${pipelineName}-${timestamp}`;
12
- const clonePath = join(projectsDir, dirName);
13
- const branchArg = branch ? `--branch ${branch}` : '';
14
- const cmd = `git clone --depth 1 ${branchArg} ${repoUrl} ${clonePath}`;
15
- try {
16
- execSync(cmd, { stdio: 'pipe' });
17
- }
18
- catch (error) {
19
- const msg = error instanceof Error ? error.message : String(error);
20
- throw new Error(`Failed to clone ${repoUrl}: ${msg}`, { cause: error });
21
- }
22
- return clonePath;
23
- }
24
- export async function resolveRepoPath(options) {
25
- const { repoPathOverride, repoUrl, rawProjectsDir, pipelineName, branch } = options;
26
- if (repoPathOverride) {
27
- return resolve(repoPathOverride);
28
- }
29
- if (repoUrl) {
30
- const rawDir = rawProjectsDir || process.env['STUDIO_PROJECTS_DIR'];
31
- const projectsDir = rawDir?.replace(/^~/, homedir());
32
- if (!projectsDir) {
33
- throw new Error('STUDIO_PROJECTS_DIR is not set. Set it in config.yaml paths.projects_dir or as an environment variable.');
34
- }
35
- return cloneRepo(repoUrl, projectsDir, pipelineName, branch);
36
- }
37
- return '.';
38
- }
39
- //# sourceMappingURL=repo-resolver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repo-resolver.js","sourceRoot":"","sources":["../src/repo-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAUlC,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,OAAe,EACf,WAAmB,EACnB,YAAoB,EACpB,MAAe;IAEf,MAAM,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9C,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACvC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;SAClB,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;SACpB,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACrB,MAAM,OAAO,GAAG,GAAG,YAAY,IAAI,SAAS,EAAE,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAE7C,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,MAAM,GAAG,GAAG,uBAAuB,SAAS,IAAI,OAAO,IAAI,SAAS,EAAE,CAAC;IAEvE,IAAI,CAAC;QACH,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnE,MAAM,IAAI,KAAK,CAAC,mBAAmB,OAAO,KAAK,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAA2B;IAC/D,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAEpF,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,yGAAyG,CAC1G,CAAC;QACJ,CAAC;QACD,OAAO,SAAS,CAAC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}