@maestro-ai/mcp-server 5.3.7 → 5.3.9
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/classifier.d.ts +12 -0
- package/dist/flows/classifier.d.ts.map +1 -1
- package/dist/flows/classifier.js +12 -0
- package/dist/flows/classifier.js.map +1 -1
- package/dist/handlers/specialist-phase-handler.d.ts +6 -1
- package/dist/handlers/specialist-phase-handler.d.ts.map +1 -1
- package/dist/handlers/specialist-phase-handler.js +169 -47
- package/dist/handlers/specialist-phase-handler.js.map +1 -1
- package/dist/handlers/specialist-questions.d.ts +2 -0
- package/dist/handlers/specialist-questions.d.ts.map +1 -0
- package/dist/handlers/specialist-questions.js +65 -0
- package/dist/handlers/specialist-questions.js.map +1 -0
- package/dist/middleware/index.d.ts +1 -0
- package/dist/middleware/index.d.ts.map +1 -1
- package/dist/middleware/index.js +1 -0
- package/dist/middleware/index.js.map +1 -1
- package/dist/middleware/validation.middleware.d.ts +31 -0
- package/dist/middleware/validation.middleware.d.ts.map +1 -0
- package/dist/middleware/validation.middleware.js +75 -0
- package/dist/middleware/validation.middleware.js.map +1 -0
- package/dist/services/auto-classifier.service.d.ts +91 -0
- package/dist/services/auto-classifier.service.d.ts.map +1 -0
- package/dist/services/auto-classifier.service.js +531 -0
- package/dist/services/auto-classifier.service.js.map +1 -0
- package/dist/services/classificacao-progressiva.service.d.ts +78 -0
- package/dist/services/classificacao-progressiva.service.d.ts.map +1 -0
- package/dist/services/classificacao-progressiva.service.js +719 -0
- package/dist/services/classificacao-progressiva.service.js.map +1 -0
- package/dist/services/prompt-validator.service.d.ts +20 -0
- package/dist/services/prompt-validator.service.d.ts.map +1 -0
- package/dist/services/prompt-validator.service.js +53 -0
- package/dist/services/prompt-validator.service.js.map +1 -0
- package/dist/tests/classificacao-progressiva.test.d.ts +5 -0
- package/dist/tests/classificacao-progressiva.test.d.ts.map +1 -0
- package/dist/tests/classificacao-progressiva.test.js +372 -0
- package/dist/tests/classificacao-progressiva.test.js.map +1 -0
- package/dist/tools/consolidated/avancar.d.ts.map +1 -1
- package/dist/tools/consolidated/avancar.js +49 -9
- package/dist/tools/consolidated/avancar.js.map +1 -1
- package/dist/tools/proximo.d.ts.map +1 -1
- package/dist/tools/proximo.js +105 -91
- package/dist/tools/proximo.js.map +1 -1
- package/dist/types/index.d.ts +21 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Classificador de Complexidade de Projetos
|
|
3
|
+
*
|
|
4
|
+
* @deprecated v6.0 - Este módulo foi substituído por ClassificacaoProgressivaService
|
|
5
|
+
* que acumula sinais ao longo de múltiplas fases em vez de classificar apenas no PRD.
|
|
6
|
+
*
|
|
7
|
+
* Mantido para compatibilidade e referência, mas não é mais usado no fluxo principal.
|
|
8
|
+
*
|
|
9
|
+
* Analisa o PRD e determina o nível de complexidade do projeto.
|
|
10
|
+
* Baseado em critérios objetivos e contagem de features.
|
|
11
|
+
*/
|
|
1
12
|
import type { NivelComplexidade, ClassificacaoResultado } from "../types/index.js";
|
|
2
13
|
/**
|
|
3
14
|
* Classifica a complexidade do projeto baseado no PRD
|
|
15
|
+
* @deprecated v6.0 - usar ClassificacaoProgressivaService
|
|
4
16
|
*/
|
|
5
17
|
export declare function classificarPRD(prd: string): ClassificacaoResultado;
|
|
6
18
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classifier.d.ts","sourceRoot":"","sources":["../../src/flows/classifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEnF
|
|
1
|
+
{"version":3,"file":"classifier.d.ts","sourceRoot":"","sources":["../../src/flows/classifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEnF;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,CAkGlE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAS/D"}
|
package/dist/flows/classifier.js
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Classificador de Complexidade de Projetos
|
|
3
|
+
*
|
|
4
|
+
* @deprecated v6.0 - Este módulo foi substituído por ClassificacaoProgressivaService
|
|
5
|
+
* que acumula sinais ao longo de múltiplas fases em vez de classificar apenas no PRD.
|
|
6
|
+
*
|
|
7
|
+
* Mantido para compatibilidade e referência, mas não é mais usado no fluxo principal.
|
|
8
|
+
*
|
|
9
|
+
* Analisa o PRD e determina o nível de complexidade do projeto.
|
|
10
|
+
* Baseado em critérios objetivos e contagem de features.
|
|
11
|
+
*/
|
|
1
12
|
/**
|
|
2
13
|
* Classifica a complexidade do projeto baseado no PRD
|
|
14
|
+
* @deprecated v6.0 - usar ClassificacaoProgressivaService
|
|
3
15
|
*/
|
|
4
16
|
export function classificarPRD(prd) {
|
|
5
17
|
let pontos = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classifier.js","sourceRoot":"","sources":["../../src/flows/classifier.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"classifier.js","sourceRoot":"","sources":["../../src/flows/classifier.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,5 +25,10 @@ interface SpecialistPhaseArgs {
|
|
|
25
25
|
* Detecta o status atual e delega para o handler correto.
|
|
26
26
|
*/
|
|
27
27
|
export declare function handleSpecialistPhase(args: SpecialistPhaseArgs): Promise<ToolResult>;
|
|
28
|
-
|
|
28
|
+
/**
|
|
29
|
+
* Sprint 2 (v7.0): Retorna perguntas técnicas que o especialista deve fazer
|
|
30
|
+
* Distribui perguntas técnicas aos especialistas de cada fase
|
|
31
|
+
*/
|
|
32
|
+
declare function getSpecialistQuestions(fase: number): string;
|
|
33
|
+
export { getSpecialistQuestions };
|
|
29
34
|
//# sourceMappingURL=specialist-phase-handler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specialist-phase-handler.d.ts","sourceRoot":"","sources":["../../src/handlers/specialist-phase-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"specialist-phase-handler.d.ts","sourceRoot":"","sources":["../../src/handlers/specialist-phase-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AA+DnE,UAAU,mBAAmB;IACzB,MAAM,EAAE,aAAa,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AA2BD;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,CA4C1F;AAm0BD;;;GAGG;AACH,iBAAS,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA4DpD;AA6OD,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
|
|
@@ -20,8 +20,8 @@ import { ContentResolverService } from "../services/content-resolver.service.js"
|
|
|
20
20
|
import { SkillLoaderService } from "../services/skill-loader.service.js";
|
|
21
21
|
import { existsSync, readFileSync } from "fs";
|
|
22
22
|
import { detectIDE, getSkillsDir, getSkillFilePath } from "../utils/ide-paths.js";
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
23
|
+
import { classificacaoProgressiva } from "../services/classificacao-progressiva.service.js"; // v6.0
|
|
24
|
+
import { getFaseComStitch } from "../flows/types.js"; // v6.0
|
|
25
25
|
/** Maximum number of automatic PRD validation retries before requiring user approval */
|
|
26
26
|
const MAX_PRD_VALIDATION_RETRIES = 3;
|
|
27
27
|
/** Paths padrão para saída de documentos — a IA DEVE usar estes paths */
|
|
@@ -361,15 +361,50 @@ async function handleValidating(args, onboarding, sp) {
|
|
|
361
361
|
}
|
|
362
362
|
catch { /* ignore */ }
|
|
363
363
|
}
|
|
364
|
-
// PRIORIDADE 2: Fallback para param (compatibilidade)
|
|
365
|
-
if (!entregavel && args.entregavel) {
|
|
366
|
-
entregavel = args.entregavel;
|
|
367
|
-
}
|
|
368
364
|
if (!entregavel) {
|
|
369
|
-
// Se
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
365
|
+
// Se arquivo não existe, instruir a salvar primeiro
|
|
366
|
+
return {
|
|
367
|
+
content: formatResponse({
|
|
368
|
+
titulo: "⚠️ PRD Não Encontrado",
|
|
369
|
+
resumo: "O PRD precisa ser salvo no disco antes de validar.",
|
|
370
|
+
dados: {
|
|
371
|
+
"Arquivo esperado": PRD_OUTPUT_PATHS.primary,
|
|
372
|
+
},
|
|
373
|
+
instrucoes: `🤖 **AÇÃO REQUERIDA:**
|
|
374
|
+
|
|
375
|
+
1. **Gere e salve o PRD** no arquivo \`${PRD_OUTPUT_PATHS.primary}\`
|
|
376
|
+
2. Após salvar, avance:
|
|
377
|
+
|
|
378
|
+
\`\`\`json
|
|
379
|
+
executar({
|
|
380
|
+
"diretorio": "${diretorio}",
|
|
381
|
+
"acao": "avancar"
|
|
382
|
+
})
|
|
383
|
+
\`\`\`
|
|
384
|
+
|
|
385
|
+
⚠️ **NÃO passe o conteúdo via entregavel.** O MCP lê direto do arquivo.`,
|
|
386
|
+
proximo_passo: {
|
|
387
|
+
tool: "executar",
|
|
388
|
+
descricao: "Salvar PRD no arquivo e avançar",
|
|
389
|
+
args: `{ "diretorio": "${diretorio}", "acao": "avancar" }`,
|
|
390
|
+
requer_input_usuario: false,
|
|
391
|
+
auto_execute: true,
|
|
392
|
+
},
|
|
393
|
+
}),
|
|
394
|
+
next_action: {
|
|
395
|
+
tool: "executar",
|
|
396
|
+
description: "Salvar PRD em docs/01-produto/PRD.md e avançar",
|
|
397
|
+
args_template: { diretorio, acao: "avancar" },
|
|
398
|
+
requires_user_input: false,
|
|
399
|
+
auto_execute: true,
|
|
400
|
+
},
|
|
401
|
+
progress: {
|
|
402
|
+
current_phase: "specialist_generating",
|
|
403
|
+
total_phases: 5,
|
|
404
|
+
completed_phases: 2,
|
|
405
|
+
percentage: 55,
|
|
406
|
+
},
|
|
407
|
+
};
|
|
373
408
|
}
|
|
374
409
|
// v6.1 (Bug #1): Normalize string — fix JSON-escaped newlines
|
|
375
410
|
entregavel = normalizePrdContent(entregavel);
|
|
@@ -526,53 +561,55 @@ async function handleApproved(args, onboarding, sp) {
|
|
|
526
561
|
if (!prdContent && sp.prdDraft) {
|
|
527
562
|
prdContent = sp.prdDraft;
|
|
528
563
|
}
|
|
529
|
-
//
|
|
564
|
+
// v6.0: Classificação Progressiva — inicializar com sinais do PRD
|
|
530
565
|
let classificacaoInfo = '';
|
|
531
566
|
if (prdContent) {
|
|
532
|
-
|
|
567
|
+
// Inicializar classificação progressiva
|
|
568
|
+
const faseAtual = getFaseComStitch(estado.nivel, 1, estado.usar_stitch);
|
|
569
|
+
if (!faseAtual) {
|
|
570
|
+
throw new Error("Fase 1 não encontrada no fluxo");
|
|
571
|
+
}
|
|
572
|
+
// Registrar sinais do PRD
|
|
573
|
+
const sinais = classificacaoProgressiva.registrarSinais(prdContent, faseAtual, []);
|
|
574
|
+
// Calcular classificação inicial
|
|
575
|
+
const { nivel, confianca, criterios } = classificacaoProgressiva.recalcular(sinais);
|
|
576
|
+
// Inicializar estado de classificação progressiva
|
|
577
|
+
estado.classificacao_progressiva = {
|
|
578
|
+
nivel_atual: nivel,
|
|
579
|
+
nivel_provisorio: true, // SEMPRE provisório no PRD
|
|
580
|
+
confianca_geral: confianca,
|
|
581
|
+
sinais,
|
|
582
|
+
historico_niveis: [{
|
|
583
|
+
fase: 1,
|
|
584
|
+
nivel,
|
|
585
|
+
motivo: "Classificação inicial baseada no PRD"
|
|
586
|
+
}],
|
|
587
|
+
fases_refinamento: [1]
|
|
588
|
+
};
|
|
589
|
+
// Manter compatibilidade com classificacao_sugerida
|
|
533
590
|
estado.classificacao_sugerida = {
|
|
534
|
-
nivel
|
|
535
|
-
pontuacao:
|
|
536
|
-
criterios
|
|
591
|
+
nivel,
|
|
592
|
+
pontuacao: Math.round(confianca),
|
|
593
|
+
criterios,
|
|
537
594
|
};
|
|
538
|
-
//
|
|
539
|
-
estado.inferencia_contextual = inferirContextoBalanceado(`${estado.nome} ${prdContent}`);
|
|
540
|
-
const perguntas = estado.inferencia_contextual?.perguntas_prioritarias || [];
|
|
541
|
-
const perguntasMarkdown = perguntas.length
|
|
542
|
-
? perguntas.map((p) => `- (${p.prioridade}) ${p.pergunta}${p.valor_inferido ? `\n - Inferido: ${p.valor_inferido} (confiança ${((p.confianca_inferencia ?? 0) * 100).toFixed(0)}%)` : ""}`).join("\n")
|
|
543
|
-
: "- Informe domínio, stack preferida e integrações em um único prompt.";
|
|
595
|
+
// Mensagem simplificada - sem bloqueio de classificação
|
|
544
596
|
classificacaoInfo = `
|
|
545
597
|
|
|
546
|
-
|
|
598
|
+
✅ **PRD Aprovado e Salvo!**
|
|
547
599
|
|
|
548
|
-
|
|
549
|
-
|-------|-------|
|
|
550
|
-
| **Nível sugerido** | **${classificacao.nivel.toUpperCase()}** |
|
|
551
|
-
| **Pontuação** | ${classificacao.pontuacao} |
|
|
552
|
-
| **Critérios** | ${classificacao.criterios.join(', ')} |
|
|
600
|
+
📁 Arquivo: \`docs/01-produto/PRD.md\`
|
|
553
601
|
|
|
554
|
-
|
|
555
|
-
Confirme ou ajuste a classificação usando:
|
|
556
|
-
|
|
557
|
-
\`\`\`json
|
|
558
|
-
executar({
|
|
559
|
-
"diretorio": "${diretorio}",
|
|
560
|
-
"acao": "avancar",
|
|
561
|
-
"respostas": {
|
|
562
|
-
"nivel": "${classificacao.nivel}"
|
|
563
|
-
}
|
|
564
|
-
})
|
|
565
|
-
\`\`\`
|
|
602
|
+
🎯 **Próximo Passo:** Vamos detalhar os requisitos técnicos com o Especialista de Requisitos.
|
|
566
603
|
|
|
567
|
-
|
|
568
|
-
${perguntasMarkdown}
|
|
604
|
+
> 💡 A classificação do projeto será refinada automaticamente conforme avançamos nas fases.
|
|
569
605
|
|
|
570
|
-
|
|
606
|
+
Use: \`executar({acao: "avancar"})\`
|
|
607
|
+
`;
|
|
571
608
|
}
|
|
572
609
|
// Avançar estado do projeto para fase 1 de desenvolvimento
|
|
573
610
|
estado.fase_atual = 1;
|
|
574
|
-
|
|
575
|
-
estado.
|
|
611
|
+
// Classificação em background - sem bloqueio
|
|
612
|
+
// estado.aguardando_classificacao removido - classificação é silenciosa
|
|
576
613
|
estado.status = 'ativo';
|
|
577
614
|
await persistState(estado, onboarding, diretorio);
|
|
578
615
|
return {
|
|
@@ -804,11 +841,10 @@ function getRequiredFields(mode) {
|
|
|
804
841
|
// Bloco 2 — A Solução (todos os modos)
|
|
805
842
|
{ id: 'funcionalidades_mvp', label: 'Quais as 3-5 coisas mais importantes que o produto precisa fazer?', hint: 'Liste as funcionalidades essenciais para a primeira versão', example: 'Ex: "Criar checklists, atribuir tarefas, ver status, notificar prazos"', block: 'solucao', modes: ['economy', 'balanced', 'quality'] },
|
|
806
843
|
{ id: 'north_star_metric', label: 'Qual número mostra que o produto está funcionando?', hint: 'A métrica mais importante para saber se o produto dá certo', example: 'Ex: "% de checklists concluídos no prazo" ou "Quantos pedidos por semana"', block: 'solucao', modes: ['economy', 'balanced', 'quality'] },
|
|
844
|
+
{ id: 'diferencial', label: 'O que torna seu produto diferente dos concorrentes?', hint: 'Sua vantagem competitiva ou proposta de valor única', example: 'Ex: "Integração nativa com WhatsApp, que nenhum concorrente tem"', block: 'solucao', modes: ['economy', 'balanced', 'quality'] },
|
|
807
845
|
// Bloco 3 — Planejamento (balanced/quality)
|
|
808
846
|
{ id: 'riscos', label: 'O que pode dar errado?', hint: 'Riscos que podem atrapalhar o sucesso do produto', example: 'Ex: "Usuários não adotarem, custo alto de servidor, concorrente lançar antes"', block: 'planejamento', modes: ['balanced', 'quality'] },
|
|
809
847
|
{ id: 'timeline', label: 'Em quanto tempo quer lançar a primeira versão?', hint: 'Prazo desejado para o MVP estar no ar', example: 'Ex: "8 semanas para MVP + 2 semanas piloto"', block: 'planejamento', modes: ['balanced', 'quality'] },
|
|
810
|
-
// Campos extras balanced (alinhados com template PRD)
|
|
811
|
-
{ id: 'diferencial', label: 'O que torna seu produto diferente dos concorrentes?', hint: 'Sua vantagem competitiva ou proposta de valor única', example: 'Ex: "Integração nativa com WhatsApp, que nenhum concorrente tem"', block: 'solucao', modes: ['balanced', 'quality'] },
|
|
812
848
|
// Campos extras quality (alinhados com template PRD)
|
|
813
849
|
{ id: 'personas', label: 'Descreva 2-3 tipos de pessoas que vão usar (nome fictício, cargo, rotina)', hint: 'Perfis detalhados dos usuários principais', example: 'Ex: "Maria, coordenadora, monitora equipes pelo celular entre reuniões"', block: 'problema', modes: ['quality'] },
|
|
814
850
|
{ id: 'go_to_market', label: 'Como pretende conseguir os primeiros usuários?', hint: 'Estratégia para lançamento e adoção inicial', example: 'Ex: "Piloto com 2 clientes atuais, depois indicação boca-a-boca"', block: 'planejamento', modes: ['quality'] },
|
|
@@ -833,6 +869,69 @@ function getFieldsByBlock(mode) {
|
|
|
833
869
|
}))
|
|
834
870
|
.filter(b => b.fields.length > 0);
|
|
835
871
|
}
|
|
872
|
+
/**
|
|
873
|
+
* Sprint 2 (v7.0): Retorna perguntas técnicas que o especialista deve fazer
|
|
874
|
+
* Distribui perguntas técnicas aos especialistas de cada fase
|
|
875
|
+
*/
|
|
876
|
+
function getSpecialistQuestions(fase) {
|
|
877
|
+
if (fase === 2) {
|
|
878
|
+
// Especialista de Requisitos
|
|
879
|
+
return `
|
|
880
|
+
## 📋 Coleta de Requisitos Técnicos
|
|
881
|
+
|
|
882
|
+
Como Especialista de Requisitos, preciso entender alguns aspectos técnicos para criar um documento completo:
|
|
883
|
+
|
|
884
|
+
### 1. Volume e Escala
|
|
885
|
+
- Quantos usuários simultâneos você espera?
|
|
886
|
+
- Quantas transações/operações por dia?
|
|
887
|
+
- Crescimento esperado nos próximos 6 meses?
|
|
888
|
+
|
|
889
|
+
### 2. Integrações Externas
|
|
890
|
+
- Precisa integrar com quais sistemas/APIs?
|
|
891
|
+
- Exemplos: pagamento (Stripe, PagSeguro), email (SendGrid), SMS, etc.
|
|
892
|
+
- Autenticação social? (Google, Facebook, etc.)
|
|
893
|
+
|
|
894
|
+
### 3. Segurança e Compliance
|
|
895
|
+
- Precisa seguir LGPD? (dados de brasileiros)
|
|
896
|
+
- Dados sensíveis? (cartão, saúde, financeiro)
|
|
897
|
+
- Outros requisitos? (PCI-DSS, HIPAA, SOC2)
|
|
898
|
+
|
|
899
|
+
### 4. Performance
|
|
900
|
+
- Tempo de resposta esperado? (ex: < 200ms)
|
|
901
|
+
- Disponibilidade necessária? (ex: 99.9%)
|
|
902
|
+
- Horários de pico de uso?
|
|
903
|
+
|
|
904
|
+
> 💡 Responda de forma natural, não precisa seguir a ordem exata. Após suas respostas, vou criar o documento de requisitos.
|
|
905
|
+
`;
|
|
906
|
+
}
|
|
907
|
+
if (fase === 4) {
|
|
908
|
+
// Especialista de Arquitetura
|
|
909
|
+
return `
|
|
910
|
+
## 🏗️ Decisões de Arquitetura
|
|
911
|
+
|
|
912
|
+
Como Especialista de Arquitetura, preciso entender suas preferências e restrições:
|
|
913
|
+
|
|
914
|
+
### 1. Stack Tecnológica
|
|
915
|
+
- **Frontend:** Tem preferência? (React, Vue, Angular, Next.js)
|
|
916
|
+
- **Backend:** Qual linguagem/framework? (Node.js, Python, PHP, Java)
|
|
917
|
+
- **Database:** Qual banco de dados? (PostgreSQL, MySQL, MongoDB)
|
|
918
|
+
- Alguma restrição ou tecnologia que o time já domina?
|
|
919
|
+
|
|
920
|
+
### 2. Time e Infraestrutura
|
|
921
|
+
- Quem vai desenvolver? (senioridade: júnior, pleno, sênior)
|
|
922
|
+
- Onde vai hospedar? (AWS, Azure, Vercel, Heroku, VPS)
|
|
923
|
+
- Orçamento mensal de infraestrutura?
|
|
924
|
+
|
|
925
|
+
### 3. Padrões Arquiteturais
|
|
926
|
+
- Monolito ou microserviços?
|
|
927
|
+
- Multi-tenant necessário?
|
|
928
|
+
- Precisa de cache? CDN?
|
|
929
|
+
|
|
930
|
+
> 💡 Se não tiver preferência, posso sugerir a melhor stack baseado nos requisitos já definidos.
|
|
931
|
+
`;
|
|
932
|
+
}
|
|
933
|
+
return '';
|
|
934
|
+
}
|
|
836
935
|
/**
|
|
837
936
|
* v6.1 (Bug #1 fix): Regex patterns match against CLEANED heading text
|
|
838
937
|
* (splitPrdBySections already strips '#' prefixes via headingMatch[2]).
|
|
@@ -907,12 +1006,33 @@ function normalizePrdContent(content) {
|
|
|
907
1006
|
normalized = normalized.replace(/\\\\n/g, '\n');
|
|
908
1007
|
return normalized.trim();
|
|
909
1008
|
}
|
|
1009
|
+
// v5.0 Sprint 5: Cache de scores para evitar oscilações
|
|
1010
|
+
const scoreCache = new Map();
|
|
1011
|
+
const SCORE_CACHE_TTL = 5 * 60 * 1000; // 5 minutos
|
|
910
1012
|
/**
|
|
911
1013
|
* Sprint 6 (NP10): Calcula score estruturado do PRD por seções com conteúdo mínimo.
|
|
912
|
-
*
|
|
1014
|
+
* v5.0: Adicionado cache e bypass por tamanho
|
|
913
1015
|
*/
|
|
914
1016
|
function calculatePrdScore(prd, mode) {
|
|
1017
|
+
// Sprint 5: Bypass por tamanho — PRDs grandes com estrutura mínima = score alto
|
|
1018
|
+
const wordCount = prd.split(/\s+/).length;
|
|
1019
|
+
const charCount = prd.length;
|
|
1020
|
+
const hasStructure = prd.match(/^#{1,2}\s+/m) && prd.match(/^#{1,2}\s+/m); // Tem pelo menos um h1/h2
|
|
1021
|
+
// Se PRD tem >3000 chars, >400 palavras e estrutura markdown → score mínimo 70
|
|
1022
|
+
if (charCount > 3000 && wordCount > 400 && hasStructure) {
|
|
1023
|
+
const { score } = calculatePrdScoreDetailed(prd);
|
|
1024
|
+
// Retorna o maior entre o score calculado e 70 (para evitar penalizar PRDs bons)
|
|
1025
|
+
return Math.max(score, 70);
|
|
1026
|
+
}
|
|
1027
|
+
// Sprint 5: Verificar cache
|
|
1028
|
+
const cacheKey = `${prd.slice(0, 500)}-${prd.length}`; // Hash simples
|
|
1029
|
+
const cached = scoreCache.get(cacheKey);
|
|
1030
|
+
if (cached && (Date.now() - cached.timestamp) < SCORE_CACHE_TTL) {
|
|
1031
|
+
return cached.score;
|
|
1032
|
+
}
|
|
915
1033
|
const { score } = calculatePrdScoreDetailed(prd);
|
|
1034
|
+
// Sprint 5: Salvar no cache
|
|
1035
|
+
scoreCache.set(cacheKey, { score, timestamp: Date.now() });
|
|
916
1036
|
return score;
|
|
917
1037
|
}
|
|
918
1038
|
function calculatePrdScoreDetailed(prd) {
|
|
@@ -998,4 +1118,6 @@ async function persistState(estado, onboarding, diretorio) {
|
|
|
998
1118
|
console.error('[specialist-phase] Erro ao salvar estado:', err);
|
|
999
1119
|
}
|
|
1000
1120
|
}
|
|
1121
|
+
// Exportar função para uso em outros módulos
|
|
1122
|
+
export { getSpecialistQuestions };
|
|
1001
1123
|
//# sourceMappingURL=specialist-phase-handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specialist-phase-handler.js","sourceRoot":"","sources":["../../src/handlers/specialist-phase-handler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"specialist-phase-handler.js","sourceRoot":"","sources":["../../src/handlers/specialist-phase-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"specialist-questions.d.ts","sourceRoot":"","sources":["../../src/handlers/specialist-questions.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Retorna perguntas técnicas que o especialista deve fazer no início de sua fase
|
|
3
|
+
* Sprint 2: Distribuir perguntas técnicas aos especialistas
|
|
4
|
+
*/
|
|
5
|
+
function getSpecialistQuestions(fase, nivel) {
|
|
6
|
+
if (fase === 2) {
|
|
7
|
+
// Especialista de Requisitos
|
|
8
|
+
return `
|
|
9
|
+
## 📋 Coleta de Requisitos Técnicos
|
|
10
|
+
|
|
11
|
+
Como Especialista de Requisitos, preciso entender alguns aspectos técnicos para criar um documento completo:
|
|
12
|
+
|
|
13
|
+
### 1. Volume e Escala
|
|
14
|
+
- Quantos usuários simultâneos você espera?
|
|
15
|
+
- Quantas transações/operações por dia?
|
|
16
|
+
- Crescimento esperado nos próximos 6 meses?
|
|
17
|
+
|
|
18
|
+
### 2. Integrações Externas
|
|
19
|
+
- Precisa integrar com quais sistemas/APIs?
|
|
20
|
+
- Exemplos: pagamento (Stripe, PagSeguro), email (SendGrid), SMS, etc.
|
|
21
|
+
- Autenticação social? (Google, Facebook, etc.)
|
|
22
|
+
|
|
23
|
+
### 3. Segurança e Compliance
|
|
24
|
+
- Precisa seguir LGPD? (dados de brasileiros)
|
|
25
|
+
- Dados sensíveis? (cartão, saúde, financeiro)
|
|
26
|
+
- Outros requisitos? (PCI-DSS, HIPAA, SOC2)
|
|
27
|
+
|
|
28
|
+
### 4. Performance
|
|
29
|
+
- Tempo de resposta esperado? (ex: < 200ms)
|
|
30
|
+
- Disponibilidade necessária? (ex: 99.9%)
|
|
31
|
+
- Horários de pico de uso?
|
|
32
|
+
|
|
33
|
+
> 💡 Responda de forma natural, não precisa seguir a ordem exata. Após suas respostas, vou criar o documento de requisitos.
|
|
34
|
+
`;
|
|
35
|
+
}
|
|
36
|
+
if (fase === 4) {
|
|
37
|
+
// Especialista de Arquitetura
|
|
38
|
+
return `
|
|
39
|
+
## 🏗️ Decisões de Arquitetura
|
|
40
|
+
|
|
41
|
+
Como Especialista de Arquitetura, preciso entender suas preferências e restrições:
|
|
42
|
+
|
|
43
|
+
### 1. Stack Tecnológica
|
|
44
|
+
- **Frontend:** Tem preferência? (React, Vue, Angular, Next.js)
|
|
45
|
+
- **Backend:** Qual linguagem/framework? (Node.js, Python, PHP, Java)
|
|
46
|
+
- **Database:** Qual banco de dados? (PostgreSQL, MySQL, MongoDB)
|
|
47
|
+
- Alguma restrição ou tecnologia que o time já domina?
|
|
48
|
+
|
|
49
|
+
### 2. Time e Infraestrutura
|
|
50
|
+
- Quem vai desenvolver? (senioridade: júnior, pleno, sênior)
|
|
51
|
+
- Onde vai hospedar? (AWS, Azure, Vercel, Heroku, VPS)
|
|
52
|
+
- Orçamento mensal de infraestrutura?
|
|
53
|
+
|
|
54
|
+
### 3. Padrões Arquiteturais
|
|
55
|
+
- Monolito ou microserviços?
|
|
56
|
+
- Multi-tenant necessário?
|
|
57
|
+
- Precisa de cache? CDN?
|
|
58
|
+
|
|
59
|
+
> 💡 Se não tiver preferência, posso sugerir a melhor stack baseado nos requisitos já definidos.
|
|
60
|
+
`;
|
|
61
|
+
}
|
|
62
|
+
return '';
|
|
63
|
+
}
|
|
64
|
+
export {};
|
|
65
|
+
//# sourceMappingURL=specialist-questions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"specialist-questions.js","sourceRoot":"","sources":["../../src/handlers/specialist-questions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,SAAS,sBAAsB,CAAC,IAAY,EAAE,KAAa;IACvD,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACb,6BAA6B;QAC7B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Bd,CAAC;IACE,CAAC;IAED,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACb,8BAA8B;QAC9B,OAAO;;;;;;;;;;;;;;;;;;;;;;CAsBd,CAAC;IACE,CAAC;IAED,OAAO,EAAE,CAAC;AACd,CAAC"}
|
|
@@ -8,6 +8,7 @@ export { withStateLoad } from "./state-loader.middleware.js";
|
|
|
8
8
|
export { withPersistence } from "./persistence.middleware.js";
|
|
9
9
|
export { withFlowEngine } from "./flow-engine.middleware.js";
|
|
10
10
|
export { withSkillInjection } from "./skill-injection.middleware.js";
|
|
11
|
+
export { withPromptValidation, defaultValidations } from "./validation.middleware.js";
|
|
11
12
|
import type { ToolResult } from "../types/index.js";
|
|
12
13
|
type ToolHandler = (args: Record<string, unknown>) => Promise<ToolResult>;
|
|
13
14
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/middleware/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/middleware/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAOtF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,KAAK,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;AAE1E;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,WAAW,CAWpF;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,WAAW,CAKzF;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,WAAW,CAOzF;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,WAAW,CAO/F"}
|
package/dist/middleware/index.js
CHANGED
|
@@ -8,6 +8,7 @@ export { withStateLoad } from "./state-loader.middleware.js";
|
|
|
8
8
|
export { withPersistence } from "./persistence.middleware.js";
|
|
9
9
|
export { withFlowEngine } from "./flow-engine.middleware.js";
|
|
10
10
|
export { withSkillInjection } from "./skill-injection.middleware.js";
|
|
11
|
+
export { withPromptValidation, defaultValidations } from "./validation.middleware.js"; // v6.0
|
|
11
12
|
import { withStateLoad } from "./state-loader.middleware.js";
|
|
12
13
|
import { withPersistence } from "./persistence.middleware.js";
|
|
13
14
|
import { withFlowEngine } from "./flow-engine.middleware.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/middleware/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/middleware/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC,CAAC,OAAO;AAE9F,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAKvD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,OAAoB;IACnE,OAAO,iBAAiB,CACpB,QAAQ,EACR,aAAa,CACT,cAAc,CACV,eAAe,CACX,kBAAkB,CAAC,OAAO,CAAC,CAC9B,CACJ,CACJ,CACJ,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAgB,EAAE,OAAoB;IACxE,OAAO,iBAAiB,CACpB,QAAQ,EACR,aAAa,CAAC,OAAO,CAAC,CACzB,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAgB,EAAE,OAAoB;IACxE,OAAO,iBAAiB,CACpB,QAAQ,EACR,aAAa,CACT,kBAAkB,CAAC,OAAO,CAAC,CAC9B,CACJ,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CAAC,QAAgB,EAAE,OAAoB;IAC9E,OAAO,iBAAiB,CACpB,QAAQ,EACR,aAAa,CACT,eAAe,CAAC,OAAO,CAAC,CAC3B,CACJ,CAAC;AACN,CAAC"}
|