@fractary/faber 2.4.39 → 2.4.40
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.
- package/dist/cli/commands/logs.d.ts.map +1 -1
- package/dist/cli/commands/logs.js.map +1 -1
- package/dist/cli/commands/repo.d.ts.map +1 -1
- package/dist/cli/commands/repo.js.map +1 -1
- package/dist/cli/commands/spec.d.ts.map +1 -1
- package/dist/cli/commands/spec.js.map +1 -1
- package/dist/cli/commands/work.d.ts.map +1 -1
- package/dist/cli/commands/work.js.map +1 -1
- package/dist/cli/commands/workflow.d.ts.map +1 -1
- package/dist/cli/commands/workflow.js.map +1 -1
- package/dist/cli/index.js +5 -5
- package/dist/executors/cli-entry.d.ts +25 -0
- package/dist/executors/cli-entry.d.ts.map +1 -0
- package/dist/executors/cli-entry.js +86 -0
- package/dist/executors/cli-entry.js.map +1 -0
- package/dist/executors/index.d.ts +19 -0
- package/dist/executors/index.d.ts.map +1 -0
- package/dist/executors/index.js +22 -0
- package/dist/executors/index.js.map +1 -0
- package/dist/executors/providers/claude.d.ts +20 -0
- package/dist/executors/providers/claude.d.ts.map +1 -0
- package/dist/executors/providers/claude.js +123 -0
- package/dist/executors/providers/claude.js.map +1 -0
- package/dist/executors/providers/http.d.ts +21 -0
- package/dist/executors/providers/http.d.ts.map +1 -0
- package/dist/executors/providers/http.js +118 -0
- package/dist/executors/providers/http.js.map +1 -0
- package/dist/executors/providers/index.d.ts +10 -0
- package/dist/executors/providers/index.d.ts.map +1 -0
- package/dist/executors/providers/index.js +10 -0
- package/dist/executors/providers/index.js.map +1 -0
- package/dist/executors/providers/openai-compatible.d.ts +21 -0
- package/dist/executors/providers/openai-compatible.d.ts.map +1 -0
- package/dist/executors/providers/openai-compatible.js +136 -0
- package/dist/executors/providers/openai-compatible.js.map +1 -0
- package/dist/executors/providers/openai.d.ts +20 -0
- package/dist/executors/providers/openai.d.ts.map +1 -0
- package/dist/executors/providers/openai.js +121 -0
- package/dist/executors/providers/openai.js.map +1 -0
- package/dist/executors/registry.d.ts +72 -0
- package/dist/executors/registry.d.ts.map +1 -0
- package/dist/executors/registry.js +146 -0
- package/dist/executors/registry.js.map +1 -0
- package/dist/executors/types.d.ts +148 -0
- package/dist/executors/types.d.ts.map +1 -0
- package/dist/executors/types.js +9 -0
- package/dist/executors/types.js.map +1 -0
- package/dist/executors/workflow-executor.d.ts +92 -0
- package/dist/executors/workflow-executor.d.ts.map +1 -0
- package/dist/executors/workflow-executor.js +176 -0
- package/dist/executors/workflow-executor.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/workflow/__tests__/resolver.test.js +20 -20
- package/dist/workflow/resolver.d.ts +71 -2
- package/dist/workflow/resolver.d.ts.map +1 -1
- package/dist/workflow/resolver.js +140 -12
- package/dist/workflow/resolver.js.map +1 -1
- package/dist/workflows/registry.d.ts.map +1 -1
- package/dist/workflows/registry.js +48 -17
- package/dist/workflows/registry.js.map +1 -1
- package/package.json +4 -3
|
@@ -148,7 +148,7 @@ describe('WorkflowResolver', () => {
|
|
|
148
148
|
it('should prepend ancestor global context to child global context', async () => {
|
|
149
149
|
createWorkflow('project', 'child', {
|
|
150
150
|
id: 'child',
|
|
151
|
-
extends: 'faber@fractary-faber
|
|
151
|
+
extends: 'faber@fractary-faber-base',
|
|
152
152
|
context: {
|
|
153
153
|
global: 'Child global context',
|
|
154
154
|
},
|
|
@@ -159,7 +159,7 @@ describe('WorkflowResolver', () => {
|
|
|
159
159
|
it('should prepend ancestor phase context to child phase context', async () => {
|
|
160
160
|
createWorkflow('project', 'child-phase', {
|
|
161
161
|
id: 'child-phase',
|
|
162
|
-
extends: 'faber@fractary-faber
|
|
162
|
+
extends: 'faber@fractary-faber-base',
|
|
163
163
|
context: {
|
|
164
164
|
phases: {
|
|
165
165
|
build: 'Child build context',
|
|
@@ -174,7 +174,7 @@ describe('WorkflowResolver', () => {
|
|
|
174
174
|
it('should override ancestor step context with child step context', async () => {
|
|
175
175
|
createWorkflow('project', 'child-step', {
|
|
176
176
|
id: 'child-step',
|
|
177
|
-
extends: 'faber@fractary-faber
|
|
177
|
+
extends: 'faber@fractary-faber-base',
|
|
178
178
|
context: {
|
|
179
179
|
steps: {
|
|
180
180
|
implement: 'Child implement step (overrides base)',
|
|
@@ -188,7 +188,7 @@ describe('WorkflowResolver', () => {
|
|
|
188
188
|
it('should merge step contexts when different step IDs', async () => {
|
|
189
189
|
createWorkflow('project', 'child-new-step', {
|
|
190
190
|
id: 'child-new-step',
|
|
191
|
-
extends: 'faber@fractary-faber
|
|
191
|
+
extends: 'faber@fractary-faber-base',
|
|
192
192
|
context: {
|
|
193
193
|
steps: {
|
|
194
194
|
'new-step': 'Child new step context',
|
|
@@ -203,7 +203,7 @@ describe('WorkflowResolver', () => {
|
|
|
203
203
|
it('should inherit ancestor context when child has none', async () => {
|
|
204
204
|
createWorkflow('project', 'no-child-context', {
|
|
205
205
|
id: 'no-child-context',
|
|
206
|
-
extends: 'faber@fractary-faber
|
|
206
|
+
extends: 'faber@fractary-faber-base',
|
|
207
207
|
// No context defined
|
|
208
208
|
});
|
|
209
209
|
const resolved = await resolver.resolveWorkflow('no-child-context');
|
|
@@ -218,7 +218,7 @@ describe('WorkflowResolver', () => {
|
|
|
218
218
|
});
|
|
219
219
|
createWorkflow('project', 'child-only-context', {
|
|
220
220
|
id: 'child-only-context',
|
|
221
|
-
extends: 'faber@fractary-faber
|
|
221
|
+
extends: 'faber@fractary-faber-no-ctx-base',
|
|
222
222
|
context: {
|
|
223
223
|
global: 'Child only global',
|
|
224
224
|
},
|
|
@@ -246,7 +246,7 @@ describe('WorkflowResolver', () => {
|
|
|
246
246
|
// Create parent extending core
|
|
247
247
|
createWorkflow('fractary-faber', 'default', {
|
|
248
248
|
id: 'default',
|
|
249
|
-
extends: 'faber@fractary-faber
|
|
249
|
+
extends: 'faber@fractary-faber-core',
|
|
250
250
|
context: {
|
|
251
251
|
global: 'Default global',
|
|
252
252
|
phases: {
|
|
@@ -262,7 +262,7 @@ describe('WorkflowResolver', () => {
|
|
|
262
262
|
it('should accumulate global context from all ancestors (grandparent → parent → child)', async () => {
|
|
263
263
|
createWorkflow('project', 'grandchild', {
|
|
264
264
|
id: 'grandchild',
|
|
265
|
-
extends: 'faber@fractary-faber
|
|
265
|
+
extends: 'faber@fractary-faber-default',
|
|
266
266
|
context: {
|
|
267
267
|
global: 'Grandchild global',
|
|
268
268
|
},
|
|
@@ -273,7 +273,7 @@ describe('WorkflowResolver', () => {
|
|
|
273
273
|
it('should accumulate phase context through inheritance chain', async () => {
|
|
274
274
|
createWorkflow('project', 'grandchild-phase', {
|
|
275
275
|
id: 'grandchild-phase',
|
|
276
|
-
extends: 'faber@fractary-faber
|
|
276
|
+
extends: 'faber@fractary-faber-default',
|
|
277
277
|
context: {
|
|
278
278
|
phases: {
|
|
279
279
|
build: 'Grandchild build',
|
|
@@ -291,7 +291,7 @@ describe('WorkflowResolver', () => {
|
|
|
291
291
|
it('should resolve step contexts with proper override chain', async () => {
|
|
292
292
|
createWorkflow('project', 'grandchild-step', {
|
|
293
293
|
id: 'grandchild-step',
|
|
294
|
-
extends: 'faber@fractary-faber
|
|
294
|
+
extends: 'faber@fractary-faber-default',
|
|
295
295
|
context: {
|
|
296
296
|
steps: {
|
|
297
297
|
'core-step': 'Grandchild overrides core step',
|
|
@@ -310,13 +310,13 @@ describe('WorkflowResolver', () => {
|
|
|
310
310
|
it('should preserve inheritance chain in resolved workflow', async () => {
|
|
311
311
|
createWorkflow('project', 'grandchild-chain', {
|
|
312
312
|
id: 'grandchild-chain',
|
|
313
|
-
extends: 'faber@fractary-faber
|
|
313
|
+
extends: 'faber@fractary-faber-default',
|
|
314
314
|
});
|
|
315
315
|
const resolved = await resolver.resolveWorkflow('grandchild-chain');
|
|
316
316
|
expect(resolved.inheritance_chain).toEqual([
|
|
317
317
|
'grandchild-chain',
|
|
318
|
-
'faber@fractary-faber
|
|
319
|
-
'faber@fractary-faber
|
|
318
|
+
'faber@fractary-faber-default',
|
|
319
|
+
'faber@fractary-faber-core',
|
|
320
320
|
]);
|
|
321
321
|
});
|
|
322
322
|
});
|
|
@@ -405,14 +405,14 @@ describe('WorkflowResolver', () => {
|
|
|
405
405
|
});
|
|
406
406
|
createWorkflow('project', 'extends-legacy', {
|
|
407
407
|
id: 'extends-legacy',
|
|
408
|
-
extends: 'faber@fractary-faber
|
|
408
|
+
extends: 'faber@fractary-faber-legacy',
|
|
409
409
|
context: {
|
|
410
410
|
global: 'New context on child',
|
|
411
411
|
},
|
|
412
412
|
});
|
|
413
413
|
const resolved = await resolver.resolveWorkflow('extends-legacy');
|
|
414
414
|
expect(resolved.context?.global).toBe('New context on child');
|
|
415
|
-
expect(resolved.inheritance_chain).toEqual(['extends-legacy', 'faber@fractary-faber
|
|
415
|
+
expect(resolved.inheritance_chain).toEqual(['extends-legacy', 'faber@fractary-faber-legacy']);
|
|
416
416
|
});
|
|
417
417
|
it('should preserve other workflow properties alongside context', async () => {
|
|
418
418
|
createWorkflow('project', 'full-workflow', {
|
|
@@ -492,15 +492,15 @@ describe('WorkflowResolver', () => {
|
|
|
492
492
|
fs.writeFileSync(path.join(basePath, `${name}.json`), JSON.stringify(fullConfig, null, 2));
|
|
493
493
|
}
|
|
494
494
|
describe('Explicit plugin@marketplace:workflow Format', () => {
|
|
495
|
-
it('should resolve explicit format: faber@fractary-faber
|
|
495
|
+
it('should resolve explicit format: faber@fractary-faber-default', async () => {
|
|
496
496
|
createExplicitWorkflow('fractary-faber', 'faber', 'default', {
|
|
497
497
|
id: 'default',
|
|
498
498
|
description: 'Default workflow from explicit format',
|
|
499
499
|
});
|
|
500
|
-
const resolved = await resolver.resolveWorkflow('faber@fractary-faber
|
|
500
|
+
const resolved = await resolver.resolveWorkflow('faber@fractary-faber-default');
|
|
501
501
|
expect(resolved.id).toBe('default');
|
|
502
502
|
expect(resolved.description).toBe('Default workflow from explicit format');
|
|
503
|
-
expect(resolved.inheritance_chain).toEqual(['faber@fractary-faber
|
|
503
|
+
expect(resolved.inheritance_chain).toEqual(['faber@fractary-faber-default']);
|
|
504
504
|
});
|
|
505
505
|
it('should resolve explicit format with different marketplace', async () => {
|
|
506
506
|
createExplicitWorkflow('fractary-faber-software', 'faber-software', 'software-development', {
|
|
@@ -523,7 +523,7 @@ describe('WorkflowResolver', () => {
|
|
|
523
523
|
// Create child extending parent using explicit format
|
|
524
524
|
createWorkflow('project', 'my-workflow', {
|
|
525
525
|
id: 'my-workflow',
|
|
526
|
-
extends: 'faber@fractary-faber
|
|
526
|
+
extends: 'faber@fractary-faber-core',
|
|
527
527
|
description: 'My custom workflow',
|
|
528
528
|
context: {
|
|
529
529
|
global: 'My custom context',
|
|
@@ -531,7 +531,7 @@ describe('WorkflowResolver', () => {
|
|
|
531
531
|
});
|
|
532
532
|
const resolved = await resolver.resolveWorkflow('my-workflow');
|
|
533
533
|
expect(resolved.id).toBe('my-workflow');
|
|
534
|
-
expect(resolved.inheritance_chain).toEqual(['my-workflow', 'faber@fractary-faber
|
|
534
|
+
expect(resolved.inheritance_chain).toEqual(['my-workflow', 'faber@fractary-faber-core']);
|
|
535
535
|
expect(resolved.context?.global).toBe('Core global context\n\nMy custom context');
|
|
536
536
|
});
|
|
537
537
|
it('should throw WorkflowNotFoundError for non-existent explicit reference', async () => {
|
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
* @fractary/faber - Workflow Resolver
|
|
3
3
|
*
|
|
4
4
|
* Handles workflow inheritance resolution with deterministic merge behavior.
|
|
5
|
-
* This is the SDK equivalent of plugins/faber/skills/faber-config/scripts/merge-workflows.sh
|
|
5
|
+
* This is the SDK equivalent of plugins/faber/skills/fractary-faber-faber-config/scripts/merge-workflows.sh
|
|
6
6
|
*
|
|
7
7
|
* Centralized workflow resolution ensures consistent behavior across CLI, MCP, and agents.
|
|
8
8
|
*/
|
|
9
|
+
import type { StepExecutorConfig } from '../executors/types.js';
|
|
9
10
|
/**
|
|
10
11
|
* Result handling configuration for steps.
|
|
11
12
|
* Defines behavior for different execution outcomes.
|
|
@@ -54,6 +55,13 @@ export interface WorkflowStep {
|
|
|
54
55
|
source?: string;
|
|
55
56
|
/** Position type (added during merge) */
|
|
56
57
|
position?: 'pre_step' | 'step' | 'post_step';
|
|
58
|
+
/**
|
|
59
|
+
* Executor configuration for this step.
|
|
60
|
+
* When specified, routes execution to the given provider/model instead of
|
|
61
|
+
* the default Claude Code direct execution.
|
|
62
|
+
* Config cascade: step.executor > phase_executors[phase] > workflow.executor > default
|
|
63
|
+
*/
|
|
64
|
+
executor?: StepExecutorConfig;
|
|
57
65
|
}
|
|
58
66
|
/**
|
|
59
67
|
* Phase definition in a workflow file
|
|
@@ -141,6 +149,18 @@ export interface WorkflowFileConfig {
|
|
|
141
149
|
context?: ContextOverlays;
|
|
142
150
|
/** Default result handling for all steps in all phases (workflow-level global default) */
|
|
143
151
|
result_handling?: StepResultHandling;
|
|
152
|
+
/**
|
|
153
|
+
* Default executor for all steps in this workflow.
|
|
154
|
+
* Steps without their own executor config inherit this.
|
|
155
|
+
* In inheritance, child workflow executor overrides parent.
|
|
156
|
+
*/
|
|
157
|
+
executor?: StepExecutorConfig;
|
|
158
|
+
/**
|
|
159
|
+
* Per-phase executor overrides.
|
|
160
|
+
* Steps in a phase without their own executor config use the phase executor.
|
|
161
|
+
* Cascade: step.executor > phase_executors[phase] > workflow.executor > default
|
|
162
|
+
*/
|
|
163
|
+
phase_executors?: Partial<Record<string, StepExecutorConfig>>;
|
|
144
164
|
}
|
|
145
165
|
/**
|
|
146
166
|
* Resolved (merged) workflow with inheritance applied
|
|
@@ -166,6 +186,10 @@ export interface ResolvedWorkflow {
|
|
|
166
186
|
context?: ContextOverlays;
|
|
167
187
|
/** Global result handling default for all steps */
|
|
168
188
|
result_handling?: StepResultHandling;
|
|
189
|
+
/** Default executor for all steps (child overrides parent in inheritance) */
|
|
190
|
+
executor?: StepExecutorConfig;
|
|
191
|
+
/** Per-phase executor overrides (child overrides parent in inheritance) */
|
|
192
|
+
phase_executors?: Partial<Record<string, StepExecutorConfig>>;
|
|
169
193
|
}
|
|
170
194
|
/**
|
|
171
195
|
* Resolved phase with merged steps
|
|
@@ -181,7 +205,19 @@ export interface ResolvedPhase {
|
|
|
181
205
|
result_handling?: StepResultHandling;
|
|
182
206
|
}
|
|
183
207
|
export interface WorkflowResolverOptions {
|
|
184
|
-
/**
|
|
208
|
+
/**
|
|
209
|
+
* Explicit path to bundled plugin workflows directory.
|
|
210
|
+
* Defaults to automatic discovery via __dirname (works in both Claude Code
|
|
211
|
+
* and pi installs without any environment variable configuration).
|
|
212
|
+
*/
|
|
213
|
+
bundledWorkflowsPath?: string;
|
|
214
|
+
/**
|
|
215
|
+
* Legacy Claude Code marketplace root.
|
|
216
|
+
* Only needed when using explicit `plugin@marketplace:workflow` references
|
|
217
|
+
* against a Claude marketplace install. Auto-detected from
|
|
218
|
+
* CLAUDE_MARKETPLACE_ROOT env var when set.
|
|
219
|
+
* @deprecated Prefer bundled workflow references resolved via __dirname.
|
|
220
|
+
*/
|
|
185
221
|
marketplaceRoot?: string;
|
|
186
222
|
/** Project root directory (default: process.cwd()) */
|
|
187
223
|
projectRoot?: string;
|
|
@@ -225,10 +261,37 @@ export declare class SSRFError extends Error {
|
|
|
225
261
|
* - post_steps: default.post_steps, then core.post_steps
|
|
226
262
|
*/
|
|
227
263
|
export declare class WorkflowResolver {
|
|
264
|
+
private bundledWorkflowsPath;
|
|
228
265
|
private marketplaceRoot;
|
|
229
266
|
private projectRoot;
|
|
230
267
|
private workflowCache;
|
|
231
268
|
constructor(options?: WorkflowResolverOptions);
|
|
269
|
+
/**
|
|
270
|
+
* Locate the directory containing workflows bundled with this npm package.
|
|
271
|
+
*
|
|
272
|
+
* After `npm run build`, TypeScript emits to dist/workflow/resolver.js.
|
|
273
|
+
* The prebuild script copies plugin workflows to sdk/js/workflows/, which
|
|
274
|
+
* lands at the package root (same level as dist/) in both the local build
|
|
275
|
+
* and the published npm tarball.
|
|
276
|
+
*
|
|
277
|
+
* Resolution path:
|
|
278
|
+
* dist/workflow/resolver.js → __dirname = dist/workflow/
|
|
279
|
+
* ../../workflows → <package-root>/workflows/
|
|
280
|
+
*
|
|
281
|
+
* Works identically whether the package is:
|
|
282
|
+
* - Installed from npm (node_modules/@fractary/faber/workflows/)
|
|
283
|
+
* - Built locally (sdk/js/workflows/)
|
|
284
|
+
* - Cloned by pi (~/.pi/agent/git/github.com/fractary/faber/sdk/js/workflows/)
|
|
285
|
+
*/
|
|
286
|
+
private findBundledWorkflowsPath;
|
|
287
|
+
/**
|
|
288
|
+
* Resolve the root directory for a cross-package workflow reference.
|
|
289
|
+
* Given a plugin name (e.g. "faber-cloud"), tries in priority order:
|
|
290
|
+
* 1. npm require resolution (@fractary/faber-cloud in node_modules)
|
|
291
|
+
* 2. Sibling in same node_modules/@fractary/ directory
|
|
292
|
+
* 3. Legacy Claude marketplace path (if marketplaceRoot is set)
|
|
293
|
+
*/
|
|
294
|
+
private resolveExternalPackageRoot;
|
|
232
295
|
/**
|
|
233
296
|
* Sanitize a path component to prevent path traversal attacks.
|
|
234
297
|
* Rejects components containing '..' or absolute path indicators.
|
|
@@ -306,6 +369,12 @@ export declare class WorkflowResolver {
|
|
|
306
369
|
* This ensures project-specific context (child) is most prominent.
|
|
307
370
|
*/
|
|
308
371
|
private mergeContextOverlays;
|
|
372
|
+
/**
|
|
373
|
+
* Merge executor configuration from the inheritance chain.
|
|
374
|
+
* Child executor config overrides parent (most specific wins).
|
|
375
|
+
* Phase executors merge: child phase overrides parent for the same phase.
|
|
376
|
+
*/
|
|
377
|
+
private mergeExecutorConfig;
|
|
309
378
|
/**
|
|
310
379
|
* Clear the workflow cache (useful for testing or reloading)
|
|
311
380
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/workflow/resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/workflow/resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @fractary/faber - Workflow Resolver
|
|
3
3
|
*
|
|
4
4
|
* Handles workflow inheritance resolution with deterministic merge behavior.
|
|
5
|
-
* This is the SDK equivalent of plugins/faber/skills/faber-config/scripts/merge-workflows.sh
|
|
5
|
+
* This is the SDK equivalent of plugins/faber/skills/fractary-faber-faber-config/scripts/merge-workflows.sh
|
|
6
6
|
*
|
|
7
7
|
* Centralized workflow resolution ensures consistent behavior across CLI, MCP, and agents.
|
|
8
8
|
*/
|
|
@@ -12,6 +12,13 @@ import * as fs from 'fs';
|
|
|
12
12
|
import * as os from 'os';
|
|
13
13
|
import * as path from 'path';
|
|
14
14
|
import { promisify } from 'util';
|
|
15
|
+
import { fileURLToPath } from 'url';
|
|
16
|
+
import { createRequire } from 'module';
|
|
17
|
+
// ESM-compatible equivalents of __filename / __dirname
|
|
18
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
19
|
+
const __dirname = path.dirname(__filename);
|
|
20
|
+
// ESM-compatible require() for resolving npm package mains
|
|
21
|
+
const _require = createRequire(import.meta.url);
|
|
15
22
|
/**
|
|
16
23
|
* Default result handling values (schema defaults).
|
|
17
24
|
*/
|
|
@@ -193,16 +200,89 @@ async function validateUrlSecurity(url) {
|
|
|
193
200
|
* - post_steps: default.post_steps, then core.post_steps
|
|
194
201
|
*/
|
|
195
202
|
export class WorkflowResolver {
|
|
203
|
+
bundledWorkflowsPath;
|
|
196
204
|
marketplaceRoot;
|
|
197
205
|
projectRoot;
|
|
198
206
|
workflowCache = new Map();
|
|
199
207
|
constructor(options = {}) {
|
|
200
|
-
this.
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
208
|
+
this.bundledWorkflowsPath = options.bundledWorkflowsPath || this.findBundledWorkflowsPath();
|
|
209
|
+
// marketplaceRoot kept for legacy Claude marketplace plugin@marketplace:workflow refs.
|
|
210
|
+
// Left as empty string when not configured so callers can check truthiness.
|
|
211
|
+
this.marketplaceRoot = options.marketplaceRoot || process.env['CLAUDE_MARKETPLACE_ROOT'] || '';
|
|
204
212
|
this.projectRoot = options.projectRoot || process.cwd();
|
|
205
213
|
}
|
|
214
|
+
/**
|
|
215
|
+
* Locate the directory containing workflows bundled with this npm package.
|
|
216
|
+
*
|
|
217
|
+
* After `npm run build`, TypeScript emits to dist/workflow/resolver.js.
|
|
218
|
+
* The prebuild script copies plugin workflows to sdk/js/workflows/, which
|
|
219
|
+
* lands at the package root (same level as dist/) in both the local build
|
|
220
|
+
* and the published npm tarball.
|
|
221
|
+
*
|
|
222
|
+
* Resolution path:
|
|
223
|
+
* dist/workflow/resolver.js → __dirname = dist/workflow/
|
|
224
|
+
* ../../workflows → <package-root>/workflows/
|
|
225
|
+
*
|
|
226
|
+
* Works identically whether the package is:
|
|
227
|
+
* - Installed from npm (node_modules/@fractary/faber/workflows/)
|
|
228
|
+
* - Built locally (sdk/js/workflows/)
|
|
229
|
+
* - Cloned by pi (~/.pi/agent/git/github.com/fractary/faber/sdk/js/workflows/)
|
|
230
|
+
*/
|
|
231
|
+
findBundledWorkflowsPath() {
|
|
232
|
+
const candidates = [
|
|
233
|
+
// Primary: dist/workflow/ → ../../workflows → <package-root>/workflows/
|
|
234
|
+
path.resolve(__dirname, '../../workflows'),
|
|
235
|
+
// Fallback for non-standard build layouts: try repo root plugins directly
|
|
236
|
+
path.resolve(__dirname, '../../../../plugins/faber/.fractary/faber/workflows'),
|
|
237
|
+
];
|
|
238
|
+
for (const c of candidates) {
|
|
239
|
+
if (fs.existsSync(c))
|
|
240
|
+
return c;
|
|
241
|
+
}
|
|
242
|
+
return candidates[0]; // caller gets WorkflowNotFoundError with the path shown
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Resolve the root directory for a cross-package workflow reference.
|
|
246
|
+
* Given a plugin name (e.g. "faber-cloud"), tries in priority order:
|
|
247
|
+
* 1. npm require resolution (@fractary/faber-cloud in node_modules)
|
|
248
|
+
* 2. Sibling in same node_modules/@fractary/ directory
|
|
249
|
+
* 3. Legacy Claude marketplace path (if marketplaceRoot is set)
|
|
250
|
+
*/
|
|
251
|
+
resolveExternalPackageRoot(plugin, marketplace) {
|
|
252
|
+
// 1. npm: resolve @fractary/<plugin> package main, then walk up to package root
|
|
253
|
+
try {
|
|
254
|
+
// require.resolve finds the package's main entry in node_modules
|
|
255
|
+
const pkgMain = _require.resolve(`@fractary/${plugin}`);
|
|
256
|
+
// pkgMain = .../node_modules/@fractary/faber-cloud/dist/index.js
|
|
257
|
+
// package root = dirname(pkgMain) up past dist/ to package root
|
|
258
|
+
// Walk up until we find a package.json to confirm we're at the root
|
|
259
|
+
let dir = path.dirname(pkgMain);
|
|
260
|
+
for (let i = 0; i < 5; i++) {
|
|
261
|
+
if (fs.existsSync(path.join(dir, 'package.json'))) {
|
|
262
|
+
const pkg = JSON.parse(fs.readFileSync(path.join(dir, 'package.json'), 'utf-8'));
|
|
263
|
+
if (pkg.name === `@fractary/${plugin}`)
|
|
264
|
+
return dir;
|
|
265
|
+
}
|
|
266
|
+
dir = path.dirname(dir);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
catch {
|
|
270
|
+
// @fractary/<plugin> not installed as npm dep — try other paths
|
|
271
|
+
}
|
|
272
|
+
// 2. Sibling in same @fractary/ scope directory
|
|
273
|
+
// __dirname = dist/workflow/ inside @fractary/faber
|
|
274
|
+
// @fractary/faber-cloud would be at ../../../faber-cloud/ (sibling)
|
|
275
|
+
const siblingNpm = path.resolve(__dirname, `../../../${plugin}`);
|
|
276
|
+
if (fs.existsSync(siblingNpm))
|
|
277
|
+
return siblingNpm;
|
|
278
|
+
// 3. Legacy Claude marketplace
|
|
279
|
+
if (this.marketplaceRoot) {
|
|
280
|
+
const claudePath = path.join(this.marketplaceRoot, marketplace, 'plugins', plugin);
|
|
281
|
+
if (fs.existsSync(claudePath))
|
|
282
|
+
return claudePath;
|
|
283
|
+
}
|
|
284
|
+
return null;
|
|
285
|
+
}
|
|
206
286
|
/**
|
|
207
287
|
* Sanitize a path component to prevent path traversal attacks.
|
|
208
288
|
* Rejects components containing '..' or absolute path indicators.
|
|
@@ -262,6 +342,14 @@ export class WorkflowResolver {
|
|
|
262
342
|
if (childWorkflow.result_handling) {
|
|
263
343
|
resolved.result_handling = childWorkflow.result_handling;
|
|
264
344
|
}
|
|
345
|
+
// Include executor config (child overrides parent in inheritance)
|
|
346
|
+
const mergedExecutor = this.mergeExecutorConfig(chain);
|
|
347
|
+
if (mergedExecutor.executor) {
|
|
348
|
+
resolved.executor = mergedExecutor.executor;
|
|
349
|
+
}
|
|
350
|
+
if (mergedExecutor.phase_executors && Object.keys(mergedExecutor.phase_executors).length > 0) {
|
|
351
|
+
resolved.phase_executors = mergedExecutor.phase_executors;
|
|
352
|
+
}
|
|
265
353
|
return resolved;
|
|
266
354
|
}
|
|
267
355
|
/**
|
|
@@ -304,12 +392,21 @@ export class WorkflowResolver {
|
|
|
304
392
|
const filePath = pathOrUrl;
|
|
305
393
|
const searchedPaths = [filePath];
|
|
306
394
|
if (!fs.existsSync(filePath)) {
|
|
307
|
-
// Fallback: if project-local (no @ or :), try plugin defaults
|
|
395
|
+
// Fallback: if project-local (no @ or :), try bundled plugin defaults
|
|
308
396
|
if (!workflowId.includes('@') && !workflowId.includes(':')) {
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
397
|
+
// Primary: bundled workflows located via __dirname (works in Claude and pi)
|
|
398
|
+
const bundledPath = path.join(this.bundledWorkflowsPath, `${workflowId}.json`);
|
|
399
|
+
searchedPaths.push(bundledPath);
|
|
400
|
+
if (fs.existsSync(bundledPath)) {
|
|
401
|
+
return this.loadAndCacheWorkflow(workflowId, bundledPath);
|
|
402
|
+
}
|
|
403
|
+
// Legacy: Claude marketplace install (only when CLAUDE_MARKETPLACE_ROOT is set)
|
|
404
|
+
if (this.marketplaceRoot) {
|
|
405
|
+
const legacyPath = path.join(this.marketplaceRoot, 'fractary-faber/plugins/faber/.fractary/faber/workflows', `${workflowId}.json`);
|
|
406
|
+
searchedPaths.push(legacyPath);
|
|
407
|
+
if (fs.existsSync(legacyPath)) {
|
|
408
|
+
return this.loadAndCacheWorkflow(workflowId, legacyPath);
|
|
409
|
+
}
|
|
313
410
|
}
|
|
314
411
|
}
|
|
315
412
|
throw new WorkflowNotFoundError(workflowId, searchedPaths);
|
|
@@ -342,7 +439,7 @@ export class WorkflowResolver {
|
|
|
342
439
|
async fetchWorkflowFromUrl(workflowId, url) {
|
|
343
440
|
// SSRF Protection: Validate URL before fetching
|
|
344
441
|
await validateUrlSecurity(url);
|
|
345
|
-
const cacheDir = path.join(
|
|
442
|
+
const cacheDir = path.join(process.env['XDG_CACHE_HOME'] || path.join(os.homedir(), '.cache'), 'fractary', 'workflows');
|
|
346
443
|
const cacheFile = path.join(cacheDir, `${this.hashString(url)}.json`);
|
|
347
444
|
// Check cache (1 hour TTL)
|
|
348
445
|
if (fs.existsSync(cacheFile)) {
|
|
@@ -482,7 +579,18 @@ export class WorkflowResolver {
|
|
|
482
579
|
this.sanitizePathComponent(plugin, 'plugin');
|
|
483
580
|
this.sanitizePathComponent(marketplace, 'marketplace');
|
|
484
581
|
this.sanitizePathComponent(workflow, 'workflow');
|
|
485
|
-
|
|
582
|
+
// Resolve the external package root (npm, sibling, or legacy marketplace)
|
|
583
|
+
const pkgRoot = this.resolveExternalPackageRoot(plugin, marketplace);
|
|
584
|
+
if (pkgRoot) {
|
|
585
|
+
// Package root found: workflows are at <root>/workflows/ (bundled)
|
|
586
|
+
// or at the legacy location <root>/plugins/<plugin>/.fractary/faber/workflows/
|
|
587
|
+
const bundled = path.join(pkgRoot, 'workflows', `${workflow}.json`);
|
|
588
|
+
if (fs.existsSync(bundled))
|
|
589
|
+
return bundled;
|
|
590
|
+
return path.join(pkgRoot, 'plugins', plugin, '.fractary/faber/workflows', `${workflow}.json`);
|
|
591
|
+
}
|
|
592
|
+
// Nothing found — return a descriptive path for the error message
|
|
593
|
+
return path.join(`[unresolved:@fractary/${plugin}]`, 'workflows', `${workflow}.json`);
|
|
486
594
|
}
|
|
487
595
|
// Format 3: Project-local (no @ symbol)
|
|
488
596
|
this.sanitizePathComponent(workflowId, 'workflow');
|
|
@@ -648,6 +756,26 @@ export class WorkflowResolver {
|
|
|
648
756
|
}
|
|
649
757
|
return result;
|
|
650
758
|
}
|
|
759
|
+
/**
|
|
760
|
+
* Merge executor configuration from the inheritance chain.
|
|
761
|
+
* Child executor config overrides parent (most specific wins).
|
|
762
|
+
* Phase executors merge: child phase overrides parent for the same phase.
|
|
763
|
+
*/
|
|
764
|
+
mergeExecutorConfig(chain) {
|
|
765
|
+
let executor;
|
|
766
|
+
let phase_executors = {};
|
|
767
|
+
// Iterate root→child (reversed chain) so child overrides parent
|
|
768
|
+
for (let i = chain.length - 1; i >= 0; i--) {
|
|
769
|
+
const workflow = this.workflowCache.get(chain[i]);
|
|
770
|
+
if (workflow.executor) {
|
|
771
|
+
executor = workflow.executor;
|
|
772
|
+
}
|
|
773
|
+
if (workflow.phase_executors) {
|
|
774
|
+
phase_executors = { ...phase_executors, ...workflow.phase_executors };
|
|
775
|
+
}
|
|
776
|
+
}
|
|
777
|
+
return { executor, phase_executors };
|
|
778
|
+
}
|
|
651
779
|
/**
|
|
652
780
|
* Clear the workflow cache (useful for testing or reloading)
|
|
653
781
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/workflow/resolver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/workflow/resolver.ts"],"names":[],"mappings":"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"}
|