@maestro-ai/mcp-server 5.4.5 → 5.5.1
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/README.md +68 -83
- package/dist/content/rules/RULES.md +14 -0
- package/dist/core/metrics/MetricsCollector.d.ts +28 -12
- package/dist/core/metrics/MetricsCollector.d.ts.map +1 -1
- package/dist/core/metrics/MetricsCollector.js +151 -12
- package/dist/core/metrics/MetricsCollector.js.map +1 -1
- package/dist/core/validation/ValidationPipeline.d.ts +24 -2
- package/dist/core/validation/ValidationPipeline.d.ts.map +1 -1
- package/dist/core/validation/ValidationPipeline.js +46 -2
- package/dist/core/validation/ValidationPipeline.js.map +1 -1
- package/dist/core/validation/layers/DeliverableValidator.d.ts +13 -0
- package/dist/core/validation/layers/DeliverableValidator.d.ts.map +1 -0
- package/dist/core/validation/layers/DeliverableValidator.js +276 -0
- package/dist/core/validation/layers/DeliverableValidator.js.map +1 -0
- package/dist/flows/onboarding-orchestrator.js +5 -5
- package/dist/flows/onboarding-orchestrator.js.map +1 -1
- package/dist/gates/contextual-recommender.d.ts.map +1 -1
- package/dist/gates/contextual-recommender.js +260 -1
- package/dist/gates/contextual-recommender.js.map +1 -1
- package/dist/gates/validator.d.ts +5 -6
- package/dist/gates/validator.d.ts.map +1 -1
- package/dist/gates/validator.js +9 -6
- package/dist/gates/validator.js.map +1 -1
- package/dist/handlers/shared-prompt-handler.d.ts.map +1 -1
- package/dist/handlers/shared-prompt-handler.js +15 -14
- package/dist/handlers/shared-prompt-handler.js.map +1 -1
- package/dist/middleware/adr-generation.middleware.d.ts +5 -0
- package/dist/middleware/adr-generation.middleware.d.ts.map +1 -0
- package/dist/middleware/adr-generation.middleware.js +214 -0
- package/dist/middleware/adr-generation.middleware.js.map +1 -0
- package/dist/middleware/flow-engine.middleware.d.ts +5 -3
- package/dist/middleware/flow-engine.middleware.d.ts.map +1 -1
- package/dist/middleware/flow-engine.middleware.js +18 -10
- package/dist/middleware/flow-engine.middleware.js.map +1 -1
- package/dist/middleware/index.d.ts +18 -11
- package/dist/middleware/index.d.ts.map +1 -1
- package/dist/middleware/index.js +24 -11
- package/dist/middleware/index.js.map +1 -1
- package/dist/middleware/orchestration-pipeline.middleware.d.ts +42 -0
- package/dist/middleware/orchestration-pipeline.middleware.d.ts.map +1 -0
- package/dist/middleware/orchestration-pipeline.middleware.js +57 -0
- package/dist/middleware/orchestration-pipeline.middleware.js.map +1 -0
- package/dist/middleware/skill-injection.middleware.d.ts.map +1 -1
- package/dist/middleware/skill-injection.middleware.js +6 -9
- package/dist/middleware/skill-injection.middleware.js.map +1 -1
- package/dist/middleware/validation.middleware.d.ts +11 -0
- package/dist/middleware/validation.middleware.d.ts.map +1 -1
- package/dist/middleware/validation.middleware.js +64 -4
- package/dist/middleware/validation.middleware.js.map +1 -1
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +20 -14
- package/dist/router.js.map +1 -1
- package/dist/services/flow-engine.d.ts +1 -0
- package/dist/services/flow-engine.d.ts.map +1 -1
- package/dist/services/flow-engine.js +22 -10
- package/dist/services/flow-engine.js.map +1 -1
- package/dist/services/watcher.service.d.ts +45 -0
- package/dist/services/watcher.service.d.ts.map +1 -0
- package/dist/services/watcher.service.js +106 -0
- package/dist/services/watcher.service.js.map +1 -0
- package/dist/state/context.d.ts +15 -4
- package/dist/state/context.d.ts.map +1 -1
- package/dist/state/context.js +36 -9
- package/dist/state/context.js.map +1 -1
- package/dist/state/storage.d.ts.map +1 -1
- package/dist/state/storage.js +6 -0
- package/dist/state/storage.js.map +1 -1
- package/dist/tests/aprovar-gate.test.d.ts +2 -0
- package/dist/tests/aprovar-gate.test.d.ts.map +1 -0
- package/dist/tests/aprovar-gate.test.js +113 -0
- package/dist/tests/aprovar-gate.test.js.map +1 -0
- package/dist/tests/deliverable-validator.test.d.ts +12 -0
- package/dist/tests/deliverable-validator.test.d.ts.map +1 -0
- package/dist/tests/deliverable-validator.test.js +214 -0
- package/dist/tests/deliverable-validator.test.js.map +1 -0
- package/dist/tests/flow-engine.test.d.ts +2 -0
- package/dist/tests/flow-engine.test.d.ts.map +1 -0
- package/dist/tests/flow-engine.test.js +85 -0
- package/dist/tests/flow-engine.test.js.map +1 -0
- package/dist/tests/gate-orientation.test.d.ts +2 -0
- package/dist/tests/gate-orientation.test.d.ts.map +1 -0
- package/dist/tests/gate-orientation.test.js +59 -0
- package/dist/tests/gate-orientation.test.js.map +1 -0
- package/dist/tests/middleware.test.js +30 -4
- package/dist/tests/middleware.test.js.map +1 -1
- package/dist/tests/watcher.service.test.d.ts +2 -0
- package/dist/tests/watcher.service.test.d.ts.map +1 -0
- package/dist/tests/watcher.service.test.js +119 -0
- package/dist/tests/watcher.service.test.js.map +1 -0
- package/dist/tools/aprovar-gate.d.ts.map +1 -1
- package/dist/tools/aprovar-gate.js +4 -0
- package/dist/tools/aprovar-gate.js.map +1 -1
- package/dist/tools/contexto.d.ts.map +1 -1
- package/dist/tools/contexto.js +41 -0
- package/dist/tools/contexto.js.map +1 -1
- package/dist/tools/iniciar-projeto.d.ts.map +1 -1
- package/dist/tools/iniciar-projeto.js +6 -40
- package/dist/tools/iniciar-projeto.js.map +1 -1
- package/dist/tools/maestro-tool.d.ts.map +1 -1
- package/dist/tools/maestro-tool.js +34 -14
- package/dist/tools/maestro-tool.js.map +1 -1
- package/dist/tools/proximo.d.ts.map +1 -1
- package/dist/tools/proximo.js +224 -71
- package/dist/tools/proximo.js.map +1 -1
- package/dist/tools/status.d.ts.map +1 -1
- package/dist/tools/status.js +27 -0
- package/dist/tools/status.js.map +1 -1
- package/dist/tools/validar-gate.d.ts +8 -1
- package/dist/tools/validar-gate.d.ts.map +1 -1
- package/dist/tools/validar-gate.js +147 -99
- package/dist/tools/validar-gate.js.map +1 -1
- package/dist/types/config.d.ts +2 -0
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/config.js +2 -0
- package/dist/types/config.js.map +1 -1
- package/dist/types/index.d.ts +6 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/utils/gate-orientation.d.ts +11 -0
- package/dist/utils/gate-orientation.d.ts.map +1 -0
- package/dist/utils/gate-orientation.js +64 -0
- package/dist/utils/gate-orientation.js.map +1 -0
- package/dist/utils/ide-paths.d.ts +11 -0
- package/dist/utils/ide-paths.d.ts.map +1 -1
- package/dist/utils/ide-paths.js +27 -0
- package/dist/utils/ide-paths.js.map +1 -1
- package/dist/utils/instructions.d.ts +6 -1
- package/dist/utils/instructions.d.ts.map +1 -1
- package/dist/utils/instructions.js +32 -1
- package/dist/utils/instructions.js.map +1 -1
- package/package.json +2 -1
- package/dist/gates/compatibility-wrapper.d.ts +0 -139
- package/dist/gates/compatibility-wrapper.d.ts.map +0 -1
- package/dist/gates/compatibility-wrapper.js +0 -362
- package/dist/gates/compatibility-wrapper.js.map +0 -1
- package/dist/gates/unified-validator.d.ts +0 -67
- package/dist/gates/unified-validator.d.ts.map +0 -1
- package/dist/gates/unified-validator.js +0 -234
- package/dist/gates/unified-validator.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/validation.middleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,KAAK,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;AAE1E;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAChC,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,GACtB,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,
|
|
1
|
+
{"version":3,"file":"validation.middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/validation.middleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,KAAK,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;AAE1E;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAChC,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,GACtB,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,CA+CvC;AAED;;GAEG;AACH,wBAAgB,aAAa,CACzB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACrC,MAAM,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,CAAC,CAQvD;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,2BAbH,WAAW,KAAK,WAAW,CAmBrD,CAAC;AAEH;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACpC,QAAQ,EAAE,MAAM,GACjB,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,CA6CvC"}
|
|
@@ -26,10 +26,16 @@ export function withPromptValidation(toolName, expectedTool) {
|
|
|
26
26
|
if (!expectedTool) {
|
|
27
27
|
return result;
|
|
28
28
|
}
|
|
29
|
-
//
|
|
30
|
-
|
|
31
|
-
//
|
|
32
|
-
|
|
29
|
+
// Em um MCP real, o "toolName" da própria chamada (ex: "maestro", "executar")
|
|
30
|
+
// já é determinado na rota. A validação antiga verificava se a string
|
|
31
|
+
// de resposta continha a chamada de tool, o que causava disparo de
|
|
32
|
+
// falso positivo baseando-se nas próprias instruções do servidor.
|
|
33
|
+
// Para não quebrar a lógica global, faremos a validação comparando
|
|
34
|
+
// apenas se a toolName que engatilhou esse handler corresponde a expectedTool,
|
|
35
|
+
// ou desativaremos o validador confuso se expectedTool === toolName.
|
|
36
|
+
// Validar chamada de tool usando a própria ferramenta chamada no endpoint
|
|
37
|
+
// No futuro, promptValidator pode inspecionar o args para ver formatacoes.
|
|
38
|
+
const validation = promptValidator.validateToolCall(`${toolName}()`, expectedTool);
|
|
33
39
|
// Se válido, retornar resultado original
|
|
34
40
|
if (validation.valid) {
|
|
35
41
|
return result;
|
|
@@ -72,4 +78,58 @@ export const defaultValidations = validateTools({
|
|
|
72
78
|
'analisar': 'analisar',
|
|
73
79
|
'contexto': 'contexto',
|
|
74
80
|
});
|
|
81
|
+
/**
|
|
82
|
+
* V6 Sprint 2: Middleware de Estado Compulsório
|
|
83
|
+
*
|
|
84
|
+
* Intercepta chamadas de tools ANTES de executar o handler.
|
|
85
|
+
* Quando `em_estado_compulsorio = true`, bloqueia qualquer tool
|
|
86
|
+
* que não esteja na whitelist (`tools_permitidas_no_compulsorio`).
|
|
87
|
+
*
|
|
88
|
+
* Objetivo: Impedir que a IA "divague" chamando `maestro()`, `analisar()` etc
|
|
89
|
+
* enquanto deveria estar corrigindo o entregável reprovado no Gate.
|
|
90
|
+
*/
|
|
91
|
+
export function withCompulsoryStateGuard(toolName) {
|
|
92
|
+
return (handler) => {
|
|
93
|
+
return async (args) => {
|
|
94
|
+
// Tentar ler o estado do projeto para verificar modo compulsório
|
|
95
|
+
const diretorio = args.diretorio;
|
|
96
|
+
if (diretorio) {
|
|
97
|
+
try {
|
|
98
|
+
const { readFileSync } = await import('fs');
|
|
99
|
+
const { join } = await import('path');
|
|
100
|
+
const estadoPath = join(diretorio, '.maestro', 'estado.json');
|
|
101
|
+
const estadoRaw = readFileSync(estadoPath, 'utf-8');
|
|
102
|
+
const estado = JSON.parse(estadoRaw);
|
|
103
|
+
if (estado?.em_estado_compulsorio === true) {
|
|
104
|
+
const allowed = estado?.tools_permitidas_no_compulsorio
|
|
105
|
+
?? ['executar', 'validar', 'contexto'];
|
|
106
|
+
if (!allowed.includes(toolName)) {
|
|
107
|
+
return {
|
|
108
|
+
content: [{
|
|
109
|
+
type: 'text',
|
|
110
|
+
text: [
|
|
111
|
+
`⛔ **SISTEMA: Gate Reprovado — Modo Compulsório Ativo**`,
|
|
112
|
+
``,
|
|
113
|
+
`A tool \`${toolName}\` está bloqueada até que o Gate seja aprovado.`,
|
|
114
|
+
``,
|
|
115
|
+
`**Tools disponíveis agora:** ${allowed.map(t => `\`${t}\``).join(', ')}`,
|
|
116
|
+
``,
|
|
117
|
+
`**Para sair deste modo:**`,
|
|
118
|
+
`1. Corrija o entregável aplicando os itens ❌ da última validação`,
|
|
119
|
+
`2. Chame: \`executar({ diretorio: "${diretorio}", acao: "avancar" })\``,
|
|
120
|
+
].join('\n'),
|
|
121
|
+
}],
|
|
122
|
+
isError: true,
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
catch {
|
|
128
|
+
// Se não conseguir ler o estado, continua normalmente
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return handler(args);
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
}
|
|
75
135
|
//# sourceMappingURL=validation.middleware.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.middleware.js","sourceRoot":"","sources":["../../src/middleware/validation.middleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,eAAe,EAAyB,MAAM,yCAAyC,CAAC;AAIjG;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAChC,QAAgB,EAChB,YAAqB;IAErB,OAAO,CAAC,OAAoB,EAAE,EAAE;QAC5B,OAAO,KAAK,EAAE,IAA6B,EAAuB,EAAE;YAChE,4BAA4B;YAC5B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YAEnC,uCAAuC;YACvC,IAAI,CAAC,YAAY,EAAE,CAAC;gBAChB,OAAO,MAAM,CAAC;YAClB,CAAC;YAED,
|
|
1
|
+
{"version":3,"file":"validation.middleware.js","sourceRoot":"","sources":["../../src/middleware/validation.middleware.ts"],"names":[],"mappings":"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"}
|
package/dist/router.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAkhBnD,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CA8BvG;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC,CAO/J;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC,CAMhH;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C"}
|
package/dist/router.js
CHANGED
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
* - routeToolCall() aceita AMBAS (backward compatible)
|
|
10
10
|
* - Middlewares aplicados automaticamente
|
|
11
11
|
*/
|
|
12
|
-
import {
|
|
12
|
+
import { applyOrchestrationPipeline, applyMiddlewares, applySmartMiddlewares, applyPersistenceMiddlewares } from "./middleware/index.js";
|
|
13
|
+
import { withErrorHandling } from "./errors/index.js";
|
|
13
14
|
// === IMPORTS DE TOOLS ===
|
|
14
15
|
// Core
|
|
15
16
|
import { iniciarProjeto, iniciarProjetoSchema, confirmarProjeto, confirmarProjetoSchema } from "./tools/iniciar-projeto.js";
|
|
@@ -92,25 +93,25 @@ const publicTools = [
|
|
|
92
93
|
},
|
|
93
94
|
},
|
|
94
95
|
},
|
|
95
|
-
handler:
|
|
96
|
+
handler: applyOrchestrationPipeline("maestro", (a) => maestroTool(a)),
|
|
96
97
|
},
|
|
97
98
|
{
|
|
98
99
|
name: "executar",
|
|
99
100
|
description: "⚡ Executa ações no projeto. acao='avancar' (padrão): avança fase/onboarding (com entregavel ou respostas). acao='salvar': salva conteúdo (requer conteudo). acao='checkpoint': gerencia checkpoints. Para onboarding: respostas={campo1: valor1, campo2: valor2}.",
|
|
100
101
|
inputSchema: executarSchema,
|
|
101
|
-
handler:
|
|
102
|
+
handler: applyOrchestrationPipeline("executar", (a) => executar(a)),
|
|
102
103
|
},
|
|
103
104
|
{
|
|
104
105
|
name: "validar",
|
|
105
106
|
description: "✅ Valida gate, entregável ou compliance. Tipo auto-detectado ou especificado via parâmetro 'tipo'.",
|
|
106
107
|
inputSchema: validarSchema,
|
|
107
|
-
handler:
|
|
108
|
+
handler: applyOrchestrationPipeline("validar", (a) => validar(a)),
|
|
108
109
|
},
|
|
109
110
|
{
|
|
110
111
|
name: "analisar",
|
|
111
112
|
description: "🔍 Analisa código: segurança, qualidade, performance, dependências ou relatório completo. Usa parâmetro 'tipo'.",
|
|
112
113
|
inputSchema: analisarSchema,
|
|
113
|
-
handler:
|
|
114
|
+
handler: applyOrchestrationPipeline("analisar", (a) => analisar(a)),
|
|
114
115
|
},
|
|
115
116
|
{
|
|
116
117
|
name: "contexto",
|
|
@@ -130,7 +131,7 @@ const publicTools = [
|
|
|
130
131
|
fases_completas: { type: "array" },
|
|
131
132
|
},
|
|
132
133
|
},
|
|
133
|
-
handler:
|
|
134
|
+
handler: applyOrchestrationPipeline("contexto", (a) => contexto(a)),
|
|
134
135
|
},
|
|
135
136
|
];
|
|
136
137
|
// ============================================================
|
|
@@ -198,13 +199,15 @@ const legacyTools = [
|
|
|
198
199
|
name: "proximo",
|
|
199
200
|
description: "[Interno] Avança fase. Use 'avancar' como alternativa consolidada.",
|
|
200
201
|
inputSchema: proximoSchema,
|
|
201
|
-
|
|
202
|
+
// v6.2 S2.4: Migrado de applyLightMiddlewares para applyOrchestrationPipeline
|
|
203
|
+
handler: applyOrchestrationPipeline("proximo", (a) => proximo(a)),
|
|
202
204
|
},
|
|
203
205
|
{
|
|
204
206
|
name: "validar_gate",
|
|
205
207
|
description: "[Interno] Valida gate. Use 'validar' como alternativa consolidada.",
|
|
206
208
|
inputSchema: validarGateSchema,
|
|
207
|
-
|
|
209
|
+
// v6.2 S2.3: Adicionado withErrorHandling
|
|
210
|
+
handler: withErrorHandling("validar_gate", (a) => validarGate(a)),
|
|
208
211
|
},
|
|
209
212
|
{
|
|
210
213
|
name: "aprovar_gate",
|
|
@@ -222,7 +225,8 @@ const legacyTools = [
|
|
|
222
225
|
name: "confirmar_classificacao",
|
|
223
226
|
description: "[Interno] Confirma reclassificação após PRD.",
|
|
224
227
|
inputSchema: { type: "object", properties: { estado_json: { type: "string" }, diretorio: { type: "string" }, nivel: { type: "string", enum: ["simples", "medio", "complexo"] }, tipo_artefato: { type: "string", enum: ["poc", "script", "internal", "product"] } }, required: ["estado_json", "diretorio"] },
|
|
225
|
-
|
|
228
|
+
// v6.2 S2.3: Adicionado withErrorHandling
|
|
229
|
+
handler: withErrorHandling("confirmar_classificacao", (a) => confirmarClassificacao(a)),
|
|
226
230
|
},
|
|
227
231
|
{
|
|
228
232
|
name: "implementar_historia",
|
|
@@ -235,19 +239,20 @@ const legacyTools = [
|
|
|
235
239
|
name: "nova_feature",
|
|
236
240
|
description: "[Interno] Fluxo de nova feature.",
|
|
237
241
|
inputSchema: novaFeatureSchema,
|
|
238
|
-
|
|
242
|
+
// v6.2 S2.3: Adicionado withErrorHandling
|
|
243
|
+
handler: withErrorHandling("nova_feature", (a) => novaFeature(a)),
|
|
239
244
|
},
|
|
240
245
|
{
|
|
241
246
|
name: "corrigir_bug",
|
|
242
247
|
description: "[Interno] Fluxo de correção de bug.",
|
|
243
248
|
inputSchema: corrigirBugSchema,
|
|
244
|
-
handler: (a) => corrigirBug(a),
|
|
249
|
+
handler: withErrorHandling("corrigir_bug", (a) => corrigirBug(a)),
|
|
245
250
|
},
|
|
246
251
|
{
|
|
247
252
|
name: "refatorar",
|
|
248
253
|
description: "[Interno] Fluxo de refatoração.",
|
|
249
254
|
inputSchema: refatorarSchema,
|
|
250
|
-
handler: (a) => refatorar(a),
|
|
255
|
+
handler: withErrorHandling("refatorar", (a) => refatorar(a)),
|
|
251
256
|
},
|
|
252
257
|
// ──── ANÁLISE LEGACY ────
|
|
253
258
|
{
|
|
@@ -307,13 +312,14 @@ const legacyTools = [
|
|
|
307
312
|
name: "onboarding_orchestrator",
|
|
308
313
|
description: "[Interno] Use 'avancar' para fluxo de onboarding.",
|
|
309
314
|
inputSchema: onboardingOrchestratorSchema,
|
|
310
|
-
|
|
315
|
+
// v6.2 S2.3: Adicionado withErrorHandling
|
|
316
|
+
handler: withErrorHandling("onboarding_orchestrator", (a) => onboardingOrchestrator(a)),
|
|
311
317
|
},
|
|
312
318
|
{
|
|
313
319
|
name: "brainstorm",
|
|
314
320
|
description: "[Interno] Use 'avancar' para brainstorm.",
|
|
315
321
|
inputSchema: brainstormSchema,
|
|
316
|
-
handler: (a) => brainstorm(a),
|
|
322
|
+
handler: withErrorHandling("brainstorm", (a) => brainstorm(a)),
|
|
317
323
|
},
|
|
318
324
|
{
|
|
319
325
|
name: "prd_writer",
|
package/dist/router.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow-engine.d.ts","sourceRoot":"","sources":["../../src/services/flow-engine.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIxF;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IACzC,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,uBAAuB,EAAE,OAAO,CAAC;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"flow-engine.d.ts","sourceRoot":"","sources":["../../src/services/flow-engine.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIxF;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IACzC,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,uBAAuB,EAAE,OAAO,CAAC;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAElB,aAAa,EAAE,gBAAgB,GAAG,SAAS,GAAG,WAAW,GAAG,iBAAiB,CAAC;CACjF;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACzC;AAED;;GAEG;AACH,UAAU,cAAc;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC;IAC1C,mBAAmB,EAAE,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAsKD;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,CAuBhF;AA6CD;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,QAAQ,CA+C9E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,CAS/D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,CAanE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAkB7D;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,cAAc,EAAE,CAMlG"}
|
|
@@ -42,7 +42,7 @@ const ONBOARDING_FLOW = [
|
|
|
42
42
|
{
|
|
43
43
|
from: "specialist_active",
|
|
44
44
|
to: "specialist_collecting",
|
|
45
|
-
tool: "
|
|
45
|
+
tool: "maestro",
|
|
46
46
|
description: "Responder perguntas do especialista sobre o produto",
|
|
47
47
|
requires_user_input: true,
|
|
48
48
|
user_prompt: "Responda as perguntas do especialista sobre seu produto (problema, público, MVP).",
|
|
@@ -50,7 +50,7 @@ const ONBOARDING_FLOW = [
|
|
|
50
50
|
{
|
|
51
51
|
from: "specialist_collecting",
|
|
52
52
|
to: "specialist_collecting",
|
|
53
|
-
tool: "
|
|
53
|
+
tool: "maestro",
|
|
54
54
|
description: "Continuar respondendo perguntas do especialista",
|
|
55
55
|
requires_user_input: true,
|
|
56
56
|
user_prompt: "Continue respondendo as perguntas do especialista.",
|
|
@@ -58,7 +58,7 @@ const ONBOARDING_FLOW = [
|
|
|
58
58
|
{
|
|
59
59
|
from: "specialist_generating",
|
|
60
60
|
to: "specialist_validating",
|
|
61
|
-
tool: "
|
|
61
|
+
tool: "maestro",
|
|
62
62
|
description: "Validar PRD gerado pelo especialista",
|
|
63
63
|
requires_user_input: false,
|
|
64
64
|
auto_execute: true,
|
|
@@ -66,7 +66,7 @@ const ONBOARDING_FLOW = [
|
|
|
66
66
|
{
|
|
67
67
|
from: "specialist_validating",
|
|
68
68
|
to: "specialist_approved",
|
|
69
|
-
tool: "
|
|
69
|
+
tool: "maestro",
|
|
70
70
|
description: "PRD aprovado, preparar transição para próximo especialista",
|
|
71
71
|
condition: (s) => true,
|
|
72
72
|
requires_user_input: true,
|
|
@@ -84,7 +84,7 @@ const ONBOARDING_FLOW = [
|
|
|
84
84
|
{
|
|
85
85
|
from: "discovery_in_progress",
|
|
86
86
|
to: "discovery_next_block",
|
|
87
|
-
tool: "
|
|
87
|
+
tool: "maestro",
|
|
88
88
|
description: "Responder próximo bloco do discovery",
|
|
89
89
|
requires_user_input: true,
|
|
90
90
|
user_prompt: "Responda as perguntas do próximo bloco de discovery.",
|
|
@@ -92,7 +92,7 @@ const ONBOARDING_FLOW = [
|
|
|
92
92
|
{
|
|
93
93
|
from: "discovery_complete",
|
|
94
94
|
to: "brainstorm",
|
|
95
|
-
tool: "
|
|
95
|
+
tool: "maestro",
|
|
96
96
|
description: "Brainstorm exploratório para refinar ideias",
|
|
97
97
|
condition: (s) => s.mode !== "economy" && s.wantsBrainstorm,
|
|
98
98
|
requires_user_input: true,
|
|
@@ -101,7 +101,7 @@ const ONBOARDING_FLOW = [
|
|
|
101
101
|
{
|
|
102
102
|
from: "discovery_complete",
|
|
103
103
|
to: "prd",
|
|
104
|
-
tool: "
|
|
104
|
+
tool: "maestro",
|
|
105
105
|
description: "Gerar PRD a partir do discovery",
|
|
106
106
|
condition: (s) => s.mode === "economy" || !s.wantsBrainstorm,
|
|
107
107
|
requires_user_input: false,
|
|
@@ -110,7 +110,7 @@ const ONBOARDING_FLOW = [
|
|
|
110
110
|
{
|
|
111
111
|
from: "brainstorm_complete",
|
|
112
112
|
to: "prd",
|
|
113
|
-
tool: "
|
|
113
|
+
tool: "maestro",
|
|
114
114
|
description: "Gerar PRD a partir do discovery + brainstorm",
|
|
115
115
|
requires_user_input: false,
|
|
116
116
|
auto_execute: true,
|
|
@@ -186,10 +186,13 @@ export function getFlowState(estado, diretorio) {
|
|
|
186
186
|
prdStatus: onboarding?.prdStatus || "pending",
|
|
187
187
|
aguardandoAprovacao: estado.aguardando_aprovacao || false,
|
|
188
188
|
aguardandoClassificacao: estado.aguardando_classificacao || false,
|
|
189
|
-
|
|
189
|
+
// v6.3 S1.2: Respeita configuração do projeto. Modo 'economy' não quer brainstorm por padrão.
|
|
190
|
+
wantsBrainstorm: estado.config?.wantsBrainstorm ?? (estado.config?.mode !== 'economy'),
|
|
190
191
|
nivel: estado.nivel,
|
|
191
192
|
usarStitch: estado.usar_stitch || false,
|
|
192
193
|
diretorio,
|
|
194
|
+
// V6 Sprint 6: Ler tipo da fase atual do estado para Smart Auto-Flow
|
|
195
|
+
flowPhaseType: estado.flow_phase_type ?? 'input_required',
|
|
193
196
|
};
|
|
194
197
|
}
|
|
195
198
|
/**
|
|
@@ -259,12 +262,21 @@ export function getNextStep(estado, diretorio) {
|
|
|
259
262
|
}
|
|
260
263
|
const faseInfo = getFaseComStitch(estado.nivel, estado.fase_atual, estado.usar_stitch);
|
|
261
264
|
const specialist = faseInfo ? getSpecialistPersona(faseInfo.nome) : null;
|
|
265
|
+
// V6 Sprint 6: Smart Auto-Flow — sobrescreve requires_user_input baseado no tipo da fase
|
|
266
|
+
// Fases 'derived' (Requisitos, UX, Arquitetura...) e 'technical' (Frontend, Backend...)
|
|
267
|
+
// podem avançar sem pausa para input humano.
|
|
268
|
+
const effectiveRequiresInput = (() => {
|
|
269
|
+
const phaseType = flowState.flowPhaseType;
|
|
270
|
+
if (phaseType === 'derived' || phaseType === 'technical')
|
|
271
|
+
return false;
|
|
272
|
+
return transition.requires_user_input;
|
|
273
|
+
})();
|
|
262
274
|
return {
|
|
263
275
|
phase: transition.to,
|
|
264
276
|
tool: transition.tool,
|
|
265
277
|
description: transition.description,
|
|
266
278
|
args_template: { estado_json: "{{estado_json}}", diretorio },
|
|
267
|
-
requires_user_input:
|
|
279
|
+
requires_user_input: effectiveRequiresInput,
|
|
268
280
|
user_prompt: transition.user_prompt,
|
|
269
281
|
auto_execute: transition.auto_execute,
|
|
270
282
|
specialist,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow-engine.js","sourceRoot":"","sources":["../../src/services/flow-engine.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"flow-engine.js","sourceRoot":"","sources":["../../src/services/flow-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* V6 Sprint 5: Event-Driven Watcher Service
|
|
3
|
+
*
|
|
4
|
+
* Monitora o arquivo de entregável da fase atual em background.
|
|
5
|
+
* Ao detectar um salvamento (evento 'change'), dispara a ValidationPipeline
|
|
6
|
+
* automaticamente — sem que o usuário precise chamar `validar()`.
|
|
7
|
+
*
|
|
8
|
+
* Cuidados:
|
|
9
|
+
* - Debounce de 500ms para evitar múltiplas validações em edições rápidas
|
|
10
|
+
* - Gerenciamento de ciclo de vida: watcher é descartado ao avançar de fase
|
|
11
|
+
* - Usa chokidar (mais robusto que fs.watch nativo no Windows e Mac)
|
|
12
|
+
*
|
|
13
|
+
* IMPORTANTE: Instalar dependência: npm install chokidar --workspace=packages/mcp-server
|
|
14
|
+
*/
|
|
15
|
+
type ValidationCallback = (score: number, feedback: string, filePath: string) => void;
|
|
16
|
+
interface WatcherConfig {
|
|
17
|
+
/** Caminho absoluto do arquivo a ser monitorado */
|
|
18
|
+
filePath: string;
|
|
19
|
+
/** Diretório raiz do projeto Maestro */
|
|
20
|
+
diretorio: string;
|
|
21
|
+
/** Nome da fase atual (para contexto de validação) */
|
|
22
|
+
faseNome: string;
|
|
23
|
+
/** Tier de rigor da validação */
|
|
24
|
+
tier?: 'essencial' | 'base' | 'avancado';
|
|
25
|
+
/** Checklist da fase para validação semântica */
|
|
26
|
+
gateChecklist?: string[];
|
|
27
|
+
/** Callback chamado com o resultado da validação */
|
|
28
|
+
onValidationResult: ValidationCallback;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Inicia o monitoramento de um arquivo de entregável.
|
|
32
|
+
* Se já existe um watcher ativo para este diretório, ele é substituído.
|
|
33
|
+
*/
|
|
34
|
+
export declare function startFileWatcher(config: WatcherConfig): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* Para e descarta o watcher ativo para um diretório.
|
|
37
|
+
* Deve ser chamado ao avançar de fase para evitar leaks de file handles.
|
|
38
|
+
*/
|
|
39
|
+
export declare function stopFileWatcher(diretorio: string): void;
|
|
40
|
+
/**
|
|
41
|
+
* Retorna o número de watchers ativos (útil para debugging e testes).
|
|
42
|
+
*/
|
|
43
|
+
export declare function getActiveWatcherCount(): number;
|
|
44
|
+
export {};
|
|
45
|
+
//# sourceMappingURL=watcher.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watcher.service.d.ts","sourceRoot":"","sources":["../../src/services/watcher.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,KAAK,kBAAkB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;AAEtF,UAAU,aAAa;IACnB,mDAAmD;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,QAAQ,EAAE,MAAM,CAAC;IACjB,iCAAiC;IACjC,IAAI,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC;IACzC,iDAAiD;IACjD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,oDAAoD;IACpD,kBAAkB,EAAE,kBAAkB,CAAC;CAC1C;AAMD;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA4C3E;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAOvD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* V6 Sprint 5: Event-Driven Watcher Service
|
|
3
|
+
*
|
|
4
|
+
* Monitora o arquivo de entregável da fase atual em background.
|
|
5
|
+
* Ao detectar um salvamento (evento 'change'), dispara a ValidationPipeline
|
|
6
|
+
* automaticamente — sem que o usuário precise chamar `validar()`.
|
|
7
|
+
*
|
|
8
|
+
* Cuidados:
|
|
9
|
+
* - Debounce de 500ms para evitar múltiplas validações em edições rápidas
|
|
10
|
+
* - Gerenciamento de ciclo de vida: watcher é descartado ao avançar de fase
|
|
11
|
+
* - Usa chokidar (mais robusto que fs.watch nativo no Windows e Mac)
|
|
12
|
+
*
|
|
13
|
+
* IMPORTANTE: Instalar dependência: npm install chokidar --workspace=packages/mcp-server
|
|
14
|
+
*/
|
|
15
|
+
// Mapa de watchers ativos por diretório do projeto
|
|
16
|
+
// Chave: diretório, Valor: objeto watcher (FSWatcher do chokidar ou fallback)
|
|
17
|
+
const activeWatchers = new Map();
|
|
18
|
+
/**
|
|
19
|
+
* Inicia o monitoramento de um arquivo de entregável.
|
|
20
|
+
* Se já existe um watcher ativo para este diretório, ele é substituído.
|
|
21
|
+
*/
|
|
22
|
+
export async function startFileWatcher(config) {
|
|
23
|
+
// Parar watcher anterior se existir (evita duplicatas)
|
|
24
|
+
stopFileWatcher(config.diretorio);
|
|
25
|
+
let debounceTimer = null;
|
|
26
|
+
try {
|
|
27
|
+
// Tentar usar chokidar (mais robusto, cross-platform)
|
|
28
|
+
const chokidar = await import('chokidar');
|
|
29
|
+
const watcher = chokidar.default.watch(config.filePath, {
|
|
30
|
+
persistent: false, // Não impedir o processo de terminar
|
|
31
|
+
ignoreInitial: true, // Não disparar na inicialização
|
|
32
|
+
awaitWriteFinish: {
|
|
33
|
+
stabilityThreshold: 200,
|
|
34
|
+
pollInterval: 100,
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
watcher.on('change', () => {
|
|
38
|
+
if (debounceTimer)
|
|
39
|
+
clearTimeout(debounceTimer);
|
|
40
|
+
debounceTimer = setTimeout(async () => {
|
|
41
|
+
await runValidation(config);
|
|
42
|
+
}, 500); // Debounce de 500ms
|
|
43
|
+
});
|
|
44
|
+
watcher.on('error', (error) => {
|
|
45
|
+
console.warn(`[watcher] Erro ao monitorar ${config.filePath}:`, error);
|
|
46
|
+
});
|
|
47
|
+
activeWatchers.set(config.diretorio, { close: () => watcher.close() });
|
|
48
|
+
console.log(`[watcher] Monitorando: ${config.filePath}`);
|
|
49
|
+
}
|
|
50
|
+
catch {
|
|
51
|
+
// Fallback para fs.watch nativo se chokidar não estiver disponível
|
|
52
|
+
console.warn('[watcher] chokidar não disponível, usando fs.watch nativo como fallback');
|
|
53
|
+
const { watch } = await import('fs');
|
|
54
|
+
const nativeWatcher = watch(config.filePath, { persistent: false }, () => {
|
|
55
|
+
if (debounceTimer)
|
|
56
|
+
clearTimeout(debounceTimer);
|
|
57
|
+
debounceTimer = setTimeout(async () => {
|
|
58
|
+
await runValidation(config);
|
|
59
|
+
}, 500);
|
|
60
|
+
});
|
|
61
|
+
activeWatchers.set(config.diretorio, { close: () => nativeWatcher.close() });
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Para e descarta o watcher ativo para um diretório.
|
|
66
|
+
* Deve ser chamado ao avançar de fase para evitar leaks de file handles.
|
|
67
|
+
*/
|
|
68
|
+
export function stopFileWatcher(diretorio) {
|
|
69
|
+
const watcher = activeWatchers.get(diretorio);
|
|
70
|
+
if (watcher) {
|
|
71
|
+
watcher.close();
|
|
72
|
+
activeWatchers.delete(diretorio);
|
|
73
|
+
console.log(`[watcher] Monitoramento encerrado para: ${diretorio}`);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Retorna o número de watchers ativos (útil para debugging e testes).
|
|
78
|
+
*/
|
|
79
|
+
export function getActiveWatcherCount() {
|
|
80
|
+
return activeWatchers.size;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Executa a validação do entregável e chama o callback com o resultado.
|
|
84
|
+
* Implementação real: integrar com ValidationPipeline.
|
|
85
|
+
*/
|
|
86
|
+
async function runValidation(config) {
|
|
87
|
+
try {
|
|
88
|
+
const { readFile } = await import('fs/promises');
|
|
89
|
+
const content = await readFile(config.filePath, 'utf-8');
|
|
90
|
+
console.log(`[watcher] Arquivo salvo, executando validação: ${config.filePath} (${content.length} chars)`);
|
|
91
|
+
const { ValidationPipeline } = await import('../core/validation/ValidationPipeline.js');
|
|
92
|
+
const pipeline = new ValidationPipeline();
|
|
93
|
+
const tier = config.tier || 'base';
|
|
94
|
+
const gateChecklist = config.gateChecklist || [];
|
|
95
|
+
const result = await pipeline.validateDeliverable(content, config.faseNome, tier, gateChecklist);
|
|
96
|
+
let feedback = `Score: ${result.overallScore}/100`;
|
|
97
|
+
if (result.recommendations && result.recommendations.length > 0) {
|
|
98
|
+
feedback += '\n' + result.recommendations.join('\n');
|
|
99
|
+
}
|
|
100
|
+
config.onValidationResult(result.overallScore, feedback, config.filePath);
|
|
101
|
+
}
|
|
102
|
+
catch (error) {
|
|
103
|
+
console.error('[watcher] Erro ao ler arquivo para validação:', error);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=watcher.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watcher.service.js","sourceRoot":"","sources":["../../src/services/watcher.service.ts"],"names":[],"mappings":"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"}
|