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.
- package/assets/agents/squad-operator.md +56 -16
- package/assets/commands/weave-craft.md +189 -92
- package/assets/commands/weave-design.md +59 -31
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/index.js +73 -14
- package/dist/plugin/index.js.map +1 -1
- package/dist/plugin/tools/squad.d.ts +1 -0
- package/dist/plugin/tools/squad.d.ts.map +1 -1
- package/dist/plugin/tools/squad.js +49 -2
- package/dist/plugin/tools/squad.js.map +1 -1
- package/dist/plugin/tools/weave.js +8 -12
- package/dist/plugin/tools/weave.js.map +1 -1
- package/dist/shared/config.d.ts +46 -1
- package/dist/shared/config.d.ts.map +1 -1
- package/dist/shared/config.js +34 -0
- package/dist/shared/config.js.map +1 -1
- package/dist/shared/model-registry.d.ts +126 -0
- package/dist/shared/model-registry.d.ts.map +1 -0
- package/dist/shared/model-registry.js +318 -0
- package/dist/shared/model-registry.js.map +1 -0
- package/dist/weave/bridge.d.ts +61 -0
- package/dist/weave/bridge.d.ts.map +1 -0
- package/dist/weave/bridge.js +143 -0
- package/dist/weave/bridge.js.map +1 -0
- package/dist/weave/orchestrator.d.ts +59 -1
- package/dist/weave/orchestrator.d.ts.map +1 -1
- package/dist/weave/orchestrator.js +228 -0
- package/dist/weave/orchestrator.js.map +1 -1
- package/dist/weave/stages/execute.d.ts +35 -7
- package/dist/weave/stages/execute.d.ts.map +1 -1
- package/dist/weave/stages/execute.js +136 -267
- package/dist/weave/stages/execute.js.map +1 -1
- package/dist/weave/types.d.ts +20 -0
- package/dist/weave/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/weave/bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,EAAE,QAAQ,EAAwC,MAAM,0BAA0B,CAAC;AAE1F,+EAA+E;AAC/E,oCAAoC;AACpC,+EAA+E;AAE/E;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAChC,IAAe,EACf,OAIC;IAED,OAAO;QACH,MAAM,EAAE,IAAI,CAAC,EAAE;QACf,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC;QAC1C,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,QAAQ;QACtC,WAAW,EAAE,IAAI,CAAC,IAAI;QACtB,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,EAAE;QACxC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACtC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,WAAgC;IAC3D,QAAQ,WAAW,EAAE,CAAC;QAClB,KAAK,SAAS,CAAC,CAAC,OAAO,SAAS,CAAC;QACjC,KAAK,aAAa,CAAC,CAAC,OAAO,QAAQ,CAAC;QACpC,KAAK,QAAQ,CAAC,CAAC,OAAO,WAAW,CAAC;QAClC,KAAK,QAAQ,CAAC,CAAC,OAAO,QAAQ,CAAC;IACnC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,UAA6C;IAC9E,QAAQ,UAAU,EAAE,CAAC;QACjB,KAAK,QAAQ,CAAC,CAAC,OAAO,KAAK,CAAC;QAC5B,KAAK,UAAU,CAAC,CAAC,OAAO,QAAQ,CAAC;QACjC,KAAK,SAAS,CAAC,CAAC,OAAO,MAAM,CAAC;IAClC,CAAC;AACL,CAAC;AAED,+EAA+E;AAC/E,sCAAsC;AACtC,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAwB;IAC9D,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE;QAC1D,QAAQ,EAAE,EAAE,CAAC,SAAS;QACtB,QAAQ,EAAE,oBAAoB,CAAC,EAAE,CAAC,UAAU,CAAC;KAChD,CAAC,CAAC,CAAC;AACR,CAAC;AAED,+EAA+E;AAC/E,8BAA8B;AAC9B,+EAA+E;AAE/E;;;;;;;;;GASG;AACH,MAAM,UAAU,4BAA4B,CAAC,IAAwB;IACjE,MAAM,UAAU,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAEnD,+DAA+D;IAC/D,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IAE7F,IAAI,WAAwB,CAAC;IAE7B,IAAI,cAAc,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,oDAAoD;QACpD,WAAW,GAAG;YACV,KAAK,EAAE,IAAI,GAAG,EAAE;YAChB,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;YACjE,YAAY,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACpC,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,UAAU,CAAC,MAAM;SACvC,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,sDAAsD;QACtD,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;IAED,oCAAoC;IACpC,MAAM,WAAW,GAAiB,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7D,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YAC7B,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;YAC1D,OAAO,EAAG,CAAC;QACf,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;KACrB,CAAC,CAAC,CAAC;IAEJ,OAAO;QACH,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM;QACjC,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,MAAM;QACpC,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;QAChD,eAAe,EAAE,cAAc;QAC/B,KAAK,EAAE,WAAW;QAClB,YAAY,EAAE,WAAW,CAAC,YAAY;KACzC,CAAC;AACN,CAAC;AAoBD;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAA0B;IAC7D,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,kBAAkB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACpD,KAAK,CAAC,IAAI,CAAC,sBAAsB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACxD,KAAK,CAAC,IAAI,CAAC,yBAAyB,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9E,KAAK,CAAC,IAAI,CAAC,qBAAqB,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,SAAS,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,sBAAsB,CAAC,CAAC;QACnF,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,EAAE,CAAC,SAAS,KAAK,aAAa,CAAC,CAAC,CAAC,OAAO;gBACtD,CAAC,CAAC,EAAE,CAAC,SAAS,KAAK,aAAa,CAAC,CAAC,CAAC,OAAO;oBAC1C,CAAC,CAAC,SAAS,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,QAAQ,SAAS,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI,IAAI,MAAM,GAAG,CAAC,CAAC;QAC5E,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,kBAAkB,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC"}
|
|
@@ -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;
|
|
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":"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"}
|
|
1
|
+
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/weave/orchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Weave Execute Stage
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* -
|
|
8
|
-
* -
|
|
9
|
-
* -
|
|
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":"AAAA
|
|
1
|
+
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/weave/stages/execute.ts"],"names":[],"mappings":"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"}
|