@maestro-ai/mcp-server 2.6.1 → 5.0.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/content/.version.json +16 -0
- package/dist/data/project-templates.d.ts +37 -0
- package/dist/data/project-templates.d.ts.map +1 -0
- package/dist/data/project-templates.js +208 -0
- package/dist/data/project-templates.js.map +1 -0
- package/dist/errors/index.d.ts +84 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +158 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/flows/onboarding-orchestrator.d.ts.map +1 -1
- package/dist/flows/onboarding-orchestrator.js +126 -91
- package/dist/flows/onboarding-orchestrator.js.map +1 -1
- package/dist/gates/validator.d.ts +2 -1
- package/dist/gates/validator.d.ts.map +1 -1
- package/dist/gates/validator.js +33 -2
- package/dist/gates/validator.js.map +1 -1
- package/dist/index.js +19 -164
- package/dist/index.js.map +1 -1
- package/dist/middleware/flow-engine.middleware.d.ts +14 -0
- package/dist/middleware/flow-engine.middleware.d.ts.map +1 -0
- package/dist/middleware/flow-engine.middleware.js +51 -0
- package/dist/middleware/flow-engine.middleware.js.map +1 -0
- package/dist/middleware/index.d.ts +36 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +45 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/middleware/persistence.middleware.d.ts +14 -0
- package/dist/middleware/persistence.middleware.d.ts.map +1 -0
- package/dist/middleware/persistence.middleware.js +55 -0
- package/dist/middleware/persistence.middleware.js.map +1 -0
- package/dist/middleware/skill-injection.middleware.d.ts +15 -0
- package/dist/middleware/skill-injection.middleware.d.ts.map +1 -0
- package/dist/middleware/skill-injection.middleware.js +63 -0
- package/dist/middleware/skill-injection.middleware.js.map +1 -0
- package/dist/middleware/state-loader.middleware.d.ts +13 -0
- package/dist/middleware/state-loader.middleware.d.ts.map +1 -0
- package/dist/middleware/state-loader.middleware.js +36 -0
- package/dist/middleware/state-loader.middleware.js.map +1 -0
- package/dist/router.d.ts +46 -0
- package/dist/router.d.ts.map +1 -0
- package/dist/router.js +441 -0
- package/dist/router.js.map +1 -0
- package/dist/services/content-resolver.service.d.ts +96 -0
- package/dist/services/content-resolver.service.d.ts.map +1 -0
- package/dist/services/content-resolver.service.js +280 -0
- package/dist/services/content-resolver.service.js.map +1 -0
- package/dist/services/flow-engine.d.ts +82 -0
- package/dist/services/flow-engine.d.ts.map +1 -0
- package/dist/services/flow-engine.js +270 -0
- package/dist/services/flow-engine.js.map +1 -0
- package/dist/services/onboarding.service.d.ts +20 -0
- package/dist/services/onboarding.service.d.ts.map +1 -0
- package/dist/services/onboarding.service.js +49 -0
- package/dist/services/onboarding.service.js.map +1 -0
- package/dist/services/skill-loader.service.d.ts +81 -0
- package/dist/services/skill-loader.service.d.ts.map +1 -0
- package/dist/services/skill-loader.service.js +321 -0
- package/dist/services/skill-loader.service.js.map +1 -0
- package/dist/services/specialist.service.d.ts +20 -0
- package/dist/services/specialist.service.d.ts.map +1 -0
- package/dist/services/specialist.service.js +115 -0
- package/dist/services/specialist.service.js.map +1 -0
- package/dist/services/state.service.d.ts +59 -0
- package/dist/services/state.service.d.ts.map +1 -0
- package/dist/services/state.service.js +131 -0
- package/dist/services/state.service.js.map +1 -0
- package/dist/stdio.js +329 -437
- package/dist/stdio.js.map +1 -1
- package/dist/tests/content-resolver.test.d.ts +5 -0
- package/dist/tests/content-resolver.test.d.ts.map +1 -0
- package/dist/tests/content-resolver.test.js +157 -0
- package/dist/tests/content-resolver.test.js.map +1 -0
- package/dist/tests/middleware.test.d.ts +5 -0
- package/dist/tests/middleware.test.d.ts.map +1 -0
- package/dist/tests/middleware.test.js +228 -0
- package/dist/tests/middleware.test.js.map +1 -0
- package/dist/tests/skill-loader.test.d.ts +5 -0
- package/dist/tests/skill-loader.test.d.ts.map +1 -0
- package/dist/tests/skill-loader.test.js +242 -0
- package/dist/tests/skill-loader.test.js.map +1 -0
- package/dist/tools/aprovar-gate.d.ts.map +1 -1
- package/dist/tools/aprovar-gate.js +35 -0
- package/dist/tools/aprovar-gate.js.map +1 -1
- package/dist/tools/brainstorm.d.ts.map +1 -1
- package/dist/tools/brainstorm.js +90 -49
- package/dist/tools/brainstorm.js.map +1 -1
- package/dist/tools/classificar.d.ts.map +1 -1
- package/dist/tools/classificar.js +20 -1
- package/dist/tools/classificar.js.map +1 -1
- package/dist/tools/confirmar-classificacao.d.ts.map +1 -1
- package/dist/tools/confirmar-classificacao.js +20 -1
- package/dist/tools/confirmar-classificacao.js.map +1 -1
- package/dist/tools/consolidated/analisar.d.ts +56 -0
- package/dist/tools/consolidated/analisar.d.ts.map +1 -0
- package/dist/tools/consolidated/analisar.js +96 -0
- package/dist/tools/consolidated/analisar.js.map +1 -0
- package/dist/tools/consolidated/avancar.d.ts +67 -0
- package/dist/tools/consolidated/avancar.d.ts.map +1 -0
- package/dist/tools/consolidated/avancar.js +132 -0
- package/dist/tools/consolidated/avancar.js.map +1 -0
- package/dist/tools/consolidated/checkpoint-tool.d.ts +66 -0
- package/dist/tools/consolidated/checkpoint-tool.d.ts.map +1 -0
- package/dist/tools/consolidated/checkpoint-tool.js +111 -0
- package/dist/tools/consolidated/checkpoint-tool.js.map +1 -0
- package/dist/tools/consolidated/validar.d.ts +63 -0
- package/dist/tools/consolidated/validar.d.ts.map +1 -0
- package/dist/tools/consolidated/validar.js +104 -0
- package/dist/tools/consolidated/validar.js.map +1 -0
- package/dist/tools/contexto.d.ts.map +1 -1
- package/dist/tools/contexto.js +18 -0
- package/dist/tools/contexto.js.map +1 -1
- package/dist/tools/discovery.d.ts +10 -10
- package/dist/tools/discovery.d.ts.map +1 -1
- package/dist/tools/discovery.js +82 -56
- package/dist/tools/discovery.js.map +1 -1
- package/dist/tools/iniciar-projeto.d.ts +48 -0
- package/dist/tools/iniciar-projeto.d.ts.map +1 -1
- package/dist/tools/iniciar-projeto.js +234 -45
- package/dist/tools/iniciar-projeto.js.map +1 -1
- package/dist/tools/maestro-tool.d.ts +51 -0
- package/dist/tools/maestro-tool.d.ts.map +1 -0
- package/dist/tools/maestro-tool.js +224 -0
- package/dist/tools/maestro-tool.js.map +1 -0
- package/dist/tools/prd-writer.d.ts +1 -1
- package/dist/tools/prd-writer.d.ts.map +1 -1
- package/dist/tools/prd-writer.js +138 -2
- package/dist/tools/prd-writer.js.map +1 -1
- package/dist/tools/proximo.d.ts.map +1 -1
- package/dist/tools/proximo.js +22 -16
- package/dist/tools/proximo.js.map +1 -1
- package/dist/tools/salvar.d.ts.map +1 -1
- package/dist/tools/salvar.js +13 -0
- package/dist/tools/salvar.js.map +1 -1
- package/dist/tools/setup-inicial.d.ts.map +1 -1
- package/dist/tools/setup-inicial.js +12 -0
- package/dist/tools/setup-inicial.js.map +1 -1
- package/dist/tools/status.d.ts.map +1 -1
- package/dist/tools/status.js +6 -0
- package/dist/tools/status.js.map +1 -1
- package/dist/tools/validar-gate.d.ts.map +1 -1
- package/dist/tools/validar-gate.js +25 -0
- package/dist/tools/validar-gate.js.map +1 -1
- package/dist/types/index.d.ts +20 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/response.d.ts +49 -0
- package/dist/types/response.d.ts.map +1 -1
- package/dist/types/response.js.map +1 -1
- package/dist/utils/smart-defaults.d.ts +56 -0
- package/dist/utils/smart-defaults.d.ts.map +1 -0
- package/dist/utils/smart-defaults.js +113 -0
- package/dist/utils/smart-defaults.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Testes para SkillLoaderService
|
|
3
|
+
*/
|
|
4
|
+
import { describe, it, expect, beforeEach, vi } from 'vitest';
|
|
5
|
+
import { SkillLoaderService } from '../services/skill-loader.service.js';
|
|
6
|
+
// Mock ContentResolverService
|
|
7
|
+
vi.mock('../services/content-resolver.service.js');
|
|
8
|
+
// Mock prompt-mapper
|
|
9
|
+
vi.mock('../utils/prompt-mapper.js', () => ({
|
|
10
|
+
getSkillParaFase: vi.fn((fase) => {
|
|
11
|
+
const map = {
|
|
12
|
+
'Produto': 'specialist-gestao-produto',
|
|
13
|
+
'Arquitetura': 'specialist-arquitetura-software',
|
|
14
|
+
'Desconhecida': '',
|
|
15
|
+
};
|
|
16
|
+
return map[fase] || null;
|
|
17
|
+
}),
|
|
18
|
+
FASE_SKILL_MAP: {
|
|
19
|
+
'Produto': 'specialist-gestao-produto',
|
|
20
|
+
'Arquitetura': 'specialist-arquitetura-software',
|
|
21
|
+
},
|
|
22
|
+
}));
|
|
23
|
+
// Mock specialist.service
|
|
24
|
+
vi.mock('../services/specialist.service.js', () => ({
|
|
25
|
+
getSpecialistPersona: vi.fn((fase) => {
|
|
26
|
+
if (fase === 'Produto') {
|
|
27
|
+
return {
|
|
28
|
+
name: 'Gestão de Produto',
|
|
29
|
+
tone: 'Estratégico',
|
|
30
|
+
expertise: ['product discovery', 'lean startup'],
|
|
31
|
+
instructions: 'Foque em entender o problema.',
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
if (fase === 'Arquitetura') {
|
|
35
|
+
return {
|
|
36
|
+
name: 'Arquitetura de Software',
|
|
37
|
+
tone: 'Técnico',
|
|
38
|
+
expertise: ['C4', 'ADR'],
|
|
39
|
+
instructions: 'Defina arquitetura alvo.',
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
return null;
|
|
43
|
+
}),
|
|
44
|
+
}));
|
|
45
|
+
const SAMPLE_SKILL_MD = `---
|
|
46
|
+
name: specialist-gestao-produto
|
|
47
|
+
description: PRD e gestão de produto
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
# Gestão de Produto · Skill do Especialista
|
|
51
|
+
|
|
52
|
+
## Missão
|
|
53
|
+
Definir produto com foco no usuário.
|
|
54
|
+
|
|
55
|
+
## Quando ativar
|
|
56
|
+
- Fase 1 do projeto
|
|
57
|
+
|
|
58
|
+
## Inputs obrigatórios
|
|
59
|
+
- Briefing do cliente
|
|
60
|
+
|
|
61
|
+
## Outputs gerados
|
|
62
|
+
- PRD completo
|
|
63
|
+
|
|
64
|
+
## Quality Gate
|
|
65
|
+
- PRD com escopo definido
|
|
66
|
+
- Personas mapeadas
|
|
67
|
+
|
|
68
|
+
## 🚀 Processo Otimizado
|
|
69
|
+
|
|
70
|
+
### 1. Discovery
|
|
71
|
+
Faça perguntas focadas.
|
|
72
|
+
|
|
73
|
+
### 2. Geração
|
|
74
|
+
Use template estruturado.
|
|
75
|
+
|
|
76
|
+
## 📋 Recursos Disponíveis
|
|
77
|
+
|
|
78
|
+
### Templates
|
|
79
|
+
- resources/templates/prd.md
|
|
80
|
+
|
|
81
|
+
## 🔄 Context Flow
|
|
82
|
+
Prepare transição para requisitos.
|
|
83
|
+
|
|
84
|
+
## MCP Integration
|
|
85
|
+
Funções descritivas.
|
|
86
|
+
|
|
87
|
+
## 📖 Documentação Completa
|
|
88
|
+
Detalhes em README.md.
|
|
89
|
+
`;
|
|
90
|
+
const SAMPLE_TEMPLATE = `# Template PRD
|
|
91
|
+
|
|
92
|
+
## 1. Visão Geral
|
|
93
|
+
[Descreva o produto]
|
|
94
|
+
|
|
95
|
+
## 2. Problema
|
|
96
|
+
[Qual problema resolve]
|
|
97
|
+
|
|
98
|
+
## 3. Personas
|
|
99
|
+
[Defina personas]
|
|
100
|
+
|
|
101
|
+
## 4. Escopo
|
|
102
|
+
[Defina escopo MVP]
|
|
103
|
+
`;
|
|
104
|
+
const SAMPLE_CHECKLIST = `# Checklist de Validação
|
|
105
|
+
|
|
106
|
+
- [ ] PRD tem visão geral
|
|
107
|
+
- [ ] Problema definido
|
|
108
|
+
- [ ] Pelo menos 2 personas
|
|
109
|
+
- [ ] Escopo MVP claro
|
|
110
|
+
`;
|
|
111
|
+
describe('SkillLoaderService', () => {
|
|
112
|
+
let service;
|
|
113
|
+
let mockResolver;
|
|
114
|
+
beforeEach(() => {
|
|
115
|
+
vi.clearAllMocks();
|
|
116
|
+
mockResolver = {
|
|
117
|
+
readSkillFile: vi.fn(),
|
|
118
|
+
readFirstTemplate: vi.fn(),
|
|
119
|
+
readFirstChecklist: vi.fn(),
|
|
120
|
+
listSkillResources: vi.fn(),
|
|
121
|
+
getSkillDir: vi.fn(),
|
|
122
|
+
};
|
|
123
|
+
service = new SkillLoaderService(mockResolver);
|
|
124
|
+
});
|
|
125
|
+
describe('loadForPhase', () => {
|
|
126
|
+
it('deve retornar null para fase sem skill mapeada', async () => {
|
|
127
|
+
const result = await service.loadForPhase('FaseInexistente', 'balanced');
|
|
128
|
+
expect(result).toBeNull();
|
|
129
|
+
});
|
|
130
|
+
it('deve carregar pacote completo para fase com skill', async () => {
|
|
131
|
+
mockResolver.readSkillFile.mockResolvedValue(SAMPLE_SKILL_MD);
|
|
132
|
+
mockResolver.readFirstTemplate.mockResolvedValue(SAMPLE_TEMPLATE);
|
|
133
|
+
mockResolver.readFirstChecklist.mockResolvedValue(SAMPLE_CHECKLIST);
|
|
134
|
+
mockResolver.listSkillResources.mockResolvedValue(['prd.md']);
|
|
135
|
+
const result = await service.loadForPhase('Produto', 'balanced');
|
|
136
|
+
expect(result).not.toBeNull();
|
|
137
|
+
expect(result.skillName).toBe('specialist-gestao-produto');
|
|
138
|
+
expect(result.specialist).not.toBeNull();
|
|
139
|
+
expect(result.specialist.name).toBe('Gestão de Produto');
|
|
140
|
+
expect(result.skillContent.length).toBeGreaterThan(0);
|
|
141
|
+
expect(result.templateContent.length).toBeGreaterThan(0);
|
|
142
|
+
expect(result.checklistContent.length).toBeGreaterThan(0);
|
|
143
|
+
expect(result.tokenEstimate).toBeGreaterThan(0);
|
|
144
|
+
});
|
|
145
|
+
it('deve respeitar budget em modo economy (skill menor)', async () => {
|
|
146
|
+
mockResolver.readSkillFile.mockResolvedValue(SAMPLE_SKILL_MD);
|
|
147
|
+
mockResolver.readFirstTemplate.mockResolvedValue(SAMPLE_TEMPLATE);
|
|
148
|
+
mockResolver.readFirstChecklist.mockResolvedValue(SAMPLE_CHECKLIST);
|
|
149
|
+
mockResolver.listSkillResources.mockResolvedValue([]);
|
|
150
|
+
const economy = await service.loadForPhase('Produto', 'economy');
|
|
151
|
+
const quality = await service.loadForPhase('Produto', 'quality');
|
|
152
|
+
expect(economy).not.toBeNull();
|
|
153
|
+
expect(quality).not.toBeNull();
|
|
154
|
+
// Economy deve ter menos tokens que quality
|
|
155
|
+
expect(economy.tokenEstimate).toBeLessThanOrEqual(quality.tokenEstimate);
|
|
156
|
+
});
|
|
157
|
+
it('deve incluir seções essenciais em economy mode', async () => {
|
|
158
|
+
mockResolver.readSkillFile.mockResolvedValue(SAMPLE_SKILL_MD);
|
|
159
|
+
mockResolver.readFirstTemplate.mockResolvedValue(null);
|
|
160
|
+
mockResolver.readFirstChecklist.mockResolvedValue(null);
|
|
161
|
+
mockResolver.listSkillResources.mockResolvedValue([]);
|
|
162
|
+
const result = await service.loadForPhase('Produto', 'economy');
|
|
163
|
+
expect(result).not.toBeNull();
|
|
164
|
+
// Seções essenciais devem estar presentes
|
|
165
|
+
expect(result.skillContent).toContain('Missão');
|
|
166
|
+
expect(result.skillContent).toContain('Quality Gate');
|
|
167
|
+
});
|
|
168
|
+
it('deve lidar com skill sem template e checklist', async () => {
|
|
169
|
+
mockResolver.readSkillFile.mockResolvedValue(SAMPLE_SKILL_MD);
|
|
170
|
+
mockResolver.readFirstTemplate.mockResolvedValue(null);
|
|
171
|
+
mockResolver.readFirstChecklist.mockResolvedValue(null);
|
|
172
|
+
mockResolver.listSkillResources.mockResolvedValue([]);
|
|
173
|
+
const result = await service.loadForPhase('Produto', 'balanced');
|
|
174
|
+
expect(result).not.toBeNull();
|
|
175
|
+
expect(result.templateContent).toBe('');
|
|
176
|
+
expect(result.checklistContent).toBe('');
|
|
177
|
+
});
|
|
178
|
+
});
|
|
179
|
+
describe('loadChecklist', () => {
|
|
180
|
+
it('deve carregar checklist para fase válida', async () => {
|
|
181
|
+
mockResolver.readFirstChecklist.mockResolvedValue(SAMPLE_CHECKLIST);
|
|
182
|
+
const result = await service.loadChecklist('Produto');
|
|
183
|
+
expect(result).toBe(SAMPLE_CHECKLIST);
|
|
184
|
+
});
|
|
185
|
+
it('deve retornar null para fase sem skill', async () => {
|
|
186
|
+
const result = await service.loadChecklist('FaseInexistente');
|
|
187
|
+
expect(result).toBeNull();
|
|
188
|
+
});
|
|
189
|
+
});
|
|
190
|
+
describe('loadTemplate', () => {
|
|
191
|
+
it('deve carregar template para fase válida', async () => {
|
|
192
|
+
mockResolver.readFirstTemplate.mockResolvedValue(SAMPLE_TEMPLATE);
|
|
193
|
+
const result = await service.loadTemplate('Produto');
|
|
194
|
+
expect(result).toBe(SAMPLE_TEMPLATE);
|
|
195
|
+
});
|
|
196
|
+
});
|
|
197
|
+
describe('formatAsMarkdown', () => {
|
|
198
|
+
it('deve formatar pacote como markdown legível', () => {
|
|
199
|
+
const pkg = {
|
|
200
|
+
skillName: 'specialist-gestao-produto',
|
|
201
|
+
specialist: {
|
|
202
|
+
name: 'Gestão de Produto',
|
|
203
|
+
tone: 'Estratégico',
|
|
204
|
+
expertise: ['product discovery'],
|
|
205
|
+
instructions: 'Foque no problema.',
|
|
206
|
+
},
|
|
207
|
+
skillContent: '## Missão\nDefinir produto.',
|
|
208
|
+
templateContent: '# Template PRD\n## Visão',
|
|
209
|
+
checklistContent: '- [ ] PRD completo',
|
|
210
|
+
referenceLinks: ['maestro://skills/specialist-gestao-produto/templates/prd.md'],
|
|
211
|
+
tokenEstimate: 500,
|
|
212
|
+
mode: 'summary',
|
|
213
|
+
};
|
|
214
|
+
const md = service.formatAsMarkdown(pkg);
|
|
215
|
+
expect(md).toContain('Gestão de Produto');
|
|
216
|
+
expect(md).toContain('Estratégico');
|
|
217
|
+
expect(md).toContain('Instruções do Especialista');
|
|
218
|
+
expect(md).toContain('Template do Entregável');
|
|
219
|
+
expect(md).toContain('Checklist de Validação');
|
|
220
|
+
expect(md).toContain('Recursos Adicionais');
|
|
221
|
+
expect(md).toContain('500 tokens');
|
|
222
|
+
});
|
|
223
|
+
it('deve omitir seções vazias', () => {
|
|
224
|
+
const pkg = {
|
|
225
|
+
skillName: 'test',
|
|
226
|
+
specialist: null,
|
|
227
|
+
skillContent: '',
|
|
228
|
+
templateContent: '',
|
|
229
|
+
checklistContent: '- [ ] Item',
|
|
230
|
+
referenceLinks: [],
|
|
231
|
+
tokenEstimate: 10,
|
|
232
|
+
mode: 'skeleton',
|
|
233
|
+
};
|
|
234
|
+
const md = service.formatAsMarkdown(pkg);
|
|
235
|
+
expect(md).not.toContain('Instruções do Especialista');
|
|
236
|
+
expect(md).not.toContain('Template do Entregável');
|
|
237
|
+
expect(md).toContain('Checklist de Validação');
|
|
238
|
+
expect(md).not.toContain('Recursos Adicionais');
|
|
239
|
+
});
|
|
240
|
+
});
|
|
241
|
+
});
|
|
242
|
+
//# sourceMappingURL=skill-loader.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-loader.test.js","sourceRoot":"","sources":["../../src/tests/skill-loader.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aprovar-gate.d.ts","sourceRoot":"","sources":["../../src/tools/aprovar-gate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"aprovar-gate.d.ts","sourceRoot":"","sources":["../../src/tools/aprovar-gate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,mBAAmB,CAAC;AAUnE,UAAU,eAAe;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,SAAS,GAAG,UAAU,CAAC;CAChC;AAED;;;;;;;;GAQG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAuO5E;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;CAkB7B,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { parsearEstado, serializarEstado } from "../state/storage.js";
|
|
2
2
|
import { setCurrentDirectory } from "../state/context.js";
|
|
3
3
|
import { resolveProjectPath } from "../utils/files.js";
|
|
4
|
+
import { getFaseComStitch } from "../flows/types.js";
|
|
5
|
+
import { getSpecialistPersona } from "../services/specialist.service.js";
|
|
4
6
|
/**
|
|
5
7
|
* Tool: aprovar_gate
|
|
6
8
|
* 🔐 EXCLUSIVO DO USUÁRIO - Aprova ou rejeita avanço com pendências
|
|
@@ -114,6 +116,21 @@ O projeto deve primeiro:
|
|
|
114
116
|
estado.score_bloqueado = undefined;
|
|
115
117
|
// Serializar estado
|
|
116
118
|
const estadoFile = serializarEstado(estado);
|
|
119
|
+
const faseAtual = getFaseComStitch(estado.nivel, estado.fase_atual, estado.usar_stitch);
|
|
120
|
+
const specialist = faseAtual ? getSpecialistPersona(faseAtual.nome) : null;
|
|
121
|
+
const next_action = {
|
|
122
|
+
tool: "proximo",
|
|
123
|
+
description: `Gerar entregável e avançar para fase ${estado.fase_atual} (${faseAtual?.nome || 'próxima'})`,
|
|
124
|
+
args_template: { entregavel: "{{conteudo_do_entregavel}}", estado_json: "{{estado_json}}", diretorio },
|
|
125
|
+
requires_user_input: true,
|
|
126
|
+
user_prompt: `Gate aprovado. Agora gere o entregável: ${faseAtual?.entregavel_esperado || 'da fase atual'}`,
|
|
127
|
+
};
|
|
128
|
+
const progress = {
|
|
129
|
+
current_phase: faseAtual?.nome || `Fase ${estado.fase_atual}`,
|
|
130
|
+
total_phases: estado.total_fases,
|
|
131
|
+
completed_phases: estado.gates_validados.length,
|
|
132
|
+
percentage: Math.round((estado.gates_validados.length / estado.total_fases) * 100),
|
|
133
|
+
};
|
|
117
134
|
return {
|
|
118
135
|
content: [{
|
|
119
136
|
type: "text",
|
|
@@ -150,6 +167,9 @@ ${estadoFile.content}
|
|
|
150
167
|
content: estadoFile.content
|
|
151
168
|
}],
|
|
152
169
|
estado_atualizado: estadoFile.content,
|
|
170
|
+
next_action,
|
|
171
|
+
specialist_persona: specialist || undefined,
|
|
172
|
+
progress,
|
|
153
173
|
};
|
|
154
174
|
}
|
|
155
175
|
else {
|
|
@@ -159,6 +179,14 @@ ${estadoFile.content}
|
|
|
159
179
|
estado.score_bloqueado = undefined;
|
|
160
180
|
// Serializar estado
|
|
161
181
|
const estadoFile = serializarEstado(estado);
|
|
182
|
+
const faseAtualRej = getFaseComStitch(estado.nivel, estado.fase_atual, estado.usar_stitch);
|
|
183
|
+
const next_action_rej = {
|
|
184
|
+
tool: "validar_gate",
|
|
185
|
+
description: "Validar o entregável corrigido antes de tentar avançar novamente",
|
|
186
|
+
args_template: { entregavel: "{{entregavel_corrigido}}", estado_json: "{{estado_json}}", diretorio },
|
|
187
|
+
requires_user_input: true,
|
|
188
|
+
user_prompt: "Corrija os itens pendentes e valide novamente antes de avançar.",
|
|
189
|
+
};
|
|
162
190
|
return {
|
|
163
191
|
content: [{
|
|
164
192
|
type: "text",
|
|
@@ -189,6 +217,13 @@ ${estadoFile.content}
|
|
|
189
217
|
content: estadoFile.content
|
|
190
218
|
}],
|
|
191
219
|
estado_atualizado: estadoFile.content,
|
|
220
|
+
next_action: next_action_rej,
|
|
221
|
+
progress: {
|
|
222
|
+
current_phase: faseAtualRej?.nome || `Fase ${estado.fase_atual}`,
|
|
223
|
+
total_phases: estado.total_fases,
|
|
224
|
+
completed_phases: estado.gates_validados.length,
|
|
225
|
+
percentage: Math.round((estado.gates_validados.length / estado.total_fases) * 100),
|
|
226
|
+
},
|
|
192
227
|
};
|
|
193
228
|
}
|
|
194
229
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aprovar-gate.js","sourceRoot":"","sources":["../../src/tools/aprovar-gate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aprovar-gate.js","sourceRoot":"","sources":["../../src/tools/aprovar-gate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brainstorm.d.ts","sourceRoot":"","sources":["../../src/tools/brainstorm.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAMpD,UAAU,cAAc;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,SAAS,GAAG,eAAe,GAAG,QAAQ,CAAC;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAwJD;;;GAGG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"brainstorm.d.ts","sourceRoot":"","sources":["../../src/tools/brainstorm.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAMpD,UAAU,cAAc;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,SAAS,GAAG,eAAe,GAAG,QAAQ,CAAC;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAwJD;;;GAGG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,CAmE1E;AAkRD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;CAsB5B,CAAC"}
|
package/dist/tools/brainstorm.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Tool: Brainstorm Assistido
|
|
3
3
|
* Gera prompts estruturados para brainstorm e consolida respostas em PRD draft
|
|
4
4
|
*/
|
|
5
|
-
import { parsearEstado } from "../state/storage.js";
|
|
5
|
+
import { parsearEstado, serializarEstado } from "../state/storage.js";
|
|
6
6
|
import { setCurrentDirectory } from "../state/context.js";
|
|
7
7
|
import { resolveProjectPath } from "../utils/files.js";
|
|
8
8
|
/**
|
|
@@ -190,17 +190,10 @@ export async function brainstorm(args) {
|
|
|
190
190
|
isError: true,
|
|
191
191
|
};
|
|
192
192
|
}
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
content: [{
|
|
196
|
-
type: "text",
|
|
197
|
-
text: "❌ **Erro**: Discovery não foi concluído. Complete o discovery antes de iniciar brainstorm.",
|
|
198
|
-
}],
|
|
199
|
-
isError: true,
|
|
200
|
-
};
|
|
201
|
-
}
|
|
193
|
+
// Caminho B: permitir brainstorm exploratório mesmo sem discovery completo
|
|
194
|
+
const discoveryIncompleto = onboarding.discoveryStatus !== 'completed';
|
|
202
195
|
if (acao === 'iniciar') {
|
|
203
|
-
return handleIniciarBrainstorm(onboarding, estado, diretorio);
|
|
196
|
+
return handleIniciarBrainstorm(onboarding, estado, diretorio, discoveryIncompleto);
|
|
204
197
|
}
|
|
205
198
|
else if (acao === 'proximo_secao') {
|
|
206
199
|
return handleProximaSecao(onboarding, estado, diretorio, args.resposta_secao);
|
|
@@ -219,7 +212,7 @@ export async function brainstorm(args) {
|
|
|
219
212
|
/**
|
|
220
213
|
* Handler: iniciar brainstorm
|
|
221
214
|
*/
|
|
222
|
-
function handleIniciarBrainstorm(onboarding, estado, diretorio) {
|
|
215
|
+
function handleIniciarBrainstorm(onboarding, estado, diretorio, discoveryIncompleto = false) {
|
|
223
216
|
// Gerar seções de brainstorm
|
|
224
217
|
if (onboarding.brainstormSections.length === 0) {
|
|
225
218
|
onboarding.brainstormSections = gerarSecoesBrainstorm(onboarding.discoveryResponses);
|
|
@@ -235,42 +228,54 @@ function handleIniciarBrainstorm(onboarding, estado, diretorio) {
|
|
|
235
228
|
type: "text",
|
|
236
229
|
text: "✅ **Brainstorm já concluído!** Todas as seções foram preenchidas.",
|
|
237
230
|
}],
|
|
231
|
+
next_action: {
|
|
232
|
+
tool: "prd_writer",
|
|
233
|
+
description: "Gerar PRD a partir do brainstorm e discovery",
|
|
234
|
+
args_template: { estado_json: "{{estado_json}}", diretorio: diretorio, acao: "gerar_validar" },
|
|
235
|
+
requires_user_input: false,
|
|
236
|
+
auto_execute: true,
|
|
237
|
+
},
|
|
238
238
|
};
|
|
239
239
|
}
|
|
240
240
|
const secaoFormatada = formatarSecaoBrainstorm(proximaSecao);
|
|
241
241
|
const progresso = onboarding.brainstormSections.filter((s) => s.status === 'completed').length;
|
|
242
242
|
const total = onboarding.brainstormSections.length;
|
|
243
|
+
const avisoDiscovery = discoveryIncompleto
|
|
244
|
+
? `\n> ⚠️ **Modo Exploratório**: Discovery não foi concluído. Algumas seções podem ter dados incompletos. Você pode voltar ao discovery depois.\n`
|
|
245
|
+
: '';
|
|
243
246
|
const resposta = `# 🧠 Brainstorm Assistido
|
|
244
247
|
|
|
245
248
|
**Projeto:** ${estado.nome}
|
|
246
249
|
**Progresso:** ${progresso}/${total} seções (${Math.round((progresso / total) * 100)}%)
|
|
247
|
-
|
|
250
|
+
${avisoDiscovery}
|
|
248
251
|
---
|
|
249
252
|
|
|
250
253
|
${secaoFormatada}
|
|
251
254
|
|
|
252
255
|
---
|
|
253
256
|
|
|
254
|
-
## 📝 Como Responder
|
|
255
|
-
|
|
256
|
-
Responda ao prompt acima e envie usando:
|
|
257
|
-
|
|
258
|
-
\`\`\`
|
|
259
|
-
brainstorm(
|
|
260
|
-
estado_json: "...",
|
|
261
|
-
diretorio: "...",
|
|
262
|
-
acao: "proximo_secao",
|
|
263
|
-
resposta_secao: "Sua resposta aqui..."
|
|
264
|
-
)
|
|
265
|
-
\`\`\`
|
|
266
|
-
|
|
267
257
|
**Tempo estimado:** 10-15 minutos para esta seção
|
|
268
258
|
`;
|
|
269
259
|
return {
|
|
270
|
-
content: [{
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
}
|
|
260
|
+
content: [{ type: "text", text: resposta }],
|
|
261
|
+
next_action: {
|
|
262
|
+
tool: "brainstorm",
|
|
263
|
+
description: `Responder à seção "${proximaSecao.title}" do brainstorm`,
|
|
264
|
+
args_template: {
|
|
265
|
+
estado_json: "{{estado_json}}",
|
|
266
|
+
diretorio: diretorio,
|
|
267
|
+
acao: "proximo_secao",
|
|
268
|
+
resposta_secao: `<Resposta para: ${proximaSecao.title}>`,
|
|
269
|
+
},
|
|
270
|
+
requires_user_input: true,
|
|
271
|
+
user_prompt: proximaSecao.prompt,
|
|
272
|
+
},
|
|
273
|
+
progress: {
|
|
274
|
+
current_phase: "brainstorm",
|
|
275
|
+
total_phases: 4,
|
|
276
|
+
completed_phases: 1,
|
|
277
|
+
percentage: Math.round(25 + (progresso / total) * 25),
|
|
278
|
+
},
|
|
274
279
|
};
|
|
275
280
|
}
|
|
276
281
|
/**
|
|
@@ -305,11 +310,18 @@ function handleProximaSecao(onboarding, estado, diretorio, resposta) {
|
|
|
305
310
|
// Calcular progresso
|
|
306
311
|
const completadas = onboarding.brainstormSections.filter((s) => s.status === 'completed').length;
|
|
307
312
|
const total = onboarding.brainstormSections.length;
|
|
313
|
+
// Persistir estado atualizado
|
|
314
|
+
estado.onboarding = onboarding;
|
|
315
|
+
estado.atualizado_em = new Date().toISOString();
|
|
316
|
+
const estadoFile = serializarEstado(estado);
|
|
308
317
|
// Verificar se todas as seções foram completadas
|
|
309
318
|
if (completadas === total) {
|
|
310
319
|
onboarding.brainstormStatus = 'completed';
|
|
311
320
|
onboarding.brainstormCompletedAt = new Date().toISOString();
|
|
312
321
|
onboarding.phase = 'prd_draft';
|
|
322
|
+
// Re-serializar com status final
|
|
323
|
+
estado.onboarding = onboarding;
|
|
324
|
+
const estadoFileFinal = serializarEstado(estado);
|
|
313
325
|
const resposta = `# ✅ Brainstorm Concluído!
|
|
314
326
|
|
|
315
327
|
Todas as seções foram preenchidas com sucesso.
|
|
@@ -320,11 +332,7 @@ Todas as seções foram preenchidas com sucesso.
|
|
|
320
332
|
|
|
321
333
|
**Seções completadas:** ${completadas}/${total}
|
|
322
334
|
|
|
323
|
-
1. ✅
|
|
324
|
-
2. ✅ Personas e Jobs to Be Done
|
|
325
|
-
3. ✅ MVP e Funcionalidades Priorizadas
|
|
326
|
-
4. ✅ Métricas de Sucesso
|
|
327
|
-
5. ✅ Riscos e Mitigações
|
|
335
|
+
${onboarding.brainstormSections.map((s, i) => `${i + 1}. ✅ ${s.title}`).join('\n')}
|
|
328
336
|
|
|
329
337
|
---
|
|
330
338
|
|
|
@@ -332,15 +340,25 @@ Todas as seções foram preenchidas com sucesso.
|
|
|
332
340
|
|
|
333
341
|
Agora vamos consolidar todos os insights em um **PRD Draft** estruturado.
|
|
334
342
|
|
|
335
|
-
Use: \`prd_writer(estado_json: "...", diretorio: "...", acao: "gerar")\` para criar o PRD.
|
|
336
|
-
|
|
337
343
|
**Tempo estimado:** 5-10 minutos
|
|
338
344
|
`;
|
|
339
345
|
return {
|
|
340
|
-
content: [{
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
346
|
+
content: [{ type: "text", text: resposta }],
|
|
347
|
+
files: [{ path: `${diretorio}/${estadoFileFinal.path}`, content: estadoFileFinal.content }],
|
|
348
|
+
estado_atualizado: estadoFileFinal.content,
|
|
349
|
+
next_action: {
|
|
350
|
+
tool: "prd_writer",
|
|
351
|
+
description: "Gerar PRD a partir do brainstorm e discovery",
|
|
352
|
+
args_template: { estado_json: "{{estado_json}}", diretorio: diretorio, acao: "gerar_validar" },
|
|
353
|
+
requires_user_input: false,
|
|
354
|
+
auto_execute: true,
|
|
355
|
+
},
|
|
356
|
+
progress: {
|
|
357
|
+
current_phase: "brainstorm",
|
|
358
|
+
total_phases: 4,
|
|
359
|
+
completed_phases: 2,
|
|
360
|
+
percentage: 50,
|
|
361
|
+
},
|
|
344
362
|
};
|
|
345
363
|
}
|
|
346
364
|
// Continuar para próxima seção
|
|
@@ -368,17 +386,40 @@ ${secaoFormatada}
|
|
|
368
386
|
**Tempo estimado:** 10-15 minutos
|
|
369
387
|
`;
|
|
370
388
|
return {
|
|
371
|
-
content: [{
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
389
|
+
content: [{ type: "text", text: resposta }],
|
|
390
|
+
files: [{ path: `${diretorio}/${estadoFile.path}`, content: estadoFile.content }],
|
|
391
|
+
estado_atualizado: estadoFile.content,
|
|
392
|
+
next_action: {
|
|
393
|
+
tool: "brainstorm",
|
|
394
|
+
description: `Responder à seção "${proximaSecao.title}"`,
|
|
395
|
+
args_template: {
|
|
396
|
+
estado_json: "{{estado_json}}",
|
|
397
|
+
diretorio: diretorio,
|
|
398
|
+
acao: "proximo_secao",
|
|
399
|
+
resposta_secao: `<Resposta para: ${proximaSecao.title}>`,
|
|
400
|
+
},
|
|
401
|
+
requires_user_input: true,
|
|
402
|
+
user_prompt: proximaSecao.prompt,
|
|
403
|
+
},
|
|
404
|
+
progress: {
|
|
405
|
+
current_phase: "brainstorm",
|
|
406
|
+
total_phases: 4,
|
|
407
|
+
completed_phases: 1,
|
|
408
|
+
percentage: Math.round(25 + (completadas / total) * 25),
|
|
409
|
+
},
|
|
375
410
|
};
|
|
376
411
|
}
|
|
377
412
|
return {
|
|
378
|
-
content: [{
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
413
|
+
content: [{ type: "text", text: "✅ **Brainstorm concluído!** Todas as seções foram preenchidas." }],
|
|
414
|
+
files: [{ path: `${diretorio}/${estadoFile.path}`, content: estadoFile.content }],
|
|
415
|
+
estado_atualizado: estadoFile.content,
|
|
416
|
+
next_action: {
|
|
417
|
+
tool: "prd_writer",
|
|
418
|
+
description: "Gerar PRD a partir do brainstorm e discovery",
|
|
419
|
+
args_template: { estado_json: "{{estado_json}}", diretorio: diretorio, acao: "gerar_validar" },
|
|
420
|
+
requires_user_input: false,
|
|
421
|
+
auto_execute: true,
|
|
422
|
+
},
|
|
382
423
|
};
|
|
383
424
|
}
|
|
384
425
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brainstorm.js","sourceRoot":"","sources":["../../src/tools/brainstorm.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"brainstorm.js","sourceRoot":"","sources":["../../src/tools/brainstorm.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classificar.d.ts","sourceRoot":"","sources":["../../src/tools/classificar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAiB,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"classificar.d.ts","sourceRoot":"","sources":["../../src/tools/classificar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAiB,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAWpG,UAAU,eAAe;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CA2I5E;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2B7B,CAAC"}
|