maskweaver 0.7.26 → 0.7.28

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 (35) hide show
  1. package/assets/agents/squad-operator.md +56 -16
  2. package/assets/commands/weave-craft.md +189 -92
  3. package/assets/commands/weave-design.md +59 -31
  4. package/dist/plugin/index.d.ts.map +1 -1
  5. package/dist/plugin/index.js +73 -14
  6. package/dist/plugin/index.js.map +1 -1
  7. package/dist/plugin/tools/squad.d.ts +1 -0
  8. package/dist/plugin/tools/squad.d.ts.map +1 -1
  9. package/dist/plugin/tools/squad.js +49 -2
  10. package/dist/plugin/tools/squad.js.map +1 -1
  11. package/dist/plugin/tools/weave.js +8 -12
  12. package/dist/plugin/tools/weave.js.map +1 -1
  13. package/dist/shared/config.d.ts +46 -1
  14. package/dist/shared/config.d.ts.map +1 -1
  15. package/dist/shared/config.js +34 -0
  16. package/dist/shared/config.js.map +1 -1
  17. package/dist/shared/model-registry.d.ts +126 -0
  18. package/dist/shared/model-registry.d.ts.map +1 -0
  19. package/dist/shared/model-registry.js +318 -0
  20. package/dist/shared/model-registry.js.map +1 -0
  21. package/dist/weave/bridge.d.ts +61 -0
  22. package/dist/weave/bridge.d.ts.map +1 -0
  23. package/dist/weave/bridge.js +143 -0
  24. package/dist/weave/bridge.js.map +1 -0
  25. package/dist/weave/orchestrator.d.ts +59 -1
  26. package/dist/weave/orchestrator.d.ts.map +1 -1
  27. package/dist/weave/orchestrator.js +228 -0
  28. package/dist/weave/orchestrator.js.map +1 -1
  29. package/dist/weave/stages/execute.d.ts +35 -7
  30. package/dist/weave/stages/execute.d.ts.map +1 -1
  31. package/dist/weave/stages/execute.js +136 -267
  32. package/dist/weave/stages/execute.js.map +1 -1
  33. package/dist/weave/types.d.ts +20 -0
  34. package/dist/weave/types.d.ts.map +1 -1
  35. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/weave/bridge.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,8 @@
4
4
  * Automatically selects expert masks based on task context.
5
5
  * This is the "brain" that decides which persona to wear for each task.
6
6
  */
7
- import type { WeaveTask, WeaveConfig } from './types.js';
7
+ import type { WeaveTask, WeaveConfig, AgentTier, TaskComplexity, PhaseExecutionPlan } from './types.js';
8
+ import type { WeavePhase } from './types.js';
8
9
  export type TaskType = 'architecture' | 'testing' | 'frontend' | 'backend' | 'performance' | 'database' | 'ml' | 'devops' | 'general';
