erosolar-cli 1.7.28 → 1.7.29
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/core/agent.d.ts +3 -3
- package/dist/core/agent.d.ts.map +1 -1
- package/dist/core/agent.js +57 -4
- package/dist/core/agent.js.map +1 -1
- package/dist/core/designThoughtCheck.d.ts +196 -0
- package/dist/core/designThoughtCheck.d.ts.map +1 -0
- package/dist/core/designThoughtCheck.js +287 -0
- package/dist/core/designThoughtCheck.js.map +1 -0
- package/dist/core/designThoughtCheckEngine.d.ts +58 -0
- package/dist/core/designThoughtCheckEngine.d.ts.map +1 -0
- package/dist/core/designThoughtCheckEngine.js +358 -0
- package/dist/core/designThoughtCheckEngine.js.map +1 -0
- package/dist/core/designThoughtCheckIntegration.d.ts +103 -0
- package/dist/core/designThoughtCheckIntegration.d.ts.map +1 -0
- package/dist/core/designThoughtCheckIntegration.js +207 -0
- package/dist/core/designThoughtCheckIntegration.js.map +1 -0
- package/dist/shell/interactiveShell.d.ts.map +1 -1
- package/dist/shell/interactiveShell.js +16 -0
- package/dist/shell/interactiveShell.js.map +1 -1
- package/dist/ui/toolDisplay.d.ts.map +1 -1
- package/dist/ui/toolDisplay.js +652 -0
- package/dist/ui/toolDisplay.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,287 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Design Thought Check System
|
|
3
|
+
*
|
|
4
|
+
* A meta-level quality assurance system that validates implementation decisions
|
|
5
|
+
* against comprehensive design principles before execution.
|
|
6
|
+
*
|
|
7
|
+
* Features:
|
|
8
|
+
* - Multi-dimensional design validation
|
|
9
|
+
* - Edge case analysis
|
|
10
|
+
* - Architectural pattern matching
|
|
11
|
+
* - Risk assessment and mitigation
|
|
12
|
+
* - Alternative solution exploration
|
|
13
|
+
* - Production-readiness validation
|
|
14
|
+
*
|
|
15
|
+
* @license MIT
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* Design Thought Check Engine
|
|
19
|
+
*
|
|
20
|
+
* Validates implementation decisions against comprehensive design principles
|
|
21
|
+
* to ensure sophisticated, production-ready solutions.
|
|
22
|
+
*/
|
|
23
|
+
export class DesignThoughtCheckEngine {
|
|
24
|
+
defaultOptions = {
|
|
25
|
+
deepAnalysis: true,
|
|
26
|
+
exploreAlternatives: true,
|
|
27
|
+
assessProductionReadiness: true,
|
|
28
|
+
validatePatterns: true,
|
|
29
|
+
maxAlternatives: 3,
|
|
30
|
+
minReadinessScore: 80
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Perform a comprehensive design thought check
|
|
34
|
+
*/
|
|
35
|
+
async check(intent, approach, toolCalls, options = {}) {
|
|
36
|
+
const opts = { ...this.defaultOptions, ...options };
|
|
37
|
+
// Generate unique ID for this check
|
|
38
|
+
const id = this.generateCheckId(intent);
|
|
39
|
+
// Perform comprehensive validation
|
|
40
|
+
const validation = await this.validateDesign(intent, approach, toolCalls, opts);
|
|
41
|
+
// Explore alternative approaches
|
|
42
|
+
const alternatives = opts.exploreAlternatives
|
|
43
|
+
? await this.exploreAlternatives(intent, approach, toolCalls, opts.maxAlternatives)
|
|
44
|
+
: [];
|
|
45
|
+
// Assess risks
|
|
46
|
+
const risks = await this.assessRisks(intent, approach, toolCalls, validation);
|
|
47
|
+
// Calculate production readiness
|
|
48
|
+
const productionReadiness = this.calculateProductionReadiness(validation, risks);
|
|
49
|
+
// Generate final recommendation
|
|
50
|
+
const recommendation = this.generateRecommendation(validation, risks, productionReadiness, opts.minReadinessScore);
|
|
51
|
+
return {
|
|
52
|
+
id,
|
|
53
|
+
originalIntent: intent,
|
|
54
|
+
proposedApproach: approach,
|
|
55
|
+
plannedToolCalls: toolCalls,
|
|
56
|
+
validation,
|
|
57
|
+
alternatives,
|
|
58
|
+
risks,
|
|
59
|
+
productionReadiness,
|
|
60
|
+
recommendation
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Validate design against comprehensive criteria
|
|
65
|
+
*/
|
|
66
|
+
async validateDesign(intent, approach, toolCalls, options) {
|
|
67
|
+
const criteria = await this.evaluateCriteria(intent, approach, toolCalls, options);
|
|
68
|
+
const score = this.calculateValidationScore(criteria);
|
|
69
|
+
// Extract issues from criteria
|
|
70
|
+
const criticalIssues = [];
|
|
71
|
+
const warnings = [];
|
|
72
|
+
const suggestions = [];
|
|
73
|
+
for (const criterion of criteria) {
|
|
74
|
+
if (criterion.score < 50 && criterion.critical) {
|
|
75
|
+
criticalIssues.push({
|
|
76
|
+
severity: 'critical',
|
|
77
|
+
description: `Failed critical criterion: ${criterion.name}`,
|
|
78
|
+
impact: `This could lead to ${criterion.description.toLowerCase()}`,
|
|
79
|
+
recommendation: criterion.evidence,
|
|
80
|
+
blocksImplementation: true
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
else if (criterion.score < 70) {
|
|
84
|
+
warnings.push({
|
|
85
|
+
severity: 'warning',
|
|
86
|
+
description: `Suboptimal performance on: ${criterion.name}`,
|
|
87
|
+
impact: `May affect ${criterion.description.toLowerCase()}`,
|
|
88
|
+
recommendation: criterion.evidence,
|
|
89
|
+
blocksImplementation: false
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
else if (criterion.score < 90) {
|
|
93
|
+
suggestions.push({
|
|
94
|
+
severity: 'suggestion',
|
|
95
|
+
description: `Opportunity for improvement: ${criterion.name}`,
|
|
96
|
+
impact: `Could enhance ${criterion.description.toLowerCase()}`,
|
|
97
|
+
recommendation: criterion.evidence,
|
|
98
|
+
blocksImplementation: false
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
return {
|
|
103
|
+
score,
|
|
104
|
+
criteria,
|
|
105
|
+
criticalIssues,
|
|
106
|
+
warnings,
|
|
107
|
+
suggestions
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Evaluate all design criteria
|
|
112
|
+
*/
|
|
113
|
+
async evaluateCriteria(intent, approach, toolCalls, options) {
|
|
114
|
+
const criteria = [];
|
|
115
|
+
// Core architectural criteria
|
|
116
|
+
criteria.push(await this.evaluateArchitecturalCoherence(intent, approach, toolCalls));
|
|
117
|
+
criteria.push(await this.evaluateCodeQuality(intent, approach, toolCalls));
|
|
118
|
+
criteria.push(await this.evaluateMaintainability(intent, approach, toolCalls));
|
|
119
|
+
criteria.push(await this.evaluateTestability(intent, approach, toolCalls));
|
|
120
|
+
// Performance and scalability
|
|
121
|
+
criteria.push(await this.evaluatePerformance(intent, approach, toolCalls));
|
|
122
|
+
criteria.push(await this.evaluateScalability(intent, approach, toolCalls));
|
|
123
|
+
// Security and reliability
|
|
124
|
+
criteria.push(await this.evaluateSecurity(intent, approach, toolCalls));
|
|
125
|
+
criteria.push(await this.evaluateErrorHandling(intent, approach, toolCalls));
|
|
126
|
+
criteria.push(await this.evaluateEdgeCases(intent, approach, toolCalls));
|
|
127
|
+
// User experience and usability
|
|
128
|
+
criteria.push(await this.evaluateUsability(intent, approach, toolCalls));
|
|
129
|
+
criteria.push(await this.evaluateDocumentation(intent, approach, toolCalls));
|
|
130
|
+
// Integration and compatibility
|
|
131
|
+
criteria.push(await this.evaluateIntegration(intent, approach, toolCalls));
|
|
132
|
+
criteria.push(await this.evaluateCompatibility(intent, approach, toolCalls));
|
|
133
|
+
return criteria;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Evaluate architectural coherence
|
|
137
|
+
*/
|
|
138
|
+
async evaluateArchitecturalCoherence(intent, approach, toolCalls) {
|
|
139
|
+
// Analyze if the approach aligns with existing architecture
|
|
140
|
+
const evidence = this.analyzeArchitecturalAlignment(approach, toolCalls);
|
|
141
|
+
const score = this.scoreArchitecturalCoherence(evidence);
|
|
142
|
+
return {
|
|
143
|
+
name: 'Architectural Coherence',
|
|
144
|
+
description: 'Alignment with existing system architecture and patterns',
|
|
145
|
+
weight: 10,
|
|
146
|
+
score,
|
|
147
|
+
evidence,
|
|
148
|
+
critical: true
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Evaluate code quality
|
|
153
|
+
*/
|
|
154
|
+
async evaluateCodeQuality(intent, approach, toolCalls) {
|
|
155
|
+
const evidence = this.analyzeCodeQuality(approach, toolCalls);
|
|
156
|
+
const score = this.scoreCodeQuality(evidence);
|
|
157
|
+
return {
|
|
158
|
+
name: 'Code Quality',
|
|
159
|
+
description: 'Adherence to coding standards and best practices',
|
|
160
|
+
weight: 8,
|
|
161
|
+
score,
|
|
162
|
+
evidence,
|
|
163
|
+
critical: false
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Evaluate maintainability
|
|
168
|
+
*/
|
|
169
|
+
async evaluateMaintainability(intent, approach, toolCalls) {
|
|
170
|
+
const evidence = this.analyzeMaintainability(approach, toolCalls);
|
|
171
|
+
const score = this.scoreMaintainability(evidence);
|
|
172
|
+
return {
|
|
173
|
+
name: 'Maintainability',
|
|
174
|
+
description: 'Ease of future maintenance and modifications',
|
|
175
|
+
weight: 9,
|
|
176
|
+
score,
|
|
177
|
+
evidence,
|
|
178
|
+
critical: false
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Evaluate testability
|
|
183
|
+
*/
|
|
184
|
+
async evaluateTestability(intent, approach, toolCalls) {
|
|
185
|
+
const evidence = this.analyzeTestability(approach, toolCalls);
|
|
186
|
+
const score = this.scoreTestability(evidence);
|
|
187
|
+
return {
|
|
188
|
+
name: 'Testability',
|
|
189
|
+
description: 'Ease of testing and validation',
|
|
190
|
+
weight: 7,
|
|
191
|
+
score,
|
|
192
|
+
evidence,
|
|
193
|
+
critical: false
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Evaluate performance
|
|
198
|
+
*/
|
|
199
|
+
async evaluatePerformance(intent, approach, toolCalls) {
|
|
200
|
+
const evidence = this.analyzePerformance(approach, toolCalls);
|
|
201
|
+
const score = this.scorePerformance(evidence);
|
|
202
|
+
return {
|
|
203
|
+
name: 'Performance',
|
|
204
|
+
description: 'Efficiency and resource usage',
|
|
205
|
+
weight: 8,
|
|
206
|
+
score,
|
|
207
|
+
evidence,
|
|
208
|
+
critical: false
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Evaluate scalability
|
|
213
|
+
*/
|
|
214
|
+
async evaluateScalability(intent, approach, toolCalls) {
|
|
215
|
+
const evidence = this.analyzeScalability(approach, toolCalls);
|
|
216
|
+
const score = this.scoreScalability(evidence);
|
|
217
|
+
return {
|
|
218
|
+
name: 'Scalability',
|
|
219
|
+
description: 'Ability to handle increased load and complexity',
|
|
220
|
+
weight: 7,
|
|
221
|
+
score,
|
|
222
|
+
evidence,
|
|
223
|
+
critical: false
|
|
224
|
+
};
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Evaluate security
|
|
228
|
+
*/
|
|
229
|
+
async evaluateSecurity(intent, approach, toolCalls) {
|
|
230
|
+
const evidence = this.analyzeSecurity(approach, toolCalls);
|
|
231
|
+
const score = this.scoreSecurity(evidence);
|
|
232
|
+
return {
|
|
233
|
+
name: 'Security',
|
|
234
|
+
description: 'Protection against vulnerabilities and threats',
|
|
235
|
+
weight: 9,
|
|
236
|
+
score,
|
|
237
|
+
evidence,
|
|
238
|
+
critical: true
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Evaluate error handling
|
|
243
|
+
*/
|
|
244
|
+
async evaluateErrorHandling(intent, approach, toolCalls) {
|
|
245
|
+
const evidence = this.analyzeErrorHandling(approach, toolCalls);
|
|
246
|
+
const score = this.scoreErrorHandling(evidence);
|
|
247
|
+
return {
|
|
248
|
+
name: 'Error Handling',
|
|
249
|
+
description: 'Robustness in handling failures and edge cases',
|
|
250
|
+
weight: 8,
|
|
251
|
+
score,
|
|
252
|
+
evidence,
|
|
253
|
+
critical: false
|
|
254
|
+
};
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Evaluate edge cases
|
|
258
|
+
*/
|
|
259
|
+
async evaluateEdgeCases(intent, approach, toolCalls) {
|
|
260
|
+
const evidence = this.analyzeEdgeCases(approach, toolCalls);
|
|
261
|
+
const score = this.scoreEdgeCases(evidence);
|
|
262
|
+
return {
|
|
263
|
+
name: 'Edge Case Coverage',
|
|
264
|
+
description: 'Handling of boundary conditions and unexpected inputs',
|
|
265
|
+
weight: 7,
|
|
266
|
+
score,
|
|
267
|
+
evidence,
|
|
268
|
+
critical: false
|
|
269
|
+
};
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Evaluate usability
|
|
273
|
+
*/
|
|
274
|
+
async evaluateUsability(intent, approach, toolCalls) {
|
|
275
|
+
const evidence = this.analyzeUsability(approach, toolCalls);
|
|
276
|
+
const score = this.scoreUsability(evidence);
|
|
277
|
+
return {
|
|
278
|
+
name: 'Usability',
|
|
279
|
+
description: 'User experience and ease of use',
|
|
280
|
+
weight: 6,
|
|
281
|
+
score,
|
|
282
|
+
evidence,
|
|
283
|
+
critical: false
|
|
284
|
+
};
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
//# sourceMappingURL=designThoughtCheck.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"designThoughtCheck.js","sourceRoot":"","sources":["../../src/core/designThoughtCheck.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Design Thought Check Engine Implementation
|
|
3
|
+
*
|
|
4
|
+
* Core implementation of the design validation engine that performs
|
|
5
|
+
* comprehensive analysis of implementation decisions.
|
|
6
|
+
*
|
|
7
|
+
* @license MIT
|
|
8
|
+
*/
|
|
9
|
+
import type { ToolCallRequest } from './types.js';
|
|
10
|
+
import type { DesignThoughtCheck, ThoughtCheckOptions } from './designThoughtCheck.js';
|
|
11
|
+
/**
|
|
12
|
+
* Core implementation of the Design Thought Check Engine
|
|
13
|
+
*/
|
|
14
|
+
export declare class DesignThoughtCheckEngineImpl {
|
|
15
|
+
private readonly defaultOptions;
|
|
16
|
+
/**
|
|
17
|
+
* Perform a comprehensive design thought check
|
|
18
|
+
*/
|
|
19
|
+
check(intent: string, approach: string, toolCalls: ToolCallRequest[], options?: ThoughtCheckOptions): Promise<DesignThoughtCheck>;
|
|
20
|
+
/**
|
|
21
|
+
* Validate design against comprehensive criteria
|
|
22
|
+
*/
|
|
23
|
+
private validateDesign;
|
|
24
|
+
/**
|
|
25
|
+
* Evaluate all design criteria
|
|
26
|
+
*/
|
|
27
|
+
private evaluateCriteria;
|
|
28
|
+
private evaluateArchitecturalCoherence;
|
|
29
|
+
private evaluateCodeQuality;
|
|
30
|
+
private evaluateMaintainability;
|
|
31
|
+
private evaluateTestability;
|
|
32
|
+
private evaluatePerformance;
|
|
33
|
+
private evaluateScalability;
|
|
34
|
+
private evaluateSecurity;
|
|
35
|
+
private evaluateErrorHandling;
|
|
36
|
+
private evaluateEdgeCases;
|
|
37
|
+
private evaluateUsability;
|
|
38
|
+
private evaluateDocumentation;
|
|
39
|
+
private evaluateIntegration;
|
|
40
|
+
private evaluateCompatibility;
|
|
41
|
+
private analyzeArchitecturalAlignment;
|
|
42
|
+
private analyzeCodeQuality;
|
|
43
|
+
private analyzeMaintainability;
|
|
44
|
+
private analyzeTestability;
|
|
45
|
+
private analyzePerformance;
|
|
46
|
+
private analyzeScalability;
|
|
47
|
+
private analyzeSecurity;
|
|
48
|
+
private analyzeErrorHandling;
|
|
49
|
+
private analyzeEdgeCases;
|
|
50
|
+
private analyzeUsability;
|
|
51
|
+
private analyzeDocumentation;
|
|
52
|
+
private analyzeIntegration;
|
|
53
|
+
private analyzeCompatibility;
|
|
54
|
+
private scoreArchitecturalCoherence;
|
|
55
|
+
private scoreCodeQuality;
|
|
56
|
+
private scoreMaintainability;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=designThoughtCheckEngine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"designThoughtCheckEngine.d.ts","sourceRoot":"","sources":["../../src/core/designThoughtCheckEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EACV,kBAAkB,EAMlB,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AAEjC;;GAEG;AACH,qBAAa,4BAA4B;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAO7B;IAEF;;OAEG;IACG,KAAK,CACT,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,eAAe,EAAE,EAC5B,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,kBAAkB,CAAC;IAoC9B;;OAEG;YACW,cAAc;IAuB5B;;OAEG;YACW,gBAAgB;YAmChB,8BAA8B;YAkB9B,mBAAmB;YAkBnB,uBAAuB;YAkBvB,mBAAmB;YAkBnB,mBAAmB;YAkBnB,mBAAmB;YAkBnB,gBAAgB;YAkBhB,qBAAqB;YAkBrB,iBAAiB;YAkBjB,iBAAiB;YAkBjB,qBAAqB;YAkBrB,mBAAmB;YAkBnB,qBAAqB;IAmBnC,OAAO,CAAC,6BAA6B;IAQrC,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,sBAAsB;IAM9B,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,2BAA2B;IASnC,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,oBAAoB;CAOwB"}
|