@maestro-ai/mcp-server 2.4.2 → 2.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/flows/onboarding-orchestrator.d.ts +41 -0
- package/dist/flows/onboarding-orchestrator.d.ts.map +1 -0
- package/dist/flows/onboarding-orchestrator.js +399 -0
- package/dist/flows/onboarding-orchestrator.js.map +1 -0
- package/dist/flows/types.d.ts.map +1 -1
- package/dist/flows/types.js +7 -0
- package/dist/flows/types.js.map +1 -1
- package/dist/gates/adaptive-scoring.d.ts +133 -0
- package/dist/gates/adaptive-scoring.d.ts.map +1 -0
- package/dist/gates/adaptive-scoring.js +404 -0
- package/dist/gates/adaptive-scoring.js.map +1 -0
- package/dist/gates/compatibility-wrapper.d.ts +139 -0
- package/dist/gates/compatibility-wrapper.d.ts.map +1 -0
- package/dist/gates/compatibility-wrapper.js +362 -0
- package/dist/gates/compatibility-wrapper.js.map +1 -0
- package/dist/gates/contextual-recommender.d.ts +128 -0
- package/dist/gates/contextual-recommender.d.ts.map +1 -0
- package/dist/gates/contextual-recommender.js +446 -0
- package/dist/gates/contextual-recommender.js.map +1 -0
- package/dist/gates/intelligent-gate-engine.d.ts +158 -0
- package/dist/gates/intelligent-gate-engine.d.ts.map +1 -0
- package/dist/gates/intelligent-gate-engine.js +429 -0
- package/dist/gates/intelligent-gate-engine.js.map +1 -0
- package/dist/gates/intelligent-validator.d.ts +164 -0
- package/dist/gates/intelligent-validator.d.ts.map +1 -0
- package/dist/gates/intelligent-validator.js +347 -0
- package/dist/gates/intelligent-validator.js.map +1 -0
- package/dist/gates/maturity-levels.d.ts +119 -0
- package/dist/gates/maturity-levels.d.ts.map +1 -0
- package/dist/gates/maturity-levels.js +455 -0
- package/dist/gates/maturity-levels.js.map +1 -0
- package/dist/state/storage.d.ts.map +1 -1
- package/dist/state/storage.js +1 -0
- package/dist/state/storage.js.map +1 -1
- package/dist/tests/brainstorm-prd.test.d.ts +5 -0
- package/dist/tests/brainstorm-prd.test.d.ts.map +1 -0
- package/dist/tests/brainstorm-prd.test.js +291 -0
- package/dist/tests/brainstorm-prd.test.js.map +1 -0
- package/dist/tests/migracao-skills.test.d.ts +2 -0
- package/dist/tests/migracao-skills.test.d.ts.map +1 -0
- package/dist/tests/migracao-skills.test.js +208 -0
- package/dist/tests/migracao-skills.test.js.map +1 -0
- package/dist/tests/onboarding-flow.test.d.ts +5 -0
- package/dist/tests/onboarding-flow.test.d.ts.map +1 -0
- package/dist/tests/onboarding-flow.test.js +231 -0
- package/dist/tests/onboarding-flow.test.js.map +1 -0
- package/dist/tests/readiness-dashboard.test.d.ts +5 -0
- package/dist/tests/readiness-dashboard.test.d.ts.map +1 -0
- package/dist/tests/readiness-dashboard.test.js +252 -0
- package/dist/tests/readiness-dashboard.test.js.map +1 -0
- package/dist/tools/brainstorm.d.ts +41 -0
- package/dist/tools/brainstorm.d.ts.map +1 -0
- package/dist/tools/brainstorm.js +429 -0
- package/dist/tools/brainstorm.js.map +1 -0
- package/dist/tools/carregar-projeto.js +1 -1
- package/dist/tools/carregar-projeto.js.map +1 -1
- package/dist/tools/confirmar-stitch.js +1 -1
- package/dist/tools/confirmar-stitch.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +65 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/iniciar-projeto.d.ts +2 -2
- package/dist/tools/iniciar-projeto.d.ts.map +1 -1
- package/dist/tools/iniciar-projeto.js +53 -96
- package/dist/tools/iniciar-projeto.js.map +1 -1
- package/dist/tools/next-steps-dashboard.d.ts +30 -0
- package/dist/tools/next-steps-dashboard.d.ts.map +1 -0
- package/dist/tools/next-steps-dashboard.js +248 -0
- package/dist/tools/next-steps-dashboard.js.map +1 -0
- package/dist/tools/prd-writer.d.ts +36 -0
- package/dist/tools/prd-writer.d.ts.map +1 -0
- package/dist/tools/prd-writer.js +377 -0
- package/dist/tools/prd-writer.js.map +1 -0
- package/dist/tools/proximo.d.ts.map +1 -1
- package/dist/tools/proximo.js +147 -22
- package/dist/tools/proximo.js.map +1 -1
- package/dist/tools/setup-inicial.d.ts +48 -0
- package/dist/tools/setup-inicial.d.ts.map +1 -0
- package/dist/tools/setup-inicial.js +84 -0
- package/dist/tools/setup-inicial.js.map +1 -0
- package/dist/tools/validar-gate.d.ts.map +1 -1
- package/dist/tools/validar-gate.js +28 -28
- package/dist/tools/validar-gate.js.map +1 -1
- package/dist/types/index.d.ts +24 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/onboarding.d.ts +124 -0
- package/dist/types/onboarding.d.ts.map +1 -0
- package/dist/types/onboarding.js +5 -0
- package/dist/types/onboarding.js.map +1 -0
- package/dist/utils/config.d.ts +16 -0
- package/dist/utils/config.d.ts.map +1 -0
- package/dist/utils/config.js +26 -0
- package/dist/utils/config.js.map +1 -0
- package/dist/utils/content-injector.d.ts +1 -0
- package/dist/utils/content-injector.d.ts.map +1 -1
- package/dist/utils/content-injector.js +5 -0
- package/dist/utils/content-injector.js.map +1 -1
- package/dist/utils/discovery-adapter.d.ts +33 -0
- package/dist/utils/discovery-adapter.d.ts.map +1 -0
- package/dist/utils/discovery-adapter.js +392 -0
- package/dist/utils/discovery-adapter.js.map +1 -0
- package/dist/utils/files.d.ts +1 -0
- package/dist/utils/files.d.ts.map +1 -1
- package/dist/utils/files.js +97 -7
- package/dist/utils/files.js.map +1 -1
- package/dist/utils/ide-paths.d.ts.map +1 -1
- package/dist/utils/ide-paths.js +7 -8
- package/dist/utils/ide-paths.js.map +1 -1
- package/dist/utils/inferencia-contextual.d.ts +3 -0
- package/dist/utils/inferencia-contextual.d.ts.map +1 -0
- package/dist/utils/inferencia-contextual.js +93 -0
- package/dist/utils/inferencia-contextual.js.map +1 -0
- package/dist/utils/instructions.d.ts +8 -3
- package/dist/utils/instructions.d.ts.map +1 -1
- package/dist/utils/instructions.js +72 -25
- package/dist/utils/instructions.js.map +1 -1
- package/dist/utils/readiness-checker.d.ts +27 -0
- package/dist/utils/readiness-checker.d.ts.map +1 -0
- package/dist/utils/readiness-checker.js +226 -0
- package/dist/utils/readiness-checker.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,429 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Motor Principal de Gates Inteligentes - Orquestra todos os componentes
|
|
3
|
+
*
|
|
4
|
+
* Este é o ponto de entrada principal que coordena:
|
|
5
|
+
* - IntelligentValidator: Validação contextual semântica
|
|
6
|
+
* - AdaptiveScoring: Scoring dinâmico baseado em contexto
|
|
7
|
+
* - ContextualRecommender: Sugestões inteligentes e acionáveis
|
|
8
|
+
* - MaturityLevelAssessor: Sistema de 5 níveis de maturidade
|
|
9
|
+
*
|
|
10
|
+
* @version 3.0.0
|
|
11
|
+
*/
|
|
12
|
+
import { IntelligentValidator } from "./intelligent-validator.js";
|
|
13
|
+
import { AdaptiveScoring } from "./adaptive-scoring.js";
|
|
14
|
+
import { ContextualRecommender } from "./contextual-recommender.js";
|
|
15
|
+
import { MaturityLevelAssessor } from "./maturity-levels.js";
|
|
16
|
+
/**
|
|
17
|
+
* Motor principal que orquestra todo o sistema de validação inteligente
|
|
18
|
+
*/
|
|
19
|
+
export class IntelligentGateEngine {
|
|
20
|
+
validator;
|
|
21
|
+
scoring;
|
|
22
|
+
recommender;
|
|
23
|
+
maturityAssessor;
|
|
24
|
+
defaultConfig;
|
|
25
|
+
constructor() {
|
|
26
|
+
this.validator = new IntelligentValidator();
|
|
27
|
+
this.scoring = new AdaptiveScoring();
|
|
28
|
+
this.recommender = new ContextualRecommender();
|
|
29
|
+
this.maturityAssessor = new MaturityLevelAssessor();
|
|
30
|
+
this.defaultConfig = {
|
|
31
|
+
enableIntelligentValidation: true,
|
|
32
|
+
enableAdaptiveScoring: true,
|
|
33
|
+
enableContextualRecommendations: true,
|
|
34
|
+
enableMaturityLevels: true,
|
|
35
|
+
fallbackToLegacy: true,
|
|
36
|
+
maxRecommendations: 6
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Método principal - valida entregável usando todo o sistema inteligente
|
|
41
|
+
*/
|
|
42
|
+
async validateDeliverable(content, phase, tier = 'base', projectType = 'internal', config) {
|
|
43
|
+
const startTime = Date.now();
|
|
44
|
+
const finalConfig = { ...this.defaultConfig, ...config };
|
|
45
|
+
try {
|
|
46
|
+
// 1. Constrói contexto de validação
|
|
47
|
+
const context = this.buildValidationContext(phase, tier, projectType, finalConfig);
|
|
48
|
+
// 2. Executa validação inteligente
|
|
49
|
+
const validationResult = await this.executeIntelligentValidation(content, context, finalConfig);
|
|
50
|
+
// 3. Calcula score adaptativo
|
|
51
|
+
const adaptiveScore = await this.calculateAdaptiveScore(validationResult, context, finalConfig);
|
|
52
|
+
// 4. Avalia nível de maturidade
|
|
53
|
+
const maturityAssessment = await this.assessMaturityLevel(validationResult, adaptiveScore, context, finalConfig);
|
|
54
|
+
// 5. Gera recomendações contextuais
|
|
55
|
+
const enhancedRecommendations = await this.generateEnhancedRecommendations(validationResult, adaptiveScore, context, finalConfig);
|
|
56
|
+
// 6. Compila resultado final
|
|
57
|
+
const result = this.compileIntelligentResult(validationResult, adaptiveScore, maturityAssessment, enhancedRecommendations, context, Date.now() - startTime);
|
|
58
|
+
// 7. Registra para aprendizado futuro
|
|
59
|
+
this.recordForLearning(result, context, finalConfig);
|
|
60
|
+
return result;
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
// Fallback para sistema legado se configurado
|
|
64
|
+
if (finalConfig.fallbackToLegacy) {
|
|
65
|
+
return this.fallbackToLegacySystem(content, phase, tier);
|
|
66
|
+
}
|
|
67
|
+
throw error;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Valida com feedback em tempo real (streaming)
|
|
72
|
+
*/
|
|
73
|
+
async validateWithRealTimeFeedback(content, context, onProgress) {
|
|
74
|
+
onProgress({ stage: 'initializing', progress: 0, message: 'Iniciando validação inteligente...' });
|
|
75
|
+
// Validação semântica
|
|
76
|
+
onProgress({ stage: 'semantic_analysis', progress: 20, message: 'Analisando conceitos e semântica...' });
|
|
77
|
+
const validationResult = this.validator.validateContent(content, context);
|
|
78
|
+
// Scoring adaptativo
|
|
79
|
+
onProgress({ stage: 'adaptive_scoring', progress: 40, message: 'Calculando score adaptativo...' });
|
|
80
|
+
const adaptiveScore = this.scoring.calculateMultiDimensionalScore(validationResult.semanticMatches, validationResult.completenessAnalysis, validationResult.qualityAssessment, context);
|
|
81
|
+
// Avaliação de maturidade
|
|
82
|
+
onProgress({ stage: 'maturity_assessment', progress: 60, message: 'Avaliando nível de maturidade...' });
|
|
83
|
+
const maturityAssessment = this.maturityAssessor.assessMaturityLevel(validationResult, adaptiveScore, context);
|
|
84
|
+
// Recomendações
|
|
85
|
+
onProgress({ stage: 'recommendations', progress: 80, message: 'Gerando recomendações inteligentes...' });
|
|
86
|
+
const recommendations = this.recommender.generateSmartRecommendations(validationResult.semanticMatches, validationResult.completenessAnalysis, validationResult.qualityAssessment, adaptiveScore, context);
|
|
87
|
+
// Finalização
|
|
88
|
+
onProgress({ stage: 'finalizing', progress: 100, message: 'Compilando resultado final...' });
|
|
89
|
+
return this.compileIntelligentResult({ ...validationResult, recommendations }, adaptiveScore, maturityAssessment, recommendations, context, 0);
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Executa apenas análise rápida (para preview)
|
|
93
|
+
*/
|
|
94
|
+
quickAnalysis(content, phase, tier = 'base') {
|
|
95
|
+
const context = this.buildValidationContext(phase, tier, 'internal', this.defaultConfig);
|
|
96
|
+
// Análise rápida sem processamento completo
|
|
97
|
+
const semanticMatches = this.validator.validateSemanticContent(content, this.getExpectedConcepts(phase));
|
|
98
|
+
const quickScore = this.calculateQuickScore(content, semanticMatches);
|
|
99
|
+
const estimatedLevel = this.estimateMaturityLevel(quickScore);
|
|
100
|
+
return {
|
|
101
|
+
estimatedLevel,
|
|
102
|
+
quickScore,
|
|
103
|
+
canLikelyAdvance: estimatedLevel >= 2,
|
|
104
|
+
majorIssues: this.identifyMajorIssues(content, semanticMatches),
|
|
105
|
+
quickWins: this.identifyQuickWins(content, semanticMatches)
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Registra feedback do usuário para aprendizado
|
|
110
|
+
*/
|
|
111
|
+
recordUserFeedback(resultId, userAccepted, actualTimeSpent, userComments, recommendationsUsed) {
|
|
112
|
+
// Implementação de aprendizado baseado em feedback
|
|
113
|
+
// Atualiza modelos internos para melhorar futuras validações
|
|
114
|
+
if (this.scoring) {
|
|
115
|
+
// Atualiza pesos do scoring baseado na aceitação
|
|
116
|
+
// this.scoring.updateWeightsFromFeedback(...);
|
|
117
|
+
}
|
|
118
|
+
if (this.recommender && recommendationsUsed) {
|
|
119
|
+
// Atualiza efetividade das recomendações
|
|
120
|
+
// this.recommender.updateFromFeedback(...);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Constrói contexto de validação
|
|
125
|
+
*/
|
|
126
|
+
buildValidationContext(phase, tier, projectType, config) {
|
|
127
|
+
return {
|
|
128
|
+
projectType,
|
|
129
|
+
teamExperience: this.inferTeamExperience(config.userProfile),
|
|
130
|
+
timeConstraints: this.inferTimeConstraints(config),
|
|
131
|
+
businessCriticality: this.mapProjectTypeToCriticality(projectType),
|
|
132
|
+
iterationStage: 'refinement', // Padrão
|
|
133
|
+
phase,
|
|
134
|
+
tier
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Executa validação inteligente
|
|
139
|
+
*/
|
|
140
|
+
async executeIntelligentValidation(content, context, config) {
|
|
141
|
+
if (!config.enableIntelligentValidation) {
|
|
142
|
+
// Fallback básico se desabilitado
|
|
143
|
+
return this.createBasicValidationResult(content, context);
|
|
144
|
+
}
|
|
145
|
+
return this.validator.validateContent(content, context);
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Calcula score adaptativo
|
|
149
|
+
*/
|
|
150
|
+
async calculateAdaptiveScore(validationResult, context, config) {
|
|
151
|
+
if (!config.enableAdaptiveScoring) {
|
|
152
|
+
// Fallback para score simples
|
|
153
|
+
return this.createBasicScore(validationResult);
|
|
154
|
+
}
|
|
155
|
+
return this.scoring.calculateMultiDimensionalScore(validationResult.semanticMatches, validationResult.completenessAnalysis, validationResult.qualityAssessment, context, config.projectHistory);
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Avalia nível de maturidade
|
|
159
|
+
*/
|
|
160
|
+
async assessMaturityLevel(validationResult, adaptiveScore, context, config) {
|
|
161
|
+
if (!config.enableMaturityLevels) {
|
|
162
|
+
// Fallback para avaliação binária
|
|
163
|
+
return this.createBasicMaturityAssessment(adaptiveScore);
|
|
164
|
+
}
|
|
165
|
+
return this.maturityAssessor.assessMaturityLevel(validationResult, adaptiveScore, context);
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Gera recomendações aprimoradas
|
|
169
|
+
*/
|
|
170
|
+
async generateEnhancedRecommendations(validationResult, adaptiveScore, context, config) {
|
|
171
|
+
if (!config.enableContextualRecommendations) {
|
|
172
|
+
return validationResult.recommendations;
|
|
173
|
+
}
|
|
174
|
+
const recommendationConfig = {
|
|
175
|
+
maxRecommendations: config.maxRecommendations,
|
|
176
|
+
priorityThreshold: 0.3,
|
|
177
|
+
includeOptional: true,
|
|
178
|
+
includeAutoFixes: true
|
|
179
|
+
};
|
|
180
|
+
return this.recommender.generateSmartRecommendations(validationResult.semanticMatches, validationResult.completenessAnalysis, validationResult.qualityAssessment, adaptiveScore, context, config.userProfile, recommendationConfig);
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Compila resultado final inteligente
|
|
184
|
+
*/
|
|
185
|
+
compileIntelligentResult(validationResult, adaptiveScore, maturityAssessment, recommendations, context, processingTimeMs) {
|
|
186
|
+
const summary = this.generateResultSummary(maturityAssessment, adaptiveScore, recommendations);
|
|
187
|
+
const userFeedback = this.generateUserFeedbackOptions(maturityAssessment, recommendations, context);
|
|
188
|
+
return {
|
|
189
|
+
canAdvance: maturityAssessment.canAdvance,
|
|
190
|
+
maturityLevel: maturityAssessment.level,
|
|
191
|
+
overallScore: adaptiveScore.final,
|
|
192
|
+
validationResult: { ...validationResult, recommendations },
|
|
193
|
+
adaptiveScore,
|
|
194
|
+
maturityAssessment,
|
|
195
|
+
summary,
|
|
196
|
+
userFeedback,
|
|
197
|
+
engineVersion: '3.0.0',
|
|
198
|
+
processingTimeMs,
|
|
199
|
+
confidenceLevel: adaptiveScore.confidence
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Gera resumo do resultado para apresentação
|
|
204
|
+
*/
|
|
205
|
+
generateResultSummary(maturityAssessment, adaptiveScore, recommendations) {
|
|
206
|
+
const level = maturityAssessment.level;
|
|
207
|
+
const canAdvance = maturityAssessment.canAdvance;
|
|
208
|
+
let status;
|
|
209
|
+
let statusIcon;
|
|
210
|
+
let statusColor;
|
|
211
|
+
let mainMessage;
|
|
212
|
+
if (canAdvance && level >= 3) {
|
|
213
|
+
status = 'approved';
|
|
214
|
+
statusIcon = '✅';
|
|
215
|
+
statusColor = 'green';
|
|
216
|
+
mainMessage = `Padrão profissional atingido (Nível ${level}) - Aprovado para avanço`;
|
|
217
|
+
}
|
|
218
|
+
else if (canAdvance && level >= 2) {
|
|
219
|
+
status = 'conditionally_approved';
|
|
220
|
+
statusIcon = '⚡';
|
|
221
|
+
statusColor = 'yellow';
|
|
222
|
+
mainMessage = `Estrutura básica presente (Nível ${level}) - Pode avançar com melhorias incrementais`;
|
|
223
|
+
}
|
|
224
|
+
else if (level === 1 && recommendations.length > 0) {
|
|
225
|
+
status = 'needs_improvement';
|
|
226
|
+
statusIcon = '🔄';
|
|
227
|
+
statusColor = 'orange';
|
|
228
|
+
mainMessage = `Conceito inicial (Nível ${level}) - Melhorias necessárias antes do avanço`;
|
|
229
|
+
}
|
|
230
|
+
else {
|
|
231
|
+
status = 'blocked';
|
|
232
|
+
statusIcon = '❌';
|
|
233
|
+
statusColor = 'red';
|
|
234
|
+
mainMessage = `Bloqueado por problemas críticos - Revisão necessária`;
|
|
235
|
+
}
|
|
236
|
+
const priorityActions = recommendations
|
|
237
|
+
.filter(r => r.type === 'critical' || r.priority > 0.7)
|
|
238
|
+
.slice(0, 3)
|
|
239
|
+
.map(r => r.title);
|
|
240
|
+
const estimatedEffortHours = recommendations
|
|
241
|
+
.reduce((total, r) => total + (r.estimatedTimeMinutes || 0), 0) / 60;
|
|
242
|
+
return {
|
|
243
|
+
title: `${statusIcon} Nível ${level} - ${maturityAssessment.levelDescription}`,
|
|
244
|
+
status,
|
|
245
|
+
statusIcon,
|
|
246
|
+
statusColor,
|
|
247
|
+
mainMessage,
|
|
248
|
+
keyStrengths: maturityAssessment.strengths,
|
|
249
|
+
priorityActions,
|
|
250
|
+
nextSteps: maturityAssessment.recommendedActions.map(a => a.description),
|
|
251
|
+
estimatedEffortHours: Math.round(estimatedEffortHours * 10) / 10
|
|
252
|
+
};
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* Gera opções de feedback para o usuário
|
|
256
|
+
*/
|
|
257
|
+
generateUserFeedbackOptions(maturityAssessment, recommendations, context) {
|
|
258
|
+
const quickActions = [];
|
|
259
|
+
// Ação principal baseada na avaliação
|
|
260
|
+
if (maturityAssessment.canAdvance) {
|
|
261
|
+
quickActions.push({
|
|
262
|
+
id: 'advance',
|
|
263
|
+
label: `Avançar (Nível ${maturityAssessment.level})`,
|
|
264
|
+
type: 'advance',
|
|
265
|
+
estimatedMinutes: 0,
|
|
266
|
+
confidence: 0.9
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
// Auto-fixes disponíveis
|
|
270
|
+
const autoFixRecommendations = recommendations.filter(r => r.autofix);
|
|
271
|
+
if (autoFixRecommendations.length > 0) {
|
|
272
|
+
quickActions.push({
|
|
273
|
+
id: 'autofix',
|
|
274
|
+
label: `Aplicar ${autoFixRecommendations.length} correção(ões) automática(s)`,
|
|
275
|
+
type: 'autofix',
|
|
276
|
+
estimatedMinutes: 5,
|
|
277
|
+
confidence: 0.8
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
// Iterar com melhorias rápidas
|
|
281
|
+
const quickWins = recommendations.filter(r => r.effort === 'quick');
|
|
282
|
+
if (quickWins.length > 0) {
|
|
283
|
+
quickActions.push({
|
|
284
|
+
id: 'iterate',
|
|
285
|
+
label: `Implementar ${quickWins.length} melhoria(s) rápida(s)`,
|
|
286
|
+
type: 'iterate',
|
|
287
|
+
estimatedMinutes: quickWins.length * 10,
|
|
288
|
+
confidence: 0.7
|
|
289
|
+
});
|
|
290
|
+
}
|
|
291
|
+
return {
|
|
292
|
+
quickActions,
|
|
293
|
+
detailsAvailable: true,
|
|
294
|
+
canForceAdvance: context.projectType === 'poc' || context.timeConstraints === 'tight',
|
|
295
|
+
canRequestHumanReview: context.businessCriticality === 'critical',
|
|
296
|
+
feedbackPrompts: this.generateFeedbackPrompts(maturityAssessment, context)
|
|
297
|
+
};
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Gera prompts de feedback para aprendizado
|
|
301
|
+
*/
|
|
302
|
+
generateFeedbackPrompts(maturityAssessment, context) {
|
|
303
|
+
const prompts = [];
|
|
304
|
+
// Se o nível está abaixo do esperado
|
|
305
|
+
if (maturityAssessment.level < 3) {
|
|
306
|
+
prompts.push({
|
|
307
|
+
question: 'Esta avaliação reflete suas expectativas para este tipo de projeto?',
|
|
308
|
+
options: ['Sim, está adequada', 'Muito rigorosa', 'Pouco rigorosa'],
|
|
309
|
+
purpose: 'Calibrar rigor por tipo de projeto'
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
// Se há muitas recomendações
|
|
313
|
+
if (maturityAssessment.recommendedActions.length > 3) {
|
|
314
|
+
prompts.push({
|
|
315
|
+
question: 'Quais recomendações são mais úteis para você?',
|
|
316
|
+
options: ['As primeiras 3', 'Todas são relevantes', 'Prefiro menos recomendações'],
|
|
317
|
+
purpose: 'Otimizar quantidade e relevância das recomendações'
|
|
318
|
+
});
|
|
319
|
+
}
|
|
320
|
+
return prompts;
|
|
321
|
+
}
|
|
322
|
+
// Métodos de fallback e utilitários
|
|
323
|
+
async fallbackToLegacySystem(content, phase, tier) {
|
|
324
|
+
// Implementação simplificada para fallback
|
|
325
|
+
const basicScore = content.length > 100 ? 70 : 40;
|
|
326
|
+
const level = basicScore >= 70 ? 3 : 2;
|
|
327
|
+
return {
|
|
328
|
+
canAdvance: level >= 2,
|
|
329
|
+
maturityLevel: level,
|
|
330
|
+
overallScore: basicScore,
|
|
331
|
+
validationResult: this.createBasicValidationResult(content, this.buildValidationContext(phase, tier, 'internal', this.defaultConfig)),
|
|
332
|
+
adaptiveScore: this.createBasicScore({}),
|
|
333
|
+
maturityAssessment: this.createBasicMaturityAssessment({ final: basicScore }),
|
|
334
|
+
summary: {
|
|
335
|
+
title: `Nível ${level} - Sistema Legado`,
|
|
336
|
+
status: 'conditionally_approved',
|
|
337
|
+
statusIcon: '⚡',
|
|
338
|
+
statusColor: 'yellow',
|
|
339
|
+
mainMessage: 'Validação usando sistema legado',
|
|
340
|
+
keyStrengths: ['Conteúdo presente'],
|
|
341
|
+
priorityActions: ['Migrar para sistema inteligente'],
|
|
342
|
+
nextSteps: ['Avançar com cautela'],
|
|
343
|
+
estimatedEffortHours: 0.5
|
|
344
|
+
},
|
|
345
|
+
userFeedback: {
|
|
346
|
+
quickActions: [],
|
|
347
|
+
detailsAvailable: false,
|
|
348
|
+
canForceAdvance: true,
|
|
349
|
+
canRequestHumanReview: false,
|
|
350
|
+
feedbackPrompts: []
|
|
351
|
+
},
|
|
352
|
+
engineVersion: '2.x-legacy',
|
|
353
|
+
processingTimeMs: 50,
|
|
354
|
+
confidenceLevel: 60
|
|
355
|
+
};
|
|
356
|
+
}
|
|
357
|
+
// Métodos auxiliares placeholder
|
|
358
|
+
inferTeamExperience(userProfile) {
|
|
359
|
+
return userProfile?.experienceLevel || 'mid';
|
|
360
|
+
}
|
|
361
|
+
inferTimeConstraints(config) {
|
|
362
|
+
return 'normal'; // Padrão
|
|
363
|
+
}
|
|
364
|
+
mapProjectTypeToCriticality(projectType) {
|
|
365
|
+
const map = { poc: 'low', internal: 'medium', product: 'high', critical: 'critical' };
|
|
366
|
+
return map[projectType] || 'medium';
|
|
367
|
+
}
|
|
368
|
+
getExpectedConcepts(phase) {
|
|
369
|
+
const map = {
|
|
370
|
+
'Produto': ['problema', 'persona', 'mvp'],
|
|
371
|
+
'Requisitos': ['requisitos', 'criterios'],
|
|
372
|
+
'UX Design': ['wireframes', 'jornadas']
|
|
373
|
+
};
|
|
374
|
+
return map[phase.nome] || [];
|
|
375
|
+
}
|
|
376
|
+
calculateQuickScore(content, semanticMatches) {
|
|
377
|
+
const baseScore = Math.min((content.length / 500) * 50, 50);
|
|
378
|
+
const semanticScore = semanticMatches.length > 0 ? 30 : 0;
|
|
379
|
+
return Math.round(baseScore + semanticScore);
|
|
380
|
+
}
|
|
381
|
+
estimateMaturityLevel(score) {
|
|
382
|
+
if (score >= 80)
|
|
383
|
+
return 4;
|
|
384
|
+
if (score >= 65)
|
|
385
|
+
return 3;
|
|
386
|
+
if (score >= 40)
|
|
387
|
+
return 2;
|
|
388
|
+
return 1;
|
|
389
|
+
}
|
|
390
|
+
identifyMajorIssues(content, semanticMatches) {
|
|
391
|
+
const issues = [];
|
|
392
|
+
if (content.length < 100)
|
|
393
|
+
issues.push('Conteúdo muito curto');
|
|
394
|
+
if (semanticMatches.length === 0)
|
|
395
|
+
issues.push('Conceitos essenciais não identificados');
|
|
396
|
+
return issues;
|
|
397
|
+
}
|
|
398
|
+
identifyQuickWins(content, semanticMatches) {
|
|
399
|
+
const wins = [];
|
|
400
|
+
if (content.length > 200)
|
|
401
|
+
wins.push('Boa quantidade de conteúdo');
|
|
402
|
+
if (semanticMatches.length > 0)
|
|
403
|
+
wins.push('Alguns conceitos identificados');
|
|
404
|
+
return wins;
|
|
405
|
+
}
|
|
406
|
+
createBasicValidationResult(content, context) {
|
|
407
|
+
// Implementação básica para fallback
|
|
408
|
+
return {};
|
|
409
|
+
}
|
|
410
|
+
createBasicScore(validationResult) {
|
|
411
|
+
// Implementação básica para fallback
|
|
412
|
+
return { final: 70, confidence: 60 };
|
|
413
|
+
}
|
|
414
|
+
createBasicMaturityAssessment(adaptiveScore) {
|
|
415
|
+
// Implementação básica para fallback
|
|
416
|
+
return {
|
|
417
|
+
level: 2,
|
|
418
|
+
canAdvance: true,
|
|
419
|
+
levelDescription: 'Estrutura Básica',
|
|
420
|
+
strengths: ['Conteúdo presente'],
|
|
421
|
+
improvementAreas: ['Qualidade pode melhorar']
|
|
422
|
+
};
|
|
423
|
+
}
|
|
424
|
+
recordForLearning(result, context, config) {
|
|
425
|
+
// Registra dados para aprendizado futuro
|
|
426
|
+
// Implementação futura
|
|
427
|
+
}
|
|
428
|
+
}
|
|
429
|
+
//# sourceMappingURL=intelligent-gate-engine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intelligent-gate-engine.js","sourceRoot":"","sources":["../../src/gates/intelligent-gate-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sistema de Validação Inteligente - Substitui validação baseada em regex
|
|
3
|
+
*
|
|
4
|
+
* Features principais:
|
|
5
|
+
* - Validação semântica contextual
|
|
6
|
+
* - Análise de completude inteligente
|
|
7
|
+
* - Detecção de qualidade real
|
|
8
|
+
* - Adaptação por contexto de projeto
|
|
9
|
+
*
|
|
10
|
+
* @version 3.0.0
|
|
11
|
+
*/
|
|
12
|
+
import type { TierGate, Fase } from "../types/index.js";
|
|
13
|
+
export interface ValidationContext {
|
|
14
|
+
projectType: 'poc' | 'internal' | 'product' | 'critical';
|
|
15
|
+
teamExperience: 'junior' | 'mid' | 'senior';
|
|
16
|
+
timeConstraints: 'tight' | 'normal' | 'flexible';
|
|
17
|
+
businessCriticality: 'low' | 'medium' | 'high' | 'critical';
|
|
18
|
+
iterationStage: 'initial' | 'refinement' | 'final';
|
|
19
|
+
phase: Fase;
|
|
20
|
+
tier: TierGate;
|
|
21
|
+
}
|
|
22
|
+
export interface SemanticMatch {
|
|
23
|
+
concept: string;
|
|
24
|
+
found: boolean;
|
|
25
|
+
confidence: number;
|
|
26
|
+
location?: string;
|
|
27
|
+
suggestions?: string[];
|
|
28
|
+
}
|
|
29
|
+
export interface CompletenessAnalysis {
|
|
30
|
+
totalExpectedElements: number;
|
|
31
|
+
foundElements: number;
|
|
32
|
+
missingCritical: string[];
|
|
33
|
+
missingOptional: string[];
|
|
34
|
+
completenessScore: number;
|
|
35
|
+
structuralIntegrity: number;
|
|
36
|
+
}
|
|
37
|
+
export interface QualityAssessment {
|
|
38
|
+
clarity: number;
|
|
39
|
+
depth: number;
|
|
40
|
+
coherence: number;
|
|
41
|
+
practicality: number;
|
|
42
|
+
completeness: number;
|
|
43
|
+
overall: number;
|
|
44
|
+
}
|
|
45
|
+
export interface IntelligentValidationResult {
|
|
46
|
+
isValid: boolean;
|
|
47
|
+
maturityLevel: 1 | 2 | 3 | 4 | 5;
|
|
48
|
+
canAdvance: boolean;
|
|
49
|
+
semanticMatches: SemanticMatch[];
|
|
50
|
+
completenessAnalysis: CompletenessAnalysis;
|
|
51
|
+
qualityAssessment: QualityAssessment;
|
|
52
|
+
adaptiveScore: number;
|
|
53
|
+
recommendations: SmartRecommendation[];
|
|
54
|
+
blockers: ValidationBlocker[];
|
|
55
|
+
warnings: ValidationWarning[];
|
|
56
|
+
contextAdaptations: string[];
|
|
57
|
+
}
|
|
58
|
+
export interface SmartRecommendation {
|
|
59
|
+
id: string;
|
|
60
|
+
type: 'critical' | 'improvement' | 'enhancement' | 'optional';
|
|
61
|
+
priority: number;
|
|
62
|
+
impact: 'high' | 'medium' | 'low';
|
|
63
|
+
effort: 'quick' | 'moderate' | 'complex';
|
|
64
|
+
title: string;
|
|
65
|
+
description: string;
|
|
66
|
+
examples?: string[];
|
|
67
|
+
autofix?: AutofixAction;
|
|
68
|
+
estimatedTimeMinutes?: number;
|
|
69
|
+
}
|
|
70
|
+
export interface AutofixAction {
|
|
71
|
+
type: 'append' | 'replace' | 'insert' | 'restructure';
|
|
72
|
+
target: string;
|
|
73
|
+
content: string;
|
|
74
|
+
confidence: number;
|
|
75
|
+
}
|
|
76
|
+
export interface ValidationBlocker {
|
|
77
|
+
id: string;
|
|
78
|
+
severity: 'critical';
|
|
79
|
+
message: string;
|
|
80
|
+
requirement: string;
|
|
81
|
+
howToFix: string;
|
|
82
|
+
examples: string[];
|
|
83
|
+
}
|
|
84
|
+
export interface ValidationWarning {
|
|
85
|
+
id: string;
|
|
86
|
+
severity: 'warning' | 'info';
|
|
87
|
+
message: string;
|
|
88
|
+
suggestion: string;
|
|
89
|
+
impact: string;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Core do novo sistema de validação inteligente
|
|
93
|
+
*/
|
|
94
|
+
export declare class IntelligentValidator {
|
|
95
|
+
private semanticPatterns;
|
|
96
|
+
private qualityIndicators;
|
|
97
|
+
private contextualWeights;
|
|
98
|
+
constructor();
|
|
99
|
+
/**
|
|
100
|
+
* Valida conteúdo usando inteligência contextual
|
|
101
|
+
*/
|
|
102
|
+
validateContent(content: string, context: ValidationContext): IntelligentValidationResult;
|
|
103
|
+
/**
|
|
104
|
+
* Validação semântica contextual - substitui regex simples
|
|
105
|
+
*/
|
|
106
|
+
validateSemanticContent(content: string, expectedConcepts: string[]): SemanticMatch[];
|
|
107
|
+
/**
|
|
108
|
+
* Análise de completude inteligente - considera contexto
|
|
109
|
+
*/
|
|
110
|
+
analyzeCompleteness(content: string, context: ValidationContext): CompletenessAnalysis;
|
|
111
|
+
/**
|
|
112
|
+
* Avaliação de qualidade multi-dimensional
|
|
113
|
+
*/
|
|
114
|
+
assessQuality(content: string, criteria: QualityCriteria): QualityAssessment;
|
|
115
|
+
/**
|
|
116
|
+
* Score adaptativo baseado no contexto
|
|
117
|
+
*/
|
|
118
|
+
private calculateAdaptiveScore;
|
|
119
|
+
/**
|
|
120
|
+
* Determina nível de maturidade (1-5)
|
|
121
|
+
*/
|
|
122
|
+
private determineMaturityLevel;
|
|
123
|
+
/**
|
|
124
|
+
* Inicialização dos padrões semânticos
|
|
125
|
+
*/
|
|
126
|
+
private initializePatterns;
|
|
127
|
+
/**
|
|
128
|
+
* Inicialização dos indicadores de qualidade
|
|
129
|
+
*/
|
|
130
|
+
private initializeQualityIndicators;
|
|
131
|
+
/**
|
|
132
|
+
* Inicialização dos pesos contextuais
|
|
133
|
+
*/
|
|
134
|
+
private initializeContextualWeights;
|
|
135
|
+
private normalizeContent;
|
|
136
|
+
private getExpectedConcepts;
|
|
137
|
+
private getConceptSynonyms;
|
|
138
|
+
private getSuggestions;
|
|
139
|
+
private extractContext;
|
|
140
|
+
private findSynonymContext;
|
|
141
|
+
private getExpectedElements;
|
|
142
|
+
private analyzeStructure;
|
|
143
|
+
private isElementPresent;
|
|
144
|
+
private assessClarity;
|
|
145
|
+
private assessDepth;
|
|
146
|
+
private assessCoherence;
|
|
147
|
+
private assessPracticality;
|
|
148
|
+
private assessCompleteness;
|
|
149
|
+
private getQualityCriteria;
|
|
150
|
+
private getAdaptiveWeights;
|
|
151
|
+
private calculateSemanticScore;
|
|
152
|
+
private getMaturityThresholds;
|
|
153
|
+
private generateRecommendations;
|
|
154
|
+
private identifyIssues;
|
|
155
|
+
private canAdvanceToNextPhase;
|
|
156
|
+
private getContextAdaptations;
|
|
157
|
+
}
|
|
158
|
+
interface QualityCriteria {
|
|
159
|
+
domain: string;
|
|
160
|
+
complexity: string;
|
|
161
|
+
audience: string;
|
|
162
|
+
}
|
|
163
|
+
export {};
|
|
164
|
+
//# sourceMappingURL=intelligent-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intelligent-validator.d.ts","sourceRoot":"","sources":["../../src/gates/intelligent-validator.ts"],"names":[],"mappings":"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"}
|