9
10
  export declare class WeaveOrchestrator {
10
11
  private config;
@@ -32,6 +33,63 @@ export declare class WeaveOrchestrator {
32
33
  * Get configuration.
33
34
  */
34
35
  getConfig(): WeaveConfig;
36
+ /**
37
+ * Complexity signal patterns.
38
+ * Each pattern adds to a complexity score when matched.
39
+ */
40
+ private static readonly COMPLEXITY_SIGNALS;
41
+ /**
42
+ * Simple task patterns — if matched, override to simple.
43
+ */
44
+ private static readonly SIMPLE_PATTERNS;
45
+ /**
46
+ * Assess complexity of a task based on its name/description.
47
+ * Returns: simple (score 0), standard (score 1-2), complex (score 3+)
48
+ */
49
+ assessComplexity(taskDescription: string): TaskComplexity;
50
+ /**
51
+ * Select the appropriate agent tier based on task complexity.
52
+ *
53
+ * Strategy:
54
+ * - simple -> dummy-flash (fast, cheap: file renames, formatting, config)
55
+ * - standard -> dummy-human (balanced: component implementation, API endpoints)
56
+ * - complex -> dummy-premium (powerful: architecture, debugging, multi-step reasoning)
57
+ */
58
+ selectAgentTier(complexity: TaskComplexity): AgentTier;
59
+ /** Map TaskType to ModelCapability tags for pool-based selection */
60
+ private static readonly TASK_TYPE_CAPABILITIES;
61
+ /** Map complexity to ModelTier for pool queries */
62
+ private static readonly COMPLEXITY_TIER_MAP;
63
+ /**
64
+ * Select the best available agent from the model pool.
65
+ * This considers:
66
+ * 1. Task complexity -> preferred tier
67
+ * 2. Task type -> required capabilities
68
+ * 3. Model availability -> concurrency limits
69
+ * 4. Cost awareness -> prefer cheaper when possible
70
+ *
71
+ * Returns the agent name to use (e.g., "dummy-gemini-flash")
72
+ * or falls back to the legacy tier name (e.g., "dummy-flash")
73
+ */
74
+ selectAgentFromPool(task: WeaveTask): {
75
+ agentName: string;
76
+ tier: AgentTier;
77
+ poolManaged: boolean;
78
+ };
79
+ /**
80
+ * Release a model back to the pool after task completion.
81
+ */
82
+ releaseAgent(agentName: string): boolean;
83
+ /**
84
+ * Generate execution plan for a phase.
85
+ * Analyzes each task and determines:
86
+ * 1. Which expert mask to use
87
+ * 2. Which agent tier (model) to delegate to
88
+ * 3. Any relevant troubleshooting hints from global knowledge
89
+ */
90
+ generateExecutionPlan(phase: WeavePhase, options?: {
91
+ projectType?: string;
92
+ }): Promise<PhaseExecutionPlan>;
35
93
  /**
36
94
  * Update configuration.
37
95
  */
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/weave/orchestrator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAMzD,MAAM,MAAM,QAAQ,GACd,cAAc,GACd,SAAS,GACT,UAAU,GACV,SAAS,GACT,aAAa,GACb,UAAU,GACV,IAAI,GACJ,QAAQ,GACR,SAAS,CAAC;AA6DhB,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,MAAM,CAAc;gBAEhB,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM;IAU7C;;OAEG;IACH,cAAc,CAAC,eAAe,EAAE,MAAM,GAAG,QAAQ;IAejD;;;OAGG;IACH,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI;IAmBjD;;;OAGG;IACH,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IA2BhD;;;OAGG;IACH,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM;IAavE;;OAEG;IACH,SAAS,IAAI,WAAW;IAIxB;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI;CAGpD;AAQD,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,iBAAiB,CAOhF"}
1
+ {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/weave/orchestrator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAqB,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC3H,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAS7C,MAAM,MAAM,QAAQ,GACd,cAAc,GACd,SAAS,GACT,UAAU,GACV,SAAS,GACT,aAAa,GACb,UAAU,GACV,IAAI,GACJ,QAAQ,GACR,SAAS,CAAC;AA6DhB,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,MAAM,CAAc;gBAEhB,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM;IAU7C;;OAEG;IACH,cAAc,CAAC,eAAe,EAAE,MAAM,GAAG,QAAQ;IAejD;;;OAGG;IACH,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI;IAmBjD;;;OAGG;IACH,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IA2BhD;;;OAGG;IACH,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM;IAavE;;OAEG;IACH,SAAS,IAAI,WAAW;IAQxB;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAuBxC;IAEF;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAWrC;IAEF;;;OAGG;IACH,gBAAgB,CAAC,eAAe,EAAE,MAAM,GAAG,cAAc;IAoBzD;;;;;;;OAOG;IACH,eAAe,CAAC,UAAU,EAAE,cAAc,GAAG,SAAS;IAetD,oEAAoE;IACpE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAU5C;IAEF,mDAAmD;IACnD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAIzC;IAEF;;;;;;;;;;OAUG;IACH,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,SAAS,CAAC;QAAC,WAAW,EAAE,OAAO,CAAA;KAAE;IAuClG;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAWxC;;;;;;OAMG;IACG,qBAAqB,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE;QACrD,WAAW,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAyD/B;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI;CAGpD;AAQD,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,iBAAiB,CAOhF"}
@@ -4,6 +4,8 @@
4
4
  * Automatically selects expert masks based on task context.
5
5
  * This is the "brain" that decides which persona to wear for each task.
6
6
  */
7
+ import { searchTroubleshooting } from './knowledge/global.js';
8
+ import { getModelRegistry } from '../shared/model-registry.js';
7
9
  const TASK_PATTERNS = {
8
10
  architecture: [
9
11
  /architect/i, /design pattern/i, /refactor/i, /structure/i,
@@ -152,6 +154,232 @@ export class WeaveOrchestrator {
152
154
  getConfig() {
153
155
  return { ...this.config };
154
156
  }
157
+ // ========================================================================
158
+ // Task Complexity Assessment
159
+ // ========================================================================
160
+ /**
161
+ * Complexity signal patterns.
162
+ * Each pattern adds to a complexity score when matched.
163
+ */
164
+ static COMPLEXITY_SIGNALS = [
165
+ // High complexity signals (+2)
166
+ { pattern: /architect/i, weight: 2 },
167
+ { pattern: /refactor/i, weight: 2 },
168
+ { pattern: /design pattern/i, weight: 2 },
169
+ { pattern: /migration/i, weight: 2 },
170
+ { pattern: /state management/i, weight: 2 },
171
+ { pattern: /authentication|authorization|auth/i, weight: 2 },
172
+ { pattern: /performance|optimi[sz]/i, weight: 2 },
173
+ { pattern: /concurrency|parallel|async/i, weight: 2 },
174
+ { pattern: /debug|troubleshoot|diagnos/i, weight: 2 },
175
+ { pattern: /security|encrypt|vulnerab/i, weight: 2 },
176
+ { pattern: /algorithm|data structure/i, weight: 2 },
177
+ // Medium complexity signals (+1)
178
+ { pattern: /component/i, weight: 1 },
179
+ { pattern: /api|endpoint|route/i, weight: 1 },
180
+ { pattern: /test|spec/i, weight: 1 },
181
+ { pattern: /database|query|schema/i, weight: 1 },
182
+ { pattern: /hook|context|provider/i, weight: 1 },
183
+ { pattern: /middleware/i, weight: 1 },
184
+ { pattern: /validation/i, weight: 1 },
185
+ { pattern: /integrate/i, weight: 1 },
186
+ ];
187
+ /**
188
+ * Simple task patterns — if matched, override to simple.
189
+ */
190
+ static SIMPLE_PATTERNS = [
191
+ /rename|renames/i,
192
+ /import|imports/i,
193
+ /format|formatting|prettier/i,
194
+ /typo|spelling/i,
195
+ /config|configuration file/i,
196
+ /comment|documentation/i,
197
+ /remove unused/i,
198
+ /update version/i,
199
+ /add export/i,
200
+ /fix lint/i,
201
+ ];
202
+ /**
203
+ * Assess complexity of a task based on its name/description.
204
+ * Returns: simple (score 0), standard (score 1-2), complex (score 3+)
205
+ */
206
+ assessComplexity(taskDescription) {
207
+ // Check for explicit simple patterns first
208
+ for (const pattern of WeaveOrchestrator.SIMPLE_PATTERNS) {
209
+ if (pattern.test(taskDescription)) {
210
+ return 'simple';
211
+ }
212
+ }
213
+ let score = 0;
214
+ for (const { pattern, weight } of WeaveOrchestrator.COMPLEXITY_SIGNALS) {
215
+ if (pattern.test(taskDescription)) {
216
+ score += weight;
217
+ }
218
+ }
219
+ if (score >= 3)
220
+ return 'complex';
221
+ if (score >= 1)
222
+ return 'standard';
223
+ return 'simple';
224
+ }
225
+ /**
226
+ * Select the appropriate agent tier based on task complexity.
227
+ *
228
+ * Strategy:
229
+ * - simple -> dummy-flash (fast, cheap: file renames, formatting, config)
230
+ * - standard -> dummy-human (balanced: component implementation, API endpoints)
231
+ * - complex -> dummy-premium (powerful: architecture, debugging, multi-step reasoning)
232
+ */
233
+ selectAgentTier(complexity) {
234
+ switch (complexity) {
235
+ case 'simple':
236
+ return 'dummy-flash';
237
+ case 'standard':
238
+ return 'dummy-human';
239
+ case 'complex':
240
+ return 'dummy-premium';
241
+ }
242
+ }
243
+ // ========================================================================
244
+ // Model Pool Integration
245
+ // ========================================================================
246
+ /** Map TaskType to ModelCapability tags for pool-based selection */
247
+ static TASK_TYPE_CAPABILITIES = {
248
+ architecture: ['architecture', 'reasoning', 'complex-coding'],
249
+ testing: ['testing', 'coding'],
250
+ frontend: ['frontend', 'coding'],
251
+ backend: ['backend', 'coding'],
252
+ performance: ['debugging', 'reasoning'],
253
+ database: ['database', 'backend'],
254
+ ml: ['ml', 'reasoning'],
255
+ devops: ['devops', 'file-ops'],
256
+ general: ['coding'],
257
+ };
258
+ /** Map complexity to ModelTier for pool queries */
259
+ static COMPLEXITY_TIER_MAP = {
260
+ simple: 'flash',
261
+ standard: 'human',
262
+ complex: 'premium',
263
+ };
264
+ /**
265
+ * Select the best available agent from the model pool.
266
+ * This considers:
267
+ * 1. Task complexity -> preferred tier
268
+ * 2. Task type -> required capabilities
269
+ * 3. Model availability -> concurrency limits
270
+ * 4. Cost awareness -> prefer cheaper when possible
271
+ *
272
+ * Returns the agent name to use (e.g., "dummy-gemini-flash")
273
+ * or falls back to the legacy tier name (e.g., "dummy-flash")
274
+ */
275
+ selectAgentFromPool(task) {
276
+ const complexity = this.assessComplexity(task.name);
277
+ const defaultTier = this.selectAgentTier(complexity);
278
+ const taskType = this.detectTaskType(task.name);
279
+ try {
280
+ const registry = getModelRegistry();
281
+ const pool = registry.getPool();
282
+ // If no pool configured, fall back to legacy
283
+ if (pool.length === 0) {
284
+ return { agentName: defaultTier, tier: defaultTier, poolManaged: false };
285
+ }
286
+ const preferredModelTier = WeaveOrchestrator.COMPLEXITY_TIER_MAP[complexity];
287
+ const requiredCapabilities = WeaveOrchestrator.TASK_TYPE_CAPABILITIES[taskType] || ['coding'];
288
+ const result = registry.acquire({
289
+ tier: preferredModelTier,
290
+ capabilities: requiredCapabilities,
291
+ preferCheap: complexity === 'simple',
292
+ });
293
+ if (result.success && result.agentName) {
294
+ return {
295
+ agentName: result.agentName,
296
+ tier: defaultTier,
297
+ poolManaged: true,
298
+ };
299
+ }
300
+ // Pool exhausted -- fall back to legacy tier name
301
+ return { agentName: defaultTier, tier: defaultTier, poolManaged: false };
302
+ }
303
+ catch {
304
+ // Registry not initialized -- fall back to legacy
305
+ return { agentName: defaultTier, tier: defaultTier, poolManaged: false };
306
+ }
307
+ }
308
+ /**
309
+ * Release a model back to the pool after task completion.
310
+ */
311
+ releaseAgent(agentName) {
312
+ try {
313
+ const registry = getModelRegistry();
314
+ // Agent name format: "dummy-{modelId}"
315
+ const modelId = agentName.replace(/^dummy-/, '');
316
+ return registry.release(modelId);
317
+ }
318
+ catch {
319
+ return false;
320
+ }
321
+ }
322
+ /**
323
+ * Generate execution plan for a phase.
324
+ * Analyzes each task and determines:
325
+ * 1. Which expert mask to use
326
+ * 2. Which agent tier (model) to delegate to
327
+ * 3. Any relevant troubleshooting hints from global knowledge
328
+ */
329
+ async generateExecutionPlan(phase, options) {
330
+ const taskPlans = [];
331
+ for (const task of phase.tasks) {
332
+ const mask = this.selectMaskForTask(task);
333
+ const complexity = this.assessComplexity(task.name);
334
+ const agentTier = this.selectAgentTier(complexity);
335
+ // Pre-fetch troubleshooting hints for known error patterns
336
+ let troubleshootingHints = [];
337
+ if (this.config.globalKnowledge) {
338
+ try {
339
+ const solutions = await searchTroubleshooting(task.name, { projectType: options?.projectType, limit: 2 });
340
+ troubleshootingHints = solutions
341
+ .filter(s => s.score > 0.5)
342
+ .map(s => s.entry.solution.slice(0, 200));
343
+ }
344
+ catch {
345
+ // Knowledge search is best-effort
346
+ }
347
+ }
348
+ taskPlans.push({
349
+ task,
350
+ mask,
351
+ agentTier,
352
+ complexity,
353
+ troubleshootingHints,
354
+ });
355
+ }
356
+ // Generate human-readable summary
357
+ const tierCounts = { flash: 0, human: 0, premium: 0 };
358
+ for (const p of taskPlans) {
359
+ if (p.agentTier === 'dummy-flash')
360
+ tierCounts.flash++;
361
+ else if (p.agentTier === 'dummy-human')
362
+ tierCounts.human++;
363
+ else
364
+ tierCounts.premium++;
365
+ }
366
+ const summaryParts = [];
367
+ summaryParts.push(`Phase ${phase.id}: ${phase.name}`);
368
+ summaryParts.push(`Tasks: ${taskPlans.length} total`);
369
+ if (tierCounts.flash > 0)
370
+ summaryParts.push(` flash: ${tierCounts.flash} (simple)`);
371
+ if (tierCounts.human > 0)
372
+ summaryParts.push(` human: ${tierCounts.human} (standard)`);
373
+ if (tierCounts.premium > 0)
374
+ summaryParts.push(` premium: ${tierCounts.premium} (complex)`);
375
+ return {
376
+ phaseId: phase.id,
377
+ phaseName: phase.name,
378
+ status: phase.status,
379
+ taskPlans,
380
+ summary: summaryParts.join('\n'),
381
+ };
382
+ }
155
383
  /**
156
384
  * Update configuration.
157
385
  */
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/weave/orchestrator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmBH,MAAM,aAAa,GAA+B;IAC9C,YAAY,EAAE;QACV,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,YAAY;QAC1D,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY;QACnD,cAAc,EAAE,QAAQ,EAAE,aAAa;KAC1C;IACD,OAAO,EAAE;QACL,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO;QAC5C,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM;KACxD;IACD,QAAQ,EAAE;QACN,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK;QACjD,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa;QACvD,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ;KAClD;IACD,OAAO,EAAE;QACL,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS;QACnD,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ;QAClD,iBAAiB,EAAE,gBAAgB;KACtC;IACD,WAAW,EAAE;QACT,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ;QACxD,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY;QACnD,iBAAiB,EAAE,cAAc,EAAE,SAAS;KAC/C;IACD,QAAQ,EAAE;QACN,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS;QACtD,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ;QAClD,QAAQ,EAAE,QAAQ;KACrB;IACD,EAAE,EAAE;QACA,mBAAmB,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW;QACxD,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY;QAChD,cAAc,EAAE,UAAU,EAAE,aAAa;KAC5C;IACD,MAAM,EAAE;QACJ,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW;QAC3D,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ;KAChE;IACD,OAAO,EAAE,EAAE;CACd,CAAC;AAEF,6CAA6C;AAC7C,MAAM,aAAa,GAA6B;IAC5C,YAAY,EAAE,eAAe;IAC7B,OAAO,EAAE,WAAW;IACpB,QAAQ,EAAE,aAAa;IACvB,OAAO,EAAE,eAAe;IACxB,WAAW,EAAE,gBAAgB;IAC7B,QAAQ,EAAE,eAAe;IACzB,EAAE,EAAE,WAAW;IACf,MAAM,EAAE,gBAAgB;IACxB,OAAO,EAAE,WAAW,CAAE,kCAAkC;CAC3D,CAAC;AAEF,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E,MAAM,OAAO,iBAAiB;IAClB,MAAM,CAAc;IAE5B,YAAY,SAA+B,EAAE;QACzC,IAAI,CAAC,MAAM,GAAG;YACV,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,CAAC;YAClC,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,IAAI;YAC/C,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,IAAI;YAC/C,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,IAAI;YACjD,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,EAAE;SAChD,CAAC;IACN,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,eAAuB;QAClC,yBAAyB;QACzB,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YAC3D,IAAI,IAAI,KAAK,SAAS;gBAAE,SAAS;YAEjC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC7B,IAAI,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;oBAChC,OAAO,IAAgB,CAAC;gBAC5B,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,iBAAiB,CAAC,IAAe;QAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEhD,+BAA+B;QAC/B,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,QAAoD,CAAC,CAAC;YACpG,IAAI,SAAS,EAAE,CAAC;gBACZ,OAAO,SAAS,CAAC;YACrB,CAAC;QACL,CAAC;QAED,wBAAwB;QACxB,OAAO,aAAa,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,YAAoB;QACnC,MAAM,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;QAEzC,oCAAoC;QACpC,IAAI,sDAAsD,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACrE,OAAO,gBAAgB,CAAC;QAC5B,CAAC;QAED,4DAA4D;QAC5D,IAAI,qDAAqD,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACpE,OAAO,eAAe,CAAC;QAC3B,CAAC;QAED,uBAAuB;QACvB,IAAI,uCAAuC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACtD,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,8BAA8B;QAC9B,IAAI,2CAA2C,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO,aAAa,CAAC;QACzB,CAAC;QAED,2CAA2C;QAC3C,OAAO,WAAW,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,sBAAsB,CAAC,WAAmB,EAAE,QAAkB;QAC1D,MAAM,YAAY,GAA6B;YAC3C,WAAW,EAAE,CAAC,eAAe,EAAE,gBAAgB,CAAC;YAChD,eAAe,EAAE,CAAC,WAAW,EAAE,gBAAgB,CAAC;YAChD,gBAAgB,EAAE,CAAC,WAAW,EAAE,eAAe,CAAC;YAChD,aAAa,EAAE,CAAC,WAAW,EAAE,eAAe,CAAC;YAC7C,WAAW,EAAE,CAAC,WAAW,EAAE,eAAe,CAAC;SAC9C,CAAC;QAEF,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3D,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,SAAS;QACL,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,OAA6B;QACtC,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC;IACjD,CAAC;CACJ;AAED,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E,IAAI,oBAAoB,GAA6B,IAAI,CAAC;AAE1D,MAAM,UAAU,eAAe,CAAC,MAA6B;IACzD,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACxB,oBAAoB,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;SAAM,IAAI,MAAM,EAAE,CAAC;QAChB,oBAAoB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,oBAAoB,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/weave/orchestrator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAkB/D,MAAM,aAAa,GAA+B;IAC9C,YAAY,EAAE;QACV,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,YAAY;QAC1D,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY;QACnD,cAAc,EAAE,QAAQ,EAAE,aAAa;KAC1C;IACD,OAAO,EAAE;QACL,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO;QAC5C,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM;KACxD;IACD,QAAQ,EAAE;QACN,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK;QACjD,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa;QACvD,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ;KAClD;IACD,OAAO,EAAE;QACL,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS;QACnD,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ;QAClD,iBAAiB,EAAE,gBAAgB;KACtC;IACD,WAAW,EAAE;QACT,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ;QACxD,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY;QACnD,iBAAiB,EAAE,cAAc,EAAE,SAAS;KAC/C;IACD,QAAQ,EAAE;QACN,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS;QACtD,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ;QAClD,QAAQ,EAAE,QAAQ;KACrB;IACD,EAAE,EAAE;QACA,mBAAmB,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW;QACxD,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY;QAChD,cAAc,EAAE,UAAU,EAAE,aAAa;KAC5C;IACD,MAAM,EAAE;QACJ,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW;QAC3D,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ;KAChE;IACD,OAAO,EAAE,EAAE;CACd,CAAC;AAEF,6CAA6C;AAC7C,MAAM,aAAa,GAA6B;IAC5C,YAAY,EAAE,eAAe;IAC7B,OAAO,EAAE,WAAW;IACpB,QAAQ,EAAE,aAAa;IACvB,OAAO,EAAE,eAAe;IACxB,WAAW,EAAE,gBAAgB;IAC7B,QAAQ,EAAE,eAAe;IACzB,EAAE,EAAE,WAAW;IACf,MAAM,EAAE,gBAAgB;IACxB,OAAO,EAAE,WAAW,CAAE,kCAAkC;CAC3D,CAAC;AAEF,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E,MAAM,OAAO,iBAAiB;IAClB,MAAM,CAAc;IAE5B,YAAY,SAA+B,EAAE;QACzC,IAAI,CAAC,MAAM,GAAG;YACV,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,CAAC;YAClC,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,IAAI;YAC/C,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,IAAI;YAC/C,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,IAAI;YACjD,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,EAAE;SAChD,CAAC;IACN,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,eAAuB;QAClC,yBAAyB;QACzB,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YAC3D,IAAI,IAAI,KAAK,SAAS;gBAAE,SAAS;YAEjC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC7B,IAAI,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;oBAChC,OAAO,IAAgB,CAAC;gBAC5B,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,iBAAiB,CAAC,IAAe;QAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEhD,+BAA+B;QAC/B,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,QAAoD,CAAC,CAAC;YACpG,IAAI,SAAS,EAAE,CAAC;gBACZ,OAAO,SAAS,CAAC;YACrB,CAAC;QACL,CAAC;QAED,wBAAwB;QACxB,OAAO,aAAa,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,YAAoB;QACnC,MAAM,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;QAEzC,oCAAoC;QACpC,IAAI,sDAAsD,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACrE,OAAO,gBAAgB,CAAC;QAC5B,CAAC;QAED,4DAA4D;QAC5D,IAAI,qDAAqD,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACpE,OAAO,eAAe,CAAC;QAC3B,CAAC;QAED,uBAAuB;QACvB,IAAI,uCAAuC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACtD,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,8BAA8B;QAC9B,IAAI,2CAA2C,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO,aAAa,CAAC;QACzB,CAAC;QAED,2CAA2C;QAC3C,OAAO,WAAW,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,sBAAsB,CAAC,WAAmB,EAAE,QAAkB;QAC1D,MAAM,YAAY,GAA6B;YAC3C,WAAW,EAAE,CAAC,eAAe,EAAE,gBAAgB,CAAC;YAChD,eAAe,EAAE,CAAC,WAAW,EAAE,gBAAgB,CAAC;YAChD,gBAAgB,EAAE,CAAC,WAAW,EAAE,eAAe,CAAC;YAChD,aAAa,EAAE,CAAC,WAAW,EAAE,eAAe,CAAC;YAC7C,WAAW,EAAE,CAAC,WAAW,EAAE,eAAe,CAAC;SAC9C,CAAC;QAEF,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3D,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,SAAS;QACL,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC9B,CAAC;IAED,2EAA2E;IAC3E,6BAA6B;IAC7B,2EAA2E;IAE3E;;;OAGG;IACK,MAAM,CAAU,kBAAkB,GAA0C;QAChF,+BAA+B;QAC/B,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE;QACpC,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,EAAE;QACnC,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,EAAE;QACzC,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE;QACpC,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,EAAE;QAC3C,EAAE,OAAO,EAAE,oCAAoC,EAAE,MAAM,EAAE,CAAC,EAAE;QAC5D,EAAE,OAAO,EAAE,yBAAyB,EAAE,MAAM,EAAE,CAAC,EAAE;QACjD,EAAE,OAAO,EAAE,6BAA6B,EAAE,MAAM,EAAE,CAAC,EAAE;QACrD,EAAE,OAAO,EAAE,6BAA6B,EAAE,MAAM,EAAE,CAAC,EAAE;QACrD,EAAE,OAAO,EAAE,4BAA4B,EAAE,MAAM,EAAE,CAAC,EAAE;QACpD,EAAE,OAAO,EAAE,2BAA2B,EAAE,MAAM,EAAE,CAAC,EAAE;QAEnD,iCAAiC;QACjC,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE;QACpC,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,EAAE,CAAC,EAAE;QAC7C,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE;QACpC,EAAE,OAAO,EAAE,wBAAwB,EAAE,MAAM,EAAE,CAAC,EAAE;QAChD,EAAE,OAAO,EAAE,wBAAwB,EAAE,MAAM,EAAE,CAAC,EAAE;QAChD,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,EAAE;QACrC,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,EAAE;QACrC,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE;KACvC,CAAC;IAEF;;OAEG;IACK,MAAM,CAAU,eAAe,GAAa;QAChD,iBAAiB;QACjB,iBAAiB;QACjB,6BAA6B;QAC7B,gBAAgB;QAChB,4BAA4B;QAC5B,wBAAwB;QACxB,gBAAgB;QAChB,iBAAiB;QACjB,aAAa;QACb,WAAW;KACd,CAAC;IAEF;;;OAGG;IACH,gBAAgB,CAAC,eAAuB;QACpC,2CAA2C;QAC3C,KAAK,MAAM,OAAO,IAAI,iBAAiB,CAAC,eAAe,EAAE,CAAC;YACtD,IAAI,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;gBAChC,OAAO,QAAQ,CAAC;YACpB,CAAC;QACL,CAAC;QAED,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;YACrE,IAAI,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;gBAChC,KAAK,IAAI,MAAM,CAAC;YACpB,CAAC;QACL,CAAC;QAED,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO,SAAS,CAAC;QACjC,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO,UAAU,CAAC;QAClC,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED;;;;;;;OAOG;IACH,eAAe,CAAC,UAA0B;QACtC,QAAQ,UAAU,EAAE,CAAC;YACjB,KAAK,QAAQ;gBACT,OAAO,aAAa,CAAC;YACzB,KAAK,UAAU;gBACX,OAAO,aAAa,CAAC;YACzB,KAAK,SAAS;gBACV,OAAO,eAAe,CAAC;QAC/B,CAAC;IACL,CAAC;IAED,2EAA2E;IAC3E,yBAAyB;IACzB,2EAA2E;IAE3E,oEAAoE;IAC5D,MAAM,CAAU,sBAAsB,GAAwC;QAClF,YAAY,EAAE,CAAC,cAAc,EAAE,WAAW,EAAE,gBAAgB,CAAC;QAC7D,OAAO,EAAO,CAAC,SAAS,EAAE,QAAQ,CAAC;QACnC,QAAQ,EAAM,CAAC,UAAU,EAAE,QAAQ,CAAC;QACpC,OAAO,EAAO,CAAC,SAAS,EAAE,QAAQ,CAAC;QACnC,WAAW,EAAG,CAAC,WAAW,EAAE,WAAW,CAAC;QACxC,QAAQ,EAAM,CAAC,UAAU,EAAE,SAAS,CAAC;QACrC,EAAE,EAAY,CAAC,IAAI,EAAE,WAAW,CAAC;QACjC,MAAM,EAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;QACpC,OAAO,EAAO,CAAC,QAAQ,CAAC;KAC3B,CAAC;IAEF,mDAAmD;IAC3C,MAAM,CAAU,mBAAmB,GAAsC;QAC7E,MAAM,EAAI,OAAO;QACjB,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAG,SAAS;KACtB,CAAC;IAEF;;;;;;;;;;OAUG;IACH,mBAAmB,CAAC,IAAe;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEhD,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;YAEhC,6CAA6C;YAC7C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACpB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;YAC7E,CAAC;YAED,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;YAC7E,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAE9F,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC;gBAC5B,IAAI,EAAE,kBAAkB;gBACxB,YAAY,EAAE,oBAAoB;gBAClC,WAAW,EAAE,UAAU,KAAK,QAAQ;aACvC,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACrC,OAAO;oBACH,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,IAAI,EAAE,WAAW;oBACjB,WAAW,EAAE,IAAI;iBACpB,CAAC;YACN,CAAC;YAED,kDAAkD;YAClD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QAC7E,CAAC;QAAC,MAAM,CAAC;YACL,kDAAkD;YAClD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QAC7E,CAAC;IACL,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,SAAiB;QAC1B,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;YACpC,uCAAuC;YACvC,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACjD,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,qBAAqB,CAAC,KAAiB,EAAE,OAE9C;QACG,MAAM,SAAS,GAAwB,EAAE,CAAC;QAE1C,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpD,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAEnD,2DAA2D;YAC3D,IAAI,oBAAoB,GAAa,EAAE,CAAC;YACxC,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;gBAC9B,IAAI,CAAC;oBACD,MAAM,SAAS,GAAG,MAAM,qBAAqB,CACzC,IAAI,CAAC,IAAI,EACT,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,CAClD,CAAC;oBACF,oBAAoB,GAAG,SAAS;yBAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC;yBAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBAClD,CAAC;gBAAC,MAAM,CAAC;oBACL,kCAAkC;gBACtC,CAAC;YACL,CAAC;YAED,SAAS,CAAC,IAAI,CAAC;gBACX,IAAI;gBACJ,IAAI;gBACJ,SAAS;gBACT,UAAU;gBACV,oBAAoB;aACvB,CAAC,CAAC;QACP,CAAC;QAED,kCAAkC;QAClC,MAAM,UAAU,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QACtD,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,CAAC,SAAS,KAAK,aAAa;gBAAE,UAAU,CAAC,KAAK,EAAE,CAAC;iBACjD,IAAI,CAAC,CAAC,SAAS,KAAK,aAAa;gBAAE,UAAU,CAAC,KAAK,EAAE,CAAC;;gBACtD,UAAU,CAAC,OAAO,EAAE,CAAC;QAC9B,CAAC;QAED,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,YAAY,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACtD,YAAY,CAAC,IAAI,CAAC,UAAU,SAAS,CAAC,MAAM,QAAQ,CAAC,CAAC;QACtD,IAAI,UAAU,CAAC,KAAK,GAAG,CAAC;YAAE,YAAY,CAAC,IAAI,CAAC,YAAY,UAAU,CAAC,KAAK,WAAW,CAAC,CAAC;QACrF,IAAI,UAAU,CAAC,KAAK,GAAG,CAAC;YAAE,YAAY,CAAC,IAAI,CAAC,YAAY,UAAU,CAAC,KAAK,aAAa,CAAC,CAAC;QACvF,IAAI,UAAU,CAAC,OAAO,GAAG,CAAC;YAAE,YAAY,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;QAE5F,OAAO;YACH,OAAO,EAAE,KAAK,CAAC,EAAE;YACjB,SAAS,EAAE,KAAK,CAAC,IAAI;YACrB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,SAAS;YACT,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;SACnC,CAAC;IACN,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,OAA6B;QACtC,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC;IACjD,CAAC;;AAGL,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E,IAAI,oBAAoB,GAA6B,IAAI,CAAC;AAE1D,MAAM,UAAU,eAAe,CAAC,MAA6B;IACzD,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACxB,oBAAoB,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;SAAM,IAAI,MAAM,EAAE,CAAC;QAChB,oBAAoB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,oBAAoB,CAAC;AAChC,CAAC"}
@@ -1,14 +1,15 @@
1
1
  /**
2
2
  * Weave Execute Stage
3
3
  *
4
- * The Build + Self-Verify Loop.
5
- * This is where the actual work happens, with:
6
- * - Automatic mask selection per task
7
- * - Global knowledge search for troubleshooting
8
- * - 3-tier verification escalation
9
- * - Automatic retry with knowledge recording
4
+ * Generates execution plans with automatic mask and agent tier selection.
5
+ * Actual code generation/testing is performed by AI agents (dummy-flash/human/premium)
6
+ * via the Task tool this module handles:
7
+ * - Phase validation and dependency checking
8
+ * - Execution plan generation (mask + agent tier per task)
9
+ * - Formatting the plan for the Mask Weaver to act upon
10
+ * - AI-driven verification system integration
10
11
  */
11
- import type { WeavePhase, WeaveTask, WeaveEvent } from '../types.js';
12
+ import type { WeavePhase, WeaveTask, WeaveEvent, PhaseExecutionPlan } from '../types.js';
12
13
  import { WeaveOrchestrator } from '../orchestrator.js';
13
14
  export interface ExecuteOptions {
14
15
  phaseId: string;
@@ -16,6 +17,10 @@ export interface ExecuteOptions {
16
17
  projectType?: string;
17
18
  techStack?: string[];
18
19
  }
20
+ export interface PrepareResult {
21
+ plan: PhaseExecutionPlan;
22
+ phase: WeavePhase;
23
+ }
19
24
  export interface ExecuteResult {
20
25
  success: boolean;
21
26
  phase: WeavePhase;
@@ -25,6 +30,7 @@ export interface ExecuteResult {
25
30
  troubleshootingRecorded: number;
26
31
  masksUsed: string[];
27
32
  durationMs: number;
33
+ executionPlan?: PhaseExecutionPlan;
28
34
  }
29
35
  export interface TaskExecutionContext {
30
36
  task: WeaveTask;
@@ -34,6 +40,28 @@ export interface TaskExecutionContext {
34
40
  projectType?: string;
35
41
  techStack?: string[];
36
42
  }
43
+ /**
44
+ * Prepare a phase for execution.
45
+ *
46
+ * This is the primary entry point for craft. It:
47
+ * 1. Validates dependencies
48
+ * 2. Marks the phase as in_progress
49
+ * 3. Generates an execution plan (mask + agent tier per task)
50
+ * 4. Returns the plan for the Mask Weaver to delegate via Task tool
51
+ *
52
+ * The actual code generation/testing is performed by AI agents
53
+ * (dummy-flash, dummy-human, dummy-premium) — not by this function.
54
+ */
55
+ export declare function preparePhaseExecution(options: ExecuteOptions): Promise<PrepareResult>;
56
+ /**
57
+ * Format a PhaseExecutionPlan into markdown instructions
58
+ * that the Mask Weaver can read and act upon.
59
+ */
60
+ export declare function formatExecutionPlan(plan: PhaseExecutionPlan): string;
61
+ /**
62
+ * @deprecated Use preparePhaseExecution() + formatExecutionPlan() instead.
63
+ * Kept for backward compatibility.
64
+ */
37
65
  export declare function execute(options: ExecuteOptions): Promise<ExecuteResult>;
38
66
  /**
39
67
  * Multi-layer verification that AI can perform automatically.
@@ -1 +1 @@
1
- {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/weave/stages/execute.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/weave/stages/execute.ts"],"names":[],"mappings":"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"}