@maestro-ai/mcp-server 2.5.0 → 2.6.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.
Files changed (75) hide show
  1. package/dist/flows/onboarding-orchestrator.d.ts +41 -0
  2. package/dist/flows/onboarding-orchestrator.d.ts.map +1 -0
  3. package/dist/flows/onboarding-orchestrator.js +399 -0
  4. package/dist/flows/onboarding-orchestrator.js.map +1 -0
  5. package/dist/flows/types.d.ts.map +1 -1
  6. package/dist/flows/types.js +7 -0
  7. package/dist/flows/types.js.map +1 -1
  8. package/dist/index.js +2 -2
  9. package/dist/index.js.map +1 -1
  10. package/dist/tests/brainstorm-prd.test.d.ts +5 -0
  11. package/dist/tests/brainstorm-prd.test.d.ts.map +1 -0
  12. package/dist/tests/brainstorm-prd.test.js +291 -0
  13. package/dist/tests/brainstorm-prd.test.js.map +1 -0
  14. package/dist/tests/migracao-skills.test.d.ts +2 -0
  15. package/dist/tests/migracao-skills.test.d.ts.map +1 -0
  16. package/dist/tests/migracao-skills.test.js +208 -0
  17. package/dist/tests/migracao-skills.test.js.map +1 -0
  18. package/dist/tests/onboarding-flow.test.d.ts +5 -0
  19. package/dist/tests/onboarding-flow.test.d.ts.map +1 -0
  20. package/dist/tests/onboarding-flow.test.js +231 -0
  21. package/dist/tests/onboarding-flow.test.js.map +1 -0
  22. package/dist/tests/readiness-dashboard.test.d.ts +5 -0
  23. package/dist/tests/readiness-dashboard.test.d.ts.map +1 -0
  24. package/dist/tests/readiness-dashboard.test.js +252 -0
  25. package/dist/tests/readiness-dashboard.test.js.map +1 -0
  26. package/dist/tools/brainstorm.d.ts +41 -0
  27. package/dist/tools/brainstorm.d.ts.map +1 -0
  28. package/dist/tools/brainstorm.js +429 -0
  29. package/dist/tools/brainstorm.js.map +1 -0
  30. package/dist/tools/carregar-projeto.js +1 -1
  31. package/dist/tools/carregar-projeto.js.map +1 -1
  32. package/dist/tools/confirmar-stitch.js +1 -1
  33. package/dist/tools/confirmar-stitch.js.map +1 -1
  34. package/dist/tools/index.d.ts.map +1 -1
  35. package/dist/tools/index.js +51 -0
  36. package/dist/tools/index.js.map +1 -1
  37. package/dist/tools/next-steps-dashboard.d.ts +30 -0
  38. package/dist/tools/next-steps-dashboard.d.ts.map +1 -0
  39. package/dist/tools/next-steps-dashboard.js +248 -0
  40. package/dist/tools/next-steps-dashboard.js.map +1 -0
  41. package/dist/tools/prd-writer.d.ts +36 -0
  42. package/dist/tools/prd-writer.d.ts.map +1 -0
  43. package/dist/tools/prd-writer.js +377 -0
  44. package/dist/tools/prd-writer.js.map +1 -0
  45. package/dist/tools/proximo.d.ts +5 -0
  46. package/dist/tools/proximo.d.ts.map +1 -1
  47. package/dist/tools/proximo.js +87 -42
  48. package/dist/tools/proximo.js.map +1 -1
  49. package/dist/tools/validar-gate.d.ts.map +1 -1
  50. package/dist/tools/validar-gate.js +23 -3
  51. package/dist/tools/validar-gate.js.map +1 -1
  52. package/dist/types/index.d.ts +2 -0
  53. package/dist/types/index.d.ts.map +1 -1
  54. package/dist/types/index.js.map +1 -1
  55. package/dist/types/onboarding.d.ts +124 -0
  56. package/dist/types/onboarding.d.ts.map +1 -0
  57. package/dist/types/onboarding.js +5 -0
  58. package/dist/types/onboarding.js.map +1 -0
  59. package/dist/utils/discovery-adapter.d.ts +33 -0
  60. package/dist/utils/discovery-adapter.d.ts.map +1 -0
  61. package/dist/utils/discovery-adapter.js +392 -0
  62. package/dist/utils/discovery-adapter.js.map +1 -0
  63. package/dist/utils/files.d.ts +1 -0
  64. package/dist/utils/files.d.ts.map +1 -1
  65. package/dist/utils/files.js +97 -7
  66. package/dist/utils/files.js.map +1 -1
  67. package/dist/utils/instructions.d.ts +8 -3
  68. package/dist/utils/instructions.d.ts.map +1 -1
  69. package/dist/utils/instructions.js +72 -25
  70. package/dist/utils/instructions.js.map +1 -1
  71. package/dist/utils/readiness-checker.d.ts +27 -0
  72. package/dist/utils/readiness-checker.d.ts.map +1 -0
  73. package/dist/utils/readiness-checker.js +226 -0
  74. package/dist/utils/readiness-checker.js.map +1 -0
  75. package/package.json +1 -1
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Testes para brainstorm e PRD writer
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=brainstorm-prd.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brainstorm-prd.test.d.ts","sourceRoot":"","sources":["../../src/tests/brainstorm-prd.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,291 @@
1
+ /**
2
+ * Testes para brainstorm e PRD writer
3
+ */
4
+ import { describe, it, expect, beforeEach } from 'vitest';
5
+ import { gerarBlocosDiscovery } from '../utils/discovery-adapter.js';
6
+ describe('Brainstorm e PRD Writer', () => {
7
+ let onboarding;
8
+ beforeEach(() => {
9
+ onboarding = {
10
+ projectId: 'test-project-123',
11
+ phase: 'discovery',
12
+ discoveryStatus: 'completed',
13
+ discoveryBlocks: gerarBlocosDiscovery({
14
+ mode: 'balanced',
15
+ skipCompletedBlocks: false,
16
+ prioritizeByMode: true,
17
+ allowBatchInput: true,
18
+ }),
19
+ discoveryResponses: {
20
+ nome_projeto: 'PulseTrack',
21
+ problema: 'Monitorar saúde ocupacional',
22
+ publico_alvo: 'Empresas e profissionais de saúde',
23
+ funcionalidades_principais: ['Dashboard', 'Alertas', 'Relatórios'],
24
+ plataformas: ['Web', 'Mobile'],
25
+ cronograma: '6 meses',
26
+ stack_preferida: 'React + Node.js',
27
+ tamanho_time: '2-5 pessoas',
28
+ experiencia_time: 'Pleno',
29
+ },
30
+ discoveryCompletedAt: new Date().toISOString(),
31
+ brainstormStatus: 'pending',
32
+ brainstormSections: [],
33
+ prdStatus: 'pending',
34
+ prdScore: 0,
35
+ mode: 'balanced',
36
+ totalInteractions: 0,
37
+ };
38
+ });
39
+ describe('Brainstorm Sections', () => {
40
+ it('deve gerar 5 seções de brainstorm', () => {
41
+ const secoes = [
42
+ {
43
+ id: 'problema-oportunidade',
44
+ title: 'Problema e Oportunidade',
45
+ description: 'Defina o problema de forma quantificada',
46
+ prompt: 'Elabore o problema...',
47
+ expectedOutput: 'Análise estruturada',
48
+ status: 'pending',
49
+ order: 1,
50
+ },
51
+ {
52
+ id: 'personas-jtbd',
53
+ title: 'Personas e Jobs to Be Done',
54
+ description: 'Defina personas principais',
55
+ prompt: 'Crie personas...',
56
+ expectedOutput: 'Descrição de personas',
57
+ status: 'pending',
58
+ order: 2,
59
+ },
60
+ {
61
+ id: 'mvp-funcionalidades',
62
+ title: 'MVP e Funcionalidades',
63
+ description: 'Refine funcionalidades',
64
+ prompt: 'Refine e priorize...',
65
+ expectedOutput: 'Matriz RICE',
66
+ status: 'pending',
67
+ order: 3,
68
+ },
69
+ {
70
+ id: 'metricas-sucesso',
71
+ title: 'Métricas de Sucesso',
72
+ description: 'Defina North Star',
73
+ prompt: 'Defina métricas...',
74
+ expectedOutput: 'North Star + KPIs',
75
+ status: 'pending',
76
+ order: 4,
77
+ },
78
+ {
79
+ id: 'riscos-mitigacoes',
80
+ title: 'Riscos e Mitigações',
81
+ description: 'Identifique riscos',
82
+ prompt: 'Identifique riscos...',
83
+ expectedOutput: 'Matriz de riscos',
84
+ status: 'pending',
85
+ order: 5,
86
+ },
87
+ ];
88
+ expect(secoes.length).toBe(5);
89
+ expect(secoes[0].id).toBe('problema-oportunidade');
90
+ expect(secoes[4].id).toBe('riscos-mitigacoes');
91
+ });
92
+ it('deve rastrear progresso do brainstorm', () => {
93
+ const secoes = [
94
+ {
95
+ id: 'problema-oportunidade',
96
+ title: 'Problema e Oportunidade',
97
+ description: 'Defina o problema',
98
+ prompt: 'Elabore...',
99
+ expectedOutput: 'Análise',
100
+ status: 'completed',
101
+ response: 'Resposta do usuário',
102
+ order: 1,
103
+ },
104
+ {
105
+ id: 'personas-jtbd',
106
+ title: 'Personas',
107
+ description: 'Defina personas',
108
+ prompt: 'Crie...',
109
+ expectedOutput: 'Personas',
110
+ status: 'pending',
111
+ order: 2,
112
+ },
113
+ ];
114
+ const completadas = secoes.filter((s) => s.status === 'completed').length;
115
+ const total = secoes.length;
116
+ const percentual = Math.round((completadas / total) * 100);
117
+ expect(completadas).toBe(1);
118
+ expect(total).toBe(2);
119
+ expect(percentual).toBe(50);
120
+ });
121
+ it('deve marcar brainstorm como completo quando todas as seções estão completas', () => {
122
+ const secoes = [
123
+ {
124
+ id: 'problema-oportunidade',
125
+ title: 'Problema',
126
+ description: 'Defina',
127
+ prompt: 'Elabore...',
128
+ expectedOutput: 'Análise',
129
+ status: 'completed',
130
+ response: 'Resposta 1',
131
+ order: 1,
132
+ },
133
+ {
134
+ id: 'personas-jtbd',
135
+ title: 'Personas',
136
+ description: 'Defina',
137
+ prompt: 'Crie...',
138
+ expectedOutput: 'Personas',
139
+ status: 'completed',
140
+ response: 'Resposta 2',
141
+ order: 2,
142
+ },
143
+ ];
144
+ const todasCompletas = secoes.every((s) => s.status === 'completed');
145
+ expect(todasCompletas).toBe(true);
146
+ });
147
+ });
148
+ describe('PRD Generation', () => {
149
+ it('deve gerar PRD com todas as seções', () => {
150
+ const prdConteudo = `# PRD - ${onboarding.discoveryResponses.nome_projeto}
151
+
152
+ ## 1. Sumário Executivo
153
+ Problema e oportunidade...
154
+
155
+ ## 2. Personas e Jobs to Be Done
156
+ Personas...
157
+
158
+ ## 3. MVP e Funcionalidades Priorizadas
159
+ Funcionalidades...
160
+
161
+ ## 4. Métricas de Sucesso
162
+ Métricas...
163
+
164
+ ## 5. Riscos e Planos de Mitigação
165
+ Riscos...
166
+
167
+ ## 6. Contexto Técnico
168
+ Stack: ${onboarding.discoveryResponses.stack_preferida}
169
+
170
+ ## 7. Timeline e Recursos
171
+ Cronograma: ${onboarding.discoveryResponses.cronograma}
172
+
173
+ ## 8. Requisitos Críticos
174
+ Requisitos...`;
175
+ expect(prdConteudo).toContain('PulseTrack');
176
+ expect(prdConteudo).toContain('Sumário Executivo');
177
+ expect(prdConteudo).toContain('Personas');
178
+ expect(prdConteudo).toContain('MVP');
179
+ expect(prdConteudo).toContain('Métricas');
180
+ expect(prdConteudo).toContain('Riscos');
181
+ expect(prdConteudo).toContain('React + Node.js');
182
+ expect(prdConteudo).toContain('6 meses');
183
+ });
184
+ it('deve validar completude do PRD', () => {
185
+ const checklist = {
186
+ 'Sumário Executivo': true,
187
+ 'Personas e JTBD': true,
188
+ 'MVP e Funcionalidades': true,
189
+ 'Métricas de Sucesso': true,
190
+ 'Riscos e Mitigações': true,
191
+ 'Contexto Técnico': true,
192
+ 'Timeline e Recursos': true,
193
+ 'Requisitos Críticos': true,
194
+ };
195
+ const itemsValidados = Object.values(checklist).filter((v) => v).length;
196
+ const totalItems = Object.keys(checklist).length;
197
+ const score = Math.round((itemsValidados / totalItems) * 100);
198
+ expect(score).toBe(100);
199
+ expect(itemsValidados).toBe(8);
200
+ });
201
+ it('deve detectar lacunas no PRD', () => {
202
+ const checklist = {
203
+ 'Sumário Executivo': true,
204
+ 'Personas e JTBD': false,
205
+ 'MVP e Funcionalidades': true,
206
+ 'Métricas de Sucesso': false,
207
+ 'Riscos e Mitigações': true,
208
+ 'Contexto Técnico': true,
209
+ 'Timeline e Recursos': true,
210
+ 'Requisitos Críticos': true,
211
+ };
212
+ const itemsValidados = Object.values(checklist).filter((v) => v).length;
213
+ const totalItems = Object.keys(checklist).length;
214
+ const score = Math.round((itemsValidados / totalItems) * 100);
215
+ const lacunas = Object.entries(checklist)
216
+ .filter(([_, valido]) => !valido)
217
+ .map(([item]) => item);
218
+ expect(score).toBe(75);
219
+ expect(lacunas.length).toBe(2);
220
+ expect(lacunas).toContain('Personas e JTBD');
221
+ expect(lacunas).toContain('Métricas de Sucesso');
222
+ });
223
+ });
224
+ describe('Onboarding State Transitions', () => {
225
+ it('deve transicionar de discovery para brainstorm', () => {
226
+ onboarding.phase = 'brainstorm';
227
+ onboarding.brainstormStatus = 'in_progress';
228
+ expect(onboarding.phase).toBe('brainstorm');
229
+ expect(onboarding.brainstormStatus).toBe('in_progress');
230
+ });
231
+ it('deve transicionar de brainstorm para prd_draft', () => {
232
+ onboarding.phase = 'prd_draft';
233
+ onboarding.brainstormStatus = 'completed';
234
+ onboarding.prdStatus = 'draft';
235
+ expect(onboarding.phase).toBe('prd_draft');
236
+ expect(onboarding.brainstormStatus).toBe('completed');
237
+ expect(onboarding.prdStatus).toBe('draft');
238
+ });
239
+ it('deve transicionar de prd_draft para validation', () => {
240
+ onboarding.phase = 'validation';
241
+ onboarding.prdStatus = 'validated';
242
+ onboarding.prdScore = 85;
243
+ expect(onboarding.phase).toBe('validation');
244
+ expect(onboarding.prdStatus).toBe('validated');
245
+ expect(onboarding.prdScore).toBeGreaterThanOrEqual(70);
246
+ });
247
+ it('deve rastrear total de interações', () => {
248
+ onboarding.totalInteractions = 0;
249
+ // Discovery
250
+ onboarding.totalInteractions += 3;
251
+ expect(onboarding.totalInteractions).toBe(3);
252
+ // Brainstorm
253
+ onboarding.totalInteractions += 5;
254
+ expect(onboarding.totalInteractions).toBe(8);
255
+ // PRD
256
+ onboarding.totalInteractions += 2;
257
+ expect(onboarding.totalInteractions).toBe(10);
258
+ });
259
+ });
260
+ describe('PRD Score Calculation', () => {
261
+ it('deve calcular score baseado em completude', () => {
262
+ const completude = {
263
+ campos_preenchidos: 8,
264
+ campos_totais: 8,
265
+ };
266
+ const score = Math.round((completude.campos_preenchidos / completude.campos_totais) * 100);
267
+ expect(score).toBe(100);
268
+ });
269
+ it('deve considerar PRD validado com score >= 70', () => {
270
+ const scores = [85, 75, 70, 65, 50];
271
+ scores.forEach((score) => {
272
+ const validado = score >= 70;
273
+ if (score >= 70) {
274
+ expect(validado).toBe(true);
275
+ }
276
+ else {
277
+ expect(validado).toBe(false);
278
+ }
279
+ });
280
+ });
281
+ it('deve calcular score ponderado com qualidade', () => {
282
+ const completude = 80;
283
+ const qualidade = 75;
284
+ const clareza = 85;
285
+ const scoreTotal = Math.round(completude * 0.4 + qualidade * 0.35 + clareza * 0.25);
286
+ expect(scoreTotal).toBeGreaterThan(70);
287
+ expect(scoreTotal).toBeLessThanOrEqual(100);
288
+ });
289
+ });
290
+ });
291
+ //# sourceMappingURL=brainstorm-prd.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brainstorm-prd.test.js","sourceRoot":"","sources":["../../src/tests/brainstorm-prd.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=migracao-skills.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migracao-skills.test.d.ts","sourceRoot":"","sources":["../../src/tests/migracao-skills.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,208 @@
1
+ const TEMPLATES_AVAILABLE = existsSync(join(getServerContentRoot(), "templates"));
2
+ const itWithTemplates = TEMPLATES_AVAILABLE ? it : it.skip;
3
+ /**
4
+ * Testes para migração de maestro:// para skills locais
5
+ * Valida normalização, mapeamento e fluxo completo
6
+ */
7
+ import { describe, it, expect } from "vitest";
8
+ import { existsSync } from "fs";
9
+ import { join } from "path";
10
+ import { lerEspecialista, lerTemplate, getServerContentRoot } from "../utils/files.js";
11
+ import { getSkillParaFase, temSkillParaFase } from "../utils/prompt-mapper.js";
12
+ import { gerarInstrucaoRecursos, gerarInstrucaoRecursosCompacta, gerarInstrucaoProximaFase } from "../utils/instructions.js";
13
+ describe("Migração de maestro:// para Skills", () => {
14
+ describe("Normalização de nomes de especialistas", () => {
15
+ it("deve encontrar skill para 'Gestão de Produto'", async () => {
16
+ const conteudo = await lerEspecialista("Gestão de Produto");
17
+ expect(conteudo).toBeTruthy();
18
+ expect(conteudo.length).toBeGreaterThan(0);
19
+ });
20
+ it("deve encontrar skill para 'gestao-produto' (normalizado)", async () => {
21
+ const conteudo = await lerEspecialista("gestao-produto");
22
+ expect(conteudo).toBeTruthy();
23
+ });
24
+ it("deve encontrar skill para 'gestao de produto' (sem acento)", async () => {
25
+ const conteudo = await lerEspecialista("gestao de produto");
26
+ expect(conteudo).toBeTruthy();
27
+ });
28
+ it("deve encontrar skill para 'Engenharia de Requisitos'", async () => {
29
+ const conteudo = await lerEspecialista("Engenharia de Requisitos");
30
+ expect(conteudo).toBeTruthy();
31
+ });
32
+ it("deve encontrar skill para 'UX Design'", async () => {
33
+ const conteudo = await lerEspecialista("UX Design");
34
+ expect(conteudo).toBeTruthy();
35
+ });
36
+ it("deve encontrar skill para 'Arquitetura de Software'", async () => {
37
+ const conteudo = await lerEspecialista("Arquitetura de Software");
38
+ expect(conteudo).toBeTruthy();
39
+ });
40
+ it("deve lançar erro descritivo para especialista inexistente", async () => {
41
+ try {
42
+ await lerEspecialista("Especialista Inexistente");
43
+ expect.fail("Deveria ter lançado erro");
44
+ }
45
+ catch (error) {
46
+ expect(error).toBeTruthy();
47
+ const message = error instanceof Error ? error.message : String(error);
48
+ expect(message).toContain("Skill não encontrada");
49
+ expect(message).toContain("Skills disponíveis");
50
+ }
51
+ });
52
+ });
53
+ describe("Mapeamento de fases para skills", () => {
54
+ it("deve mapear fase 'Produto' para skill", () => {
55
+ const skill = getSkillParaFase("Produto");
56
+ expect(skill).toBe("specialist-gestao-produto");
57
+ });
58
+ it("deve mapear fase 'Requisitos' para skill", () => {
59
+ const skill = getSkillParaFase("Requisitos");
60
+ expect(skill).toBe("specialist-engenharia-requisitos-ia");
61
+ });
62
+ it("deve mapear fase 'UX Design' para skill", () => {
63
+ const skill = getSkillParaFase("UX Design");
64
+ expect(skill).toBe("specialist-ux-design");
65
+ });
66
+ it("deve mapear fase 'Arquitetura' para skill", () => {
67
+ const skill = getSkillParaFase("Arquitetura");
68
+ expect(skill).toBe("specialist-arquitetura-software");
69
+ });
70
+ it("deve verificar se fase tem skill associada", () => {
71
+ expect(temSkillParaFase("Produto")).toBe(true);
72
+ expect(temSkillParaFase("Requisitos")).toBe(true);
73
+ expect(temSkillParaFase("Fase Inexistente")).toBe(false);
74
+ });
75
+ it("deve retornar null para fase sem skill", () => {
76
+ const skill = getSkillParaFase("Fase Inexistente");
77
+ expect(skill).toBeNull();
78
+ });
79
+ });
80
+ describe("Geração de instruções com skills", () => {
81
+ it("deve gerar instrução de recursos para fase com skill", () => {
82
+ const instrucao = gerarInstrucaoRecursos("Produto", "AÇÃO OBRIGATÓRIA", "windsurf");
83
+ expect(instrucao).toContain("specialist-gestao-produto");
84
+ expect(instrucao).toContain("SKILL.md");
85
+ expect(instrucao).toContain("Templates");
86
+ expect(instrucao).toContain("Checklists");
87
+ expect(instrucao).toContain(".windsurf/skills");
88
+ expect(instrucao).not.toContain("maestro://");
89
+ });
90
+ it("deve gerar instrução compacta para fase com skill", () => {
91
+ const instrucao = gerarInstrucaoRecursosCompacta("Requisitos", "windsurf");
92
+ expect(instrucao).toContain("specialist-engenharia-requisitos-ia");
93
+ expect(instrucao).toContain("SKILL.md");
94
+ expect(instrucao).toContain("Templates");
95
+ expect(instrucao).not.toContain("maestro://");
96
+ });
97
+ it("deve gerar instrução para próxima fase", () => {
98
+ const instrucao = gerarInstrucaoProximaFase("UX Design", "windsurf");
99
+ expect(instrucao).toContain("specialist-ux-design");
100
+ expect(instrucao).toContain("PRÓXIMA FASE");
101
+ expect(instrucao).toContain("UX Design");
102
+ expect(instrucao).not.toContain("maestro://");
103
+ });
104
+ it("deve usar IDE correto nos caminhos (cursor)", () => {
105
+ const instrucao = gerarInstrucaoRecursos("Produto", "AÇÃO", "cursor");
106
+ expect(instrucao).toContain(".cursor/skills");
107
+ expect(instrucao).not.toContain(".windsurf/skills");
108
+ });
109
+ it("deve usar IDE correto nos caminhos (antigravity)", () => {
110
+ const instrucao = gerarInstrucaoRecursos("Produto", "AÇÃO", "antigravity");
111
+ expect(instrucao).toContain(".agent/skills");
112
+ expect(instrucao).not.toContain(".windsurf/skills");
113
+ });
114
+ it("deve informar quando fase não tem skill", () => {
115
+ const instrucao = gerarInstrucaoRecursos("Fase Inexistente", "AÇÃO");
116
+ expect(instrucao).toContain("não possui skill");
117
+ });
118
+ });
119
+ describe("Compatibilidade com maestro://", () => {
120
+ it("lerEspecialista deve funcionar com nomes do maestro://", async () => {
121
+ // Simula chamada via maestro://especialista/Gestão de Produto
122
+ const conteudo = await lerEspecialista("Gestão de Produto");
123
+ expect(conteudo).toBeTruthy();
124
+ expect(conteudo.length).toBeGreaterThan(100); // SKILL.md deve ter conteúdo
125
+ });
126
+ itWithTemplates("lerTemplate deve funcionar com nomes do maestro://", async () => {
127
+ // Simula chamada via maestro://template/PRD
128
+ const conteudo = await lerTemplate("PRD");
129
+ expect(conteudo).toBeTruthy();
130
+ expect(conteudo.length).toBeGreaterThan(100);
131
+ });
132
+ });
133
+ describe("Fluxo completo PRD + proximo()", () => {
134
+ it("mensagem de entregável inválido deve referenciar skills", () => {
135
+ // Simula resposta do proximo() quando entregável < 200 chars
136
+ // Verificar que a mensagem não contém maestro://
137
+ const mensagemLegada = `
138
+ read_resource("maestro://especialista/Gestão de Produto")
139
+ read_resource("maestro://template/PRD")
140
+ `;
141
+ const mensagemNova = `
142
+ .windsurf/skills/specialist-gestao-produto/resources/reference/SKILL.md
143
+ .windsurf/skills/specialist-gestao-produto/resources/templates/
144
+ `;
145
+ // A mensagem nova deve estar sendo usada
146
+ expect(mensagemNova).toContain("specialist-gestao-produto");
147
+ expect(mensagemNova).not.toContain("maestro://");
148
+ });
149
+ });
150
+ describe("Regressão: maestro:// ainda funciona", () => {
151
+ it("lerEspecialista com nome exato de especialista", async () => {
152
+ // Teste de compatibilidade: nomes que vêm do maestro://
153
+ const nomes = [
154
+ "Gestão de Produto",
155
+ "Engenharia de Requisitos",
156
+ "UX Design",
157
+ "Arquitetura de Software",
158
+ "Plano de Execução",
159
+ "Desenvolvimento Frontend",
160
+ "Desenvolvimento Backend",
161
+ ];
162
+ for (const nome of nomes) {
163
+ const conteudo = await lerEspecialista(nome);
164
+ expect(conteudo).toBeTruthy();
165
+ expect(conteudo.length).toBeGreaterThan(0);
166
+ }
167
+ });
168
+ itWithTemplates("lerTemplate com nomes de template", async () => {
169
+ const nomes = [
170
+ "PRD",
171
+ "requisitos",
172
+ "design-doc",
173
+ "arquitetura",
174
+ "backlog",
175
+ ];
176
+ for (const nome of nomes) {
177
+ try {
178
+ const conteudo = await lerTemplate(nome);
179
+ expect(conteudo).toBeTruthy();
180
+ }
181
+ catch (error) {
182
+ // Template pode não existir, mas a função deve tentar
183
+ expect(error).toBeTruthy();
184
+ }
185
+ }
186
+ });
187
+ });
188
+ });
189
+ describe("Casos extremos e edge cases", () => {
190
+ it("deve normalizar múltiplos espaços", async () => {
191
+ const conteudo = await lerEspecialista("Gestão de Produto");
192
+ expect(conteudo).toBeTruthy();
193
+ });
194
+ it("deve normalizar caracteres especiais", async () => {
195
+ const conteudo = await lerEspecialista("Gestão-de-Produto");
196
+ expect(conteudo).toBeTruthy();
197
+ });
198
+ it("deve ser case-insensitive", async () => {
199
+ const conteudo1 = await lerEspecialista("GESTÃO DE PRODUTO");
200
+ const conteudo2 = await lerEspecialista("gestão de produto");
201
+ expect(conteudo1).toBe(conteudo2);
202
+ });
203
+ it("deve lidar com espaços em branco nas extremidades", async () => {
204
+ const conteudo = await lerEspecialista(" Gestão de Produto ");
205
+ expect(conteudo).toBeTruthy();
206
+ });
207
+ });
208
+ //# sourceMappingURL=migracao-skills.test.js.map