@maestro-ai/mcp-server 5.7.0 → 6.1.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.
Files changed (158) hide show
  1. package/dist/analyzers/security-analyzer.js +1 -1
  2. package/dist/analyzers/security-analyzer.js.map +1 -1
  3. package/dist/constants.d.ts +1 -1
  4. package/dist/constants.js +1 -1
  5. package/dist/content/skills/specialist-api-contract/SKILL.md +98 -0
  6. package/dist/content/skills/specialist-api-contract/resources/checklists/gate-checklist.md +38 -0
  7. package/dist/content/skills/specialist-api-contract/resources/reference/guide.md +109 -0
  8. package/dist/content/skills/specialist-architect/SKILL.md +111 -0
  9. package/dist/content/skills/specialist-architect/resources/checklists/gate-checklist.md +45 -0
  10. package/dist/content/skills/specialist-architect/resources/examples/example-architecture.md +345 -0
  11. package/dist/content/skills/specialist-architect/resources/reference/guide.md +86 -0
  12. package/dist/content/skills/specialist-architect/resources/templates/arquitetura.md +282 -0
  13. package/dist/content/skills/specialist-backend/SKILL.md +100 -0
  14. package/dist/content/skills/specialist-backend/resources/checklists/gate-checklist.md +38 -0
  15. package/dist/content/skills/specialist-backend/resources/reference/guide.md +160 -0
  16. package/dist/content/skills/specialist-design/SKILL.md +107 -0
  17. package/dist/content/skills/specialist-design/resources/checklists/gate-checklist.md +45 -0
  18. package/dist/content/skills/specialist-design/resources/examples/example-design.md +294 -0
  19. package/dist/content/skills/specialist-design/resources/reference/guide.md +67 -0
  20. package/dist/content/skills/specialist-design/resources/templates/design-doc.md +232 -0
  21. package/dist/content/skills/specialist-devops/SKILL.md +99 -0
  22. package/dist/content/skills/specialist-devops/resources/checklists/gate-checklist.md +38 -0
  23. package/dist/content/skills/specialist-devops/resources/reference/guide.md +116 -0
  24. package/dist/content/skills/specialist-discovery/SKILL.md +109 -0
  25. package/dist/content/skills/specialist-discovery/resources/checklists/gate-checklist.md +45 -0
  26. package/dist/content/skills/specialist-discovery/resources/examples/example-discovery.md +179 -0
  27. package/dist/content/skills/specialist-discovery/resources/reference/guide.md +48 -0
  28. package/dist/content/skills/specialist-discovery/resources/templates/discovery.md +187 -0
  29. package/dist/content/skills/specialist-domain/SKILL.md +105 -0
  30. package/dist/content/skills/specialist-domain/resources/checklists/gate-checklist.md +37 -0
  31. package/dist/content/skills/specialist-domain/resources/reference/guide.md +80 -0
  32. package/dist/content/skills/specialist-frontend/SKILL.md +99 -0
  33. package/dist/content/skills/specialist-frontend/resources/checklists/gate-checklist.md +38 -0
  34. package/dist/content/skills/specialist-frontend/resources/reference/guide.md +90 -0
  35. package/dist/content/skills/specialist-operations/SKILL.md +109 -0
  36. package/dist/content/skills/specialist-operations/resources/checklists/gate-checklist.md +38 -0
  37. package/dist/content/skills/specialist-operations/resources/reference/guide.md +129 -0
  38. package/dist/content/skills/specialist-planning/SKILL.md +100 -0
  39. package/dist/content/skills/specialist-planning/resources/checklists/gate-checklist.md +38 -0
  40. package/dist/content/skills/specialist-planning/resources/reference/guide.md +88 -0
  41. package/dist/content/skills/specialist-product/SKILL.md +113 -0
  42. package/dist/content/skills/specialist-product/resources/checklists/gate-checklist.md +40 -0
  43. package/dist/content/skills/specialist-product/resources/reference/guide.md +43 -0
  44. package/dist/content/skills/specialist-product/resources/templates/PRD.md +191 -0
  45. package/dist/content/skills/specialist-requirements/SKILL.md +107 -0
  46. package/dist/content/skills/specialist-requirements/resources/checklists/gate-checklist.md +36 -0
  47. package/dist/content/skills/specialist-requirements/resources/reference/guide.md +66 -0
  48. package/dist/content/skills/specialist-technical-design/SKILL.md +114 -0
  49. package/dist/content/skills/specialist-technical-design/resources/checklists/gate-checklist.md +38 -0
  50. package/dist/content/skills/specialist-technical-design/resources/reference/guide.md +86 -0
  51. package/dist/core/adr/ADRGenerator.js +2 -2
  52. package/dist/core/adr/ADRGenerator.js.map +1 -1
  53. package/dist/core/architecture/FitnessFunctions.js +2 -2
  54. package/dist/core/architecture/FitnessFunctions.js.map +1 -1
  55. package/dist/core/atam/ATAMAnalyzer.js +6 -6
  56. package/dist/core/atam/ATAMAnalyzer.js.map +1 -1
  57. package/dist/core/atam/ATAMReporter.js +2 -2
  58. package/dist/core/atam/ATAMReporter.js.map +1 -1
  59. package/dist/core/atam/QualityScenarios.js +1 -1
  60. package/dist/core/atam/QualityScenarios.js.map +1 -1
  61. package/dist/core/atam/RiskRegistry.js +5 -5
  62. package/dist/core/atam/RiskRegistry.js.map +1 -1
  63. package/dist/core/authority/AuthorityManager.js +3 -3
  64. package/dist/core/authority/AuthorityManager.js.map +1 -1
  65. package/dist/core/automation/AutoExecutor.js +2 -2
  66. package/dist/core/automation/AutoExecutor.js.map +1 -1
  67. package/dist/core/consistency/ConsistencyAnalyzer.js +2 -2
  68. package/dist/core/consistency/ConsistencyAnalyzer.js.map +1 -1
  69. package/dist/core/context/ContextDetector.js +2 -2
  70. package/dist/core/context/ContextDetector.js.map +1 -1
  71. package/dist/core/decision/AlternativeGenerator.js +1 -1
  72. package/dist/core/decision/AlternativeGenerator.js.map +1 -1
  73. package/dist/core/decision/ConfidenceCalculator.js +5 -5
  74. package/dist/core/decision/ConfidenceCalculator.js.map +1 -1
  75. package/dist/core/decision/DecisionEngine.js +6 -6
  76. package/dist/core/decision/DecisionEngine.js.map +1 -1
  77. package/dist/core/decision/DecisionMatrix.js +1 -1
  78. package/dist/core/decision/DecisionMatrix.js.map +1 -1
  79. package/dist/core/feedback/FeedbackLoop.js +1 -1
  80. package/dist/core/feedback/FeedbackLoop.js.map +1 -1
  81. package/dist/core/growth/GrowthProjector.js +2 -2
  82. package/dist/core/growth/GrowthProjector.js.map +1 -1
  83. package/dist/core/impact/ImpactAnalyzer.js +1 -1
  84. package/dist/core/impact/ImpactAnalyzer.js.map +1 -1
  85. package/dist/core/notification/NotificationManager.js +2 -2
  86. package/dist/core/notification/NotificationManager.js.map +1 -1
  87. package/dist/core/roadmap/RoadmapManager.js +3 -3
  88. package/dist/core/roadmap/RoadmapManager.js.map +1 -1
  89. package/dist/core/strangler/StranglerOrchestrator.js +6 -6
  90. package/dist/core/strangler/StranglerOrchestrator.js.map +1 -1
  91. package/dist/core/testing/TestRunner.js +2 -2
  92. package/dist/core/testing/TestRunner.js.map +1 -1
  93. package/dist/core/tradeoff/TradeoffAnalyzer.js +1 -1
  94. package/dist/core/tradeoff/TradeoffAnalyzer.js.map +1 -1
  95. package/dist/core/validation/ValidationPipeline.js +5 -5
  96. package/dist/core/validation/ValidationPipeline.js.map +1 -1
  97. package/dist/flows/types.d.ts +13 -8
  98. package/dist/flows/types.d.ts.map +1 -1
  99. package/dist/flows/types.js +256 -324
  100. package/dist/flows/types.js.map +1 -1
  101. package/dist/gates/readiness-gate.d.ts +48 -0
  102. package/dist/gates/readiness-gate.d.ts.map +1 -0
  103. package/dist/gates/readiness-gate.js +301 -0
  104. package/dist/gates/readiness-gate.js.map +1 -0
  105. package/dist/handlers/code-phase-handler.js +14 -7
  106. package/dist/handlers/code-phase-handler.js.map +1 -1
  107. package/dist/handlers/specialist-phase-handler.d.ts +11 -10
  108. package/dist/handlers/specialist-phase-handler.d.ts.map +1 -1
  109. package/dist/handlers/specialist-phase-handler.js +160 -64
  110. package/dist/handlers/specialist-phase-handler.js.map +1 -1
  111. package/dist/middleware/adr-generation.middleware.js +2 -2
  112. package/dist/middleware/adr-generation.middleware.js.map +1 -1
  113. package/dist/middleware/orchestration-pipeline.middleware.d.ts.map +1 -1
  114. package/dist/middleware/orchestration-pipeline.middleware.js +0 -3
  115. package/dist/middleware/orchestration-pipeline.middleware.js.map +1 -1
  116. package/dist/services/deliverable-gate.service.js +1 -1
  117. package/dist/services/deliverable-gate.service.js.map +1 -1
  118. package/dist/services/phase-config-loader.d.ts +28 -0
  119. package/dist/services/phase-config-loader.d.ts.map +1 -0
  120. package/dist/services/phase-config-loader.js +200 -0
  121. package/dist/services/phase-config-loader.js.map +1 -0
  122. package/dist/services/scoring-config.d.ts.map +1 -1
  123. package/dist/services/scoring-config.js +13 -10
  124. package/dist/services/scoring-config.js.map +1 -1
  125. package/dist/services/watcher.service.js +3 -3
  126. package/dist/services/watcher.service.js.map +1 -1
  127. package/dist/tools/consolidated/avancar.d.ts.map +1 -1
  128. package/dist/tools/consolidated/avancar.js +86 -5
  129. package/dist/tools/consolidated/avancar.js.map +1 -1
  130. package/dist/tools/iniciar-projeto.d.ts.map +1 -1
  131. package/dist/tools/iniciar-projeto.js +46 -0
  132. package/dist/tools/iniciar-projeto.js.map +1 -1
  133. package/dist/tools/proximo.d.ts +1 -0
  134. package/dist/tools/proximo.d.ts.map +1 -1
  135. package/dist/tools/proximo.js +44 -30
  136. package/dist/tools/proximo.js.map +1 -1
  137. package/dist/types/index.d.ts +2 -0
  138. package/dist/types/index.d.ts.map +1 -1
  139. package/dist/types/index.js.map +1 -1
  140. package/dist/types/phase-config.d.ts +65 -0
  141. package/dist/types/phase-config.d.ts.map +1 -0
  142. package/dist/types/phase-config.js +11 -0
  143. package/dist/types/phase-config.js.map +1 -0
  144. package/dist/utils/gate-orientation.js +1 -1
  145. package/dist/utils/gate-orientation.js.map +1 -1
  146. package/dist/utils/migration-v10.d.ts +31 -0
  147. package/dist/utils/migration-v10.d.ts.map +1 -0
  148. package/dist/utils/migration-v10.js +145 -0
  149. package/dist/utils/migration-v10.js.map +1 -0
  150. package/dist/utils/prompt-mapper.d.ts +6 -2
  151. package/dist/utils/prompt-mapper.d.ts.map +1 -1
  152. package/dist/utils/prompt-mapper.js +72 -91
  153. package/dist/utils/prompt-mapper.js.map +1 -1
  154. package/dist/utils/skill-deployer.d.ts +32 -0
  155. package/dist/utils/skill-deployer.d.ts.map +1 -0
  156. package/dist/utils/skill-deployer.js +150 -0
  157. package/dist/utils/skill-deployer.js.map +1 -0
  158. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"deliverable-gate.service.js","sourceRoot":"","sources":["../../src/services/deliverable-gate.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deliverable-gate.service.js","sourceRoot":"","sources":["../../src/services/deliverable-gate.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Phase Config Loader (v10.0)
3
+ *
4
+ * Carrega PhaseConfig a partir da SKILL.md do especialista.
5
+ * Parseia seções "Coleta Conversacional" e extrai campos de coleta,
6
+ * permitindo que o specialist-phase-handler funcione para qualquer fase.
7
+ *
8
+ * Fallback: Se a skill não existir ou o parsing falhar, retorna config
9
+ * mínima com collectFields vazio (comportamento v9 — pula coleta).
10
+ *
11
+ * @since v10.0
12
+ */
13
+ import type { PhaseConfigResult } from "../types/phase-config.js";
14
+ import type { Fase } from "../types/index.js";
15
+ /**
16
+ * Carrega PhaseConfig para uma fase específica.
17
+ *
18
+ * 1. Resolve o nome da skill via FASE_SKILL_MAP
19
+ * 2. Lê o SKILL.md da skill
20
+ * 3. Parseia seções relevantes (Coleta Conversacional, Persona, etc.)
21
+ * 4. Monta PhaseConfig com dados da skill + dados do flows/types.ts
22
+ *
23
+ * @param diretorio Diretório do projeto
24
+ * @param faseInfo Informação da fase (de flows/types.ts)
25
+ * @param ide IDE detectada (windsurf, cursor, antigravity)
26
+ */
27
+ export declare function loadPhaseConfig(diretorio: string, faseInfo: Fase, ide?: string): Promise<PhaseConfigResult>;
28
+ //# sourceMappingURL=phase-config-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"phase-config-loader.d.ts","sourceRoot":"","sources":["../../src/services/phase-config-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH,OAAO,KAAK,EAAe,iBAAiB,EAAgB,MAAM,0BAA0B,CAAC;AAC7F,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAK9C;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CACjC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,IAAI,EACd,GAAG,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,iBAAiB,CAAC,CAwC5B"}
@@ -0,0 +1,200 @@
1
+ /**
2
+ * Phase Config Loader (v10.0)
3
+ *
4
+ * Carrega PhaseConfig a partir da SKILL.md do especialista.
5
+ * Parseia seções "Coleta Conversacional" e extrai campos de coleta,
6
+ * permitindo que o specialist-phase-handler funcione para qualquer fase.
7
+ *
8
+ * Fallback: Se a skill não existir ou o parsing falhar, retorna config
9
+ * mínima com collectFields vazio (comportamento v9 — pula coleta).
10
+ *
11
+ * @since v10.0
12
+ */
13
+ import { existsSync } from "fs";
14
+ import { readFile } from "fs/promises";
15
+ import { join } from "path";
16
+ import { getSkillParaFase } from "../utils/prompt-mapper.js";
17
+ import { detectIDE, getSkillsDir } from "../utils/ide-paths.js";
18
+ import { getFaseDirName } from "../utils/entregavel-path.js";
19
+ /**
20
+ * Carrega PhaseConfig para uma fase específica.
21
+ *
22
+ * 1. Resolve o nome da skill via FASE_SKILL_MAP
23
+ * 2. Lê o SKILL.md da skill
24
+ * 3. Parseia seções relevantes (Coleta Conversacional, Persona, etc.)
25
+ * 4. Monta PhaseConfig com dados da skill + dados do flows/types.ts
26
+ *
27
+ * @param diretorio Diretório do projeto
28
+ * @param faseInfo Informação da fase (de flows/types.ts)
29
+ * @param ide IDE detectada (windsurf, cursor, antigravity)
30
+ */
31
+ export async function loadPhaseConfig(diretorio, faseInfo, ide) {
32
+ const skillName = faseInfo.skill || getSkillParaFase(faseInfo.nome);
33
+ if (!skillName) {
34
+ return createFallbackConfig(faseInfo, diretorio);
35
+ }
36
+ // Tentar ler SKILL.md de múltiplos locais
37
+ const ideType = (ide || detectIDE(diretorio) || 'windsurf');
38
+ const skillsDir = getSkillsDir(ideType);
39
+ const possiblePaths = [
40
+ join(diretorio, skillsDir, skillName, 'SKILL.md'),
41
+ join(diretorio, '.windsurf', 'skills', skillName, 'SKILL.md'),
42
+ join(diretorio, '.agent', 'skills', skillName, 'SKILL.md'),
43
+ ];
44
+ let skillContent = null;
45
+ for (const path of possiblePaths) {
46
+ if (existsSync(path)) {
47
+ try {
48
+ skillContent = await readFile(path, 'utf-8');
49
+ break;
50
+ }
51
+ catch { /* continue */ }
52
+ }
53
+ }
54
+ if (!skillContent) {
55
+ console.error(`[phase-config-loader] Skill ${skillName} não encontrada no disco — usando fallback`);
56
+ return createFallbackConfig(faseInfo, diretorio);
57
+ }
58
+ // Parsear SKILL.md
59
+ try {
60
+ const config = parseSkillMd(skillContent, faseInfo, skillName, diretorio);
61
+ return { loaded: true, config, source: 'skill' };
62
+ }
63
+ catch (err) {
64
+ console.warn(`[phase-config-loader] Erro ao parsear ${skillName}/SKILL.md:`, err);
65
+ return createFallbackConfig(faseInfo, diretorio);
66
+ }
67
+ }
68
+ /**
69
+ * Parseia o conteúdo do SKILL.md e extrai PhaseConfig.
70
+ */
71
+ function parseSkillMd(content, faseInfo, skillName, diretorio) {
72
+ const collectFields = parseCollectFields(content);
73
+ const persona = parsePersona(content);
74
+ const specialistName = parseSpecialistName(content) || faseInfo.especialista;
75
+ const faseDirName = getFaseDirName(faseInfo.numero, faseInfo.nome);
76
+ const outputPath = join('docs', faseDirName, faseInfo.entregavel_esperado);
77
+ return {
78
+ faseName: faseInfo.nome,
79
+ faseNumber: faseInfo.numero,
80
+ specialistName,
81
+ collectFields,
82
+ outputPath,
83
+ outputFilename: faseInfo.entregavel_esperado,
84
+ skillName,
85
+ gateChecklist: faseInfo.gate_checklist || [],
86
+ persona,
87
+ };
88
+ }
89
+ /**
90
+ * Extrai campos de coleta da seção "## Coleta Conversacional" do SKILL.md.
91
+ * Formato esperado:
92
+ *
93
+ * ### Bloco 1 — O Problema (obrigatório)
94
+ * 1. **Qual problema** este produto resolve?
95
+ * 2. **Qual impacto** desse problema?
96
+ */
97
+ function parseCollectFields(content) {
98
+ const fields = [];
99
+ // Encontrar seção "Coleta Conversacional"
100
+ const sectionMatch = content.match(/## Coleta Conversacional\s*\n([\s\S]*?)(?=\n## |\n---|\Z)/i);
101
+ if (!sectionMatch)
102
+ return fields;
103
+ const section = sectionMatch[1];
104
+ let currentBlock = 'geral';
105
+ let currentRequired = true;
106
+ const lines = section.split('\n');
107
+ for (const line of lines) {
108
+ // Detectar bloco: ### Bloco 1 — O Problema (obrigatório)
109
+ const blockMatch = line.match(/^###\s+(?:Bloco\s+\d+\s*[—–-]\s*)?(.+?)(?:\s*\((?:obrigatório|importante|opcional)\))?\s*$/i);
110
+ if (blockMatch) {
111
+ currentBlock = blockMatch[1].trim().toLowerCase()
112
+ .normalize('NFD').replace(/[\u0300-\u036f]/g, '')
113
+ .replace(/\s+/g, '_')
114
+ .replace(/[^a-z0-9_]/g, '');
115
+ currentRequired = !line.toLowerCase().includes('opcional');
116
+ continue;
117
+ }
118
+ // Detectar pergunta numerada: 1. **Qual problema** este produto resolve?
119
+ const questionMatch = line.match(/^\d+\.\s+\*\*(.+?)\*\*\s*(.*)/);
120
+ if (questionMatch) {
121
+ const label = questionMatch[1].trim();
122
+ const rest = questionMatch[2].trim().replace(/\?$/, '');
123
+ const fullQuestion = `${label} ${rest}`.trim();
124
+ // Gerar ID a partir do label
125
+ const id = label.toLowerCase()
126
+ .normalize('NFD').replace(/[\u0300-\u036f]/g, '')
127
+ .replace(/\s+/g, '_')
128
+ .replace(/[^a-z0-9_]/g, '')
129
+ .substring(0, 30);
130
+ fields.push({
131
+ id: id || `field_${fields.length}`,
132
+ label: fullQuestion || label,
133
+ block: currentBlock,
134
+ hint: rest || label,
135
+ required: currentRequired,
136
+ });
137
+ }
138
+ }
139
+ return fields;
140
+ }
141
+ /**
142
+ * Extrai nome do especialista do SKILL.md.
143
+ * Procura por "**Nome:**" na seção Persona.
144
+ */
145
+ function parseSpecialistName(content) {
146
+ const match = content.match(/\*\*Nome:\*\*\s*(.+)/i);
147
+ return match ? match[1].trim() : null;
148
+ }
149
+ /**
150
+ * Extrai persona do SKILL.md.
151
+ */
152
+ function parsePersona(content) {
153
+ const nameMatch = content.match(/\*\*Nome:\*\*\s*(.+)/i);
154
+ const toneMatch = content.match(/\*\*Tom:\*\*\s*(.+)/i);
155
+ if (!nameMatch)
156
+ return undefined;
157
+ // Extrair expertise (items de lista após "**Expertise:**")
158
+ const expertiseSection = content.match(/\*\*Expertise:\*\*\s*\n((?:\s*-\s*.+\n?)+)/i);
159
+ const expertise = expertiseSection
160
+ ? expertiseSection[1].split('\n')
161
+ .map(l => l.replace(/^\s*-\s*/, '').trim())
162
+ .filter(Boolean)
163
+ : [];
164
+ // Extrair instruções dos comportamentos
165
+ const behaviorSection = content.match(/\*\*Comportamento:\*\*\s*\n((?:\s*-\s*.+\n?)+)/i);
166
+ const behaviors = behaviorSection
167
+ ? behaviorSection[1].split('\n')
168
+ .map(l => l.replace(/^\s*-\s*/, '').trim())
169
+ .filter(Boolean)
170
+ .join('. ')
171
+ : '';
172
+ return {
173
+ name: nameMatch[1].trim(),
174
+ tone: toneMatch ? toneMatch[1].trim() : 'Profissional e direto',
175
+ expertise,
176
+ instructions: behaviors || `Siga as instruções da skill ${nameMatch[1].trim()}.`,
177
+ };
178
+ }
179
+ /**
180
+ * Cria PhaseConfig fallback quando a skill não é encontrada.
181
+ * collectFields vazio = pula coleta, vai direto para geração/validação.
182
+ */
183
+ function createFallbackConfig(faseInfo, diretorio) {
184
+ const faseDirName = getFaseDirName(faseInfo.numero, faseInfo.nome);
185
+ return {
186
+ loaded: false,
187
+ source: 'fallback',
188
+ config: {
189
+ faseName: faseInfo.nome,
190
+ faseNumber: faseInfo.numero,
191
+ specialistName: faseInfo.especialista,
192
+ collectFields: [],
193
+ outputPath: join('docs', faseDirName, faseInfo.entregavel_esperado),
194
+ outputFilename: faseInfo.entregavel_esperado,
195
+ skillName: faseInfo.skill || getSkillParaFase(faseInfo.nome) || 'unknown',
196
+ gateChecklist: faseInfo.gate_checklist || [],
197
+ },
198
+ };
199
+ }
200
+ //# sourceMappingURL=phase-config-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"phase-config-loader.js","sourceRoot":"","sources":["../../src/services/phase-config-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACjC,SAAiB,EACjB,QAAc,EACd,GAAY;IAEZ,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,IAAI,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEpE,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,OAAO,oBAAoB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC;IAED,0CAA0C;IAC1C,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,IAAI,UAAU,CAA0C,CAAC;IACrG,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAExC,MAAM,aAAa,GAAG;QAClB,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC;QACjD,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC;QAC7D,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC;KAC7D,CAAC;IAEF,IAAI,YAAY,GAAkB,IAAI,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;QAC/B,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACnB,IAAI,CAAC;gBACD,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM;YACV,CAAC;YAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC;IAED,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,+BAA+B,SAAS,4CAA4C,CAAC,CAAC;QACpG,OAAO,oBAAoB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC;IAED,mBAAmB;IACnB,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,YAAY,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC1E,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IACrD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,yCAAyC,SAAS,YAAY,EAAE,GAAG,CAAC,CAAC;QAClF,OAAO,oBAAoB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CACjB,OAAe,EACf,QAAc,EACd,SAAiB,EACjB,SAAiB;IAEjB,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,cAAc,GAAG,mBAAmB,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,YAAY,CAAC;IAE7E,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IACnE,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IAE3E,OAAO;QACH,QAAQ,EAAE,QAAQ,CAAC,IAAI;QACvB,UAAU,EAAE,QAAQ,CAAC,MAAM;QAC3B,cAAc;QACd,aAAa;QACb,UAAU;QACV,cAAc,EAAE,QAAQ,CAAC,mBAAmB;QAC5C,SAAS;QACT,aAAa,EAAE,QAAQ,CAAC,cAAc,IAAI,EAAE;QAC5C,OAAO;KACV,CAAC;AACN,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,OAAe;IACvC,MAAM,MAAM,GAAmB,EAAE,CAAC;IAElC,0CAA0C;IAC1C,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;IACjG,IAAI,CAAC,YAAY;QAAE,OAAO,MAAM,CAAC;IAEjC,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,YAAY,GAAG,OAAO,CAAC;IAC3B,IAAI,eAAe,GAAG,IAAI,CAAC;IAE3B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAElC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,yDAAyD;QACzD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,6FAA6F,CAAC,CAAC;QAC7H,IAAI,UAAU,EAAE,CAAC;YACb,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;iBAC5C,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;iBAChD,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;iBACpB,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;YAChC,eAAe,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC3D,SAAS;QACb,CAAC;QAED,yEAAyE;QACzE,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAClE,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACxD,MAAM,YAAY,GAAG,GAAG,KAAK,IAAI,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;YAE/C,6BAA6B;YAC7B,MAAM,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE;iBACzB,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;iBAChD,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;iBACpB,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;iBAC1B,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAEtB,MAAM,CAAC,IAAI,CAAC;gBACR,EAAE,EAAE,EAAE,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE;gBAClC,KAAK,EAAE,YAAY,IAAI,KAAK;gBAC5B,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,IAAI,IAAI,KAAK;gBACnB,QAAQ,EAAE,eAAe;aAC5B,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAAC,OAAe;IACxC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACrD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1C,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,OAAe;IACjC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACzD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAExD,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IAEjC,2DAA2D;IAC3D,MAAM,gBAAgB,GAAG,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACtF,MAAM,SAAS,GAAG,gBAAgB;QAC9B,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;aAC5B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;aAC1C,MAAM,CAAC,OAAO,CAAC;QACpB,CAAC,CAAC,EAAE,CAAC;IAET,wCAAwC;IACxC,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACzF,MAAM,SAAS,GAAG,eAAe;QAC7B,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;aAC1C,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC;QACf,CAAC,CAAC,EAAE,CAAC;IAET,OAAO;QACH,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;QACzB,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,uBAAuB;QAC/D,SAAS;QACT,YAAY,EAAE,SAAS,IAAI,+BAA+B,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG;KACnF,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,SAAS,oBAAoB,CACzB,QAAc,EACd,SAAiB;IAEjB,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEnE,OAAO;QACH,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE;YACJ,QAAQ,EAAE,QAAQ,CAAC,IAAI;YACvB,UAAU,EAAE,QAAQ,CAAC,MAAM;YAC3B,cAAc,EAAE,QAAQ,CAAC,YAAY;YACrC,aAAa,EAAE,EAAE;YACjB,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,mBAAmB,CAAC;YACnE,cAAc,EAAE,QAAQ,CAAC,mBAAmB;YAC5C,SAAS,EAAE,QAAQ,CAAC,KAAK,IAAI,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAS;YACzE,aAAa,EAAE,QAAQ,CAAC,cAAc,IAAI,EAAE;SAC/C;KACJ,CAAC;AACN,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"scoring-config.d.ts","sourceRoot":"","sources":["../../src/services/scoring-config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,YAAY;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE9D;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,YAAY,CAI7D,CAAC;AA6BF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAUhE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,CAG9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACnC,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,GACjB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,aAAa,CAAA;CAAE,CAgBtF"}
1
+ {"version":3,"file":"scoring-config.d.ts","sourceRoot":"","sources":["../../src/services/scoring-config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,YAAY;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE9D;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,YAAY,CAI7D,CAAC;AAgCF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAUhE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,CAG9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACnC,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,GACjB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,aAAa,CAAA;CAAE,CAgBtF"}
@@ -23,24 +23,27 @@ export const SCORE_WEIGHTS = {
23
23
  * Se a fase não for encontrada, usa 'documento' como default.
24
24
  */
25
25
  const PHASE_CATEGORY_MAP = {
26
- // Documentos
26
+ // Documentos (produto e requisitos)
27
+ 'Discovery': 'documento',
27
28
  'Produto': 'documento',
28
29
  'PRD': 'documento',
29
30
  'Requisitos': 'documento',
30
- 'Requisitos Técnicos': 'documento',
31
- // Design
32
- 'UX/UI': 'design',
31
+ // Design (visual e técnico) — inclui aliases de nomes v9
33
32
  'Design': 'design',
33
+ 'UX/UI': 'design',
34
+ 'UX Design': 'design',
35
+ 'Design Técnico': 'design',
34
36
  'Arquitetura': 'design',
35
- 'Arquitetura Técnica': 'design',
37
+ 'Modelo de Domínio': 'design',
38
+ 'Contrato API': 'design',
39
+ 'Planejamento': 'documento',
36
40
  'Prototipagem': 'design',
37
- // Código
38
- 'Backend': 'codigo',
41
+ // Código (implementação e deploy)
39
42
  'Frontend': 'codigo',
43
+ 'Backend': 'codigo',
40
44
  'Integração': 'codigo',
41
- 'Testes': 'codigo',
42
- 'Deploy': 'codigo',
43
- 'Implementação': 'codigo',
45
+ 'Integração & Deploy': 'codigo',
46
+ 'Deploy & Operação': 'codigo',
44
47
  };
45
48
  /**
46
49
  * Determina a categoria de uma fase pelo nome.
@@ -1 +1 @@
1
- {"version":3,"file":"scoring-config.js","sourceRoot":"","sources":["../../src/services/scoring-config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAWH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,aAAa,GAAwC;IAC9D,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE;IAC/E,MAAM,EAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE;IAC/E,MAAM,EAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE;CAClF,CAAC;AAEF;;;GAGG;AACH,MAAM,kBAAkB,GAAkC;IACtD,aAAa;IACb,SAAS,EAAE,WAAW;IACtB,KAAK,EAAE,WAAW;IAClB,YAAY,EAAE,WAAW;IACzB,qBAAqB,EAAE,WAAW;IAElC,SAAS;IACT,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,QAAQ;IAClB,aAAa,EAAE,QAAQ;IACvB,qBAAqB,EAAE,QAAQ;IAC/B,cAAc,EAAE,QAAQ;IAExB,SAAS;IACT,SAAS,EAAE,QAAQ;IACnB,UAAU,EAAE,QAAQ;IACpB,YAAY,EAAE,QAAQ;IACtB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,QAAQ;IAClB,eAAe,EAAE,QAAQ;CAC5B,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC7C,cAAc;IACd,IAAI,kBAAkB,CAAC,QAAQ,CAAC;QAAE,OAAO,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAEtE,yBAAyB;IACzB,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC/D,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YAAE,OAAO,QAAQ,CAAC;IAC5E,CAAC;IAED,OAAO,WAAW,CAAC,CAAC,UAAU;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,QAAgB;IAC5C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC5C,OAAO,aAAa,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CACnC,cAAsB,EACtB,cAAsB,EACtB,cAAsB,EACtB,QAAgB;IAEhB,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAE5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CACpB,CAAC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,CAAC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,CAAC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,CACvC,CAAC;IAEF,OAAO;QACH,KAAK;QACL,QAAQ,EAAE,KAAK,IAAI,OAAO,CAAC,SAAS;QACpC,OAAO;QACP,QAAQ;KACX,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"scoring-config.js","sourceRoot":"","sources":["../../src/services/scoring-config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAWH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,aAAa,GAAwC;IAC9D,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE;IAC/E,MAAM,EAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE;IAC/E,MAAM,EAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE;CAClF,CAAC;AAEF;;;GAGG;AACH,MAAM,kBAAkB,GAAkC;IACtD,oCAAoC;IACpC,WAAW,EAAE,WAAW;IACxB,SAAS,EAAE,WAAW;IACtB,KAAK,EAAE,WAAW;IAClB,YAAY,EAAE,WAAW;IAEzB,yDAAyD;IACzD,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE,QAAQ;IACjB,WAAW,EAAE,QAAQ;IACrB,gBAAgB,EAAE,QAAQ;IAC1B,aAAa,EAAE,QAAQ;IACvB,mBAAmB,EAAE,QAAQ;IAC7B,cAAc,EAAE,QAAQ;IACxB,cAAc,EAAE,WAAW;IAC3B,cAAc,EAAE,QAAQ;IAExB,kCAAkC;IAClC,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE,QAAQ;IACnB,YAAY,EAAE,QAAQ;IACtB,qBAAqB,EAAE,QAAQ;IAC/B,mBAAmB,EAAE,QAAQ;CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC7C,cAAc;IACd,IAAI,kBAAkB,CAAC,QAAQ,CAAC;QAAE,OAAO,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAEtE,yBAAyB;IACzB,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC/D,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YAAE,OAAO,QAAQ,CAAC;IAC5E,CAAC;IAED,OAAO,WAAW,CAAC,CAAC,UAAU;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,QAAgB;IAC5C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC5C,OAAO,aAAa,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CACnC,cAAsB,EACtB,cAAsB,EACtB,cAAsB,EACtB,QAAgB;IAEhB,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAE5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CACpB,CAAC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,CAAC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,CAAC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,CACvC,CAAC;IAEF,OAAO;QACH,KAAK;QACL,QAAQ,EAAE,KAAK,IAAI,OAAO,CAAC,SAAS;QACpC,OAAO;QACP,QAAQ;KACX,CAAC;AACN,CAAC"}
@@ -45,7 +45,7 @@ export async function startFileWatcher(config) {
45
45
  console.warn(`[watcher] Erro ao monitorar ${config.filePath}:`, error);
46
46
  });
47
47
  activeWatchers.set(config.diretorio, { close: () => watcher.close() });
48
- console.log(`[watcher] Monitorando: ${config.filePath}`);
48
+ console.error(`[watcher] Monitorando: ${config.filePath}`);
49
49
  }
50
50
  catch {
51
51
  // Fallback para fs.watch nativo se chokidar não estiver disponível
@@ -70,7 +70,7 @@ export function stopFileWatcher(diretorio) {
70
70
  if (watcher) {
71
71
  watcher.close();
72
72
  activeWatchers.delete(diretorio);
73
- console.log(`[watcher] Monitoramento encerrado para: ${diretorio}`);
73
+ console.error(`[watcher] Monitoramento encerrado para: ${diretorio}`);
74
74
  }
75
75
  }
76
76
  /**
@@ -87,7 +87,7 @@ async function runValidation(config) {
87
87
  try {
88
88
  const { readFile } = await import('fs/promises');
89
89
  const content = await readFile(config.filePath, 'utf-8');
90
- console.log(`[watcher] Arquivo salvo, executando validação: ${config.filePath} (${content.length} chars)`);
90
+ console.error(`[watcher] Arquivo salvo, executando validação: ${config.filePath} (${content.length} chars)`);
91
91
  const { ValidationPipeline } = await import('../core/validation/ValidationPipeline.js');
92
92
  const pipeline = new ValidationPipeline();
93
93
  const tier = config.tier || 'base';
@@ -1 +1 @@
1
- {"version":3,"file":"watcher.service.js","sourceRoot":"","sources":["../../src/services/watcher.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"watcher.service.js","sourceRoot":"","sources":["../../src/services/watcher.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"avancar.d.ts","sourceRoot":"","sources":["../../../src/tools/consolidated/avancar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAoC,MAAM,sBAAsB,CAAC;AAgBzF,UAAU,WAAW;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAwCD;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAmMpE;AAsJD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqCzB,CAAC"}
1
+ {"version":3,"file":"avancar.d.ts","sourceRoot":"","sources":["../../../src/tools/consolidated/avancar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAoC,MAAM,sBAAsB,CAAC;AAgBzF,UAAU,WAAW;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAwCD;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CA4RpE;AAsJD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqCzB,CAAC"}
@@ -210,11 +210,54 @@ export async function avancar(args) {
210
210
  respostas: args.respostas,
211
211
  });
212
212
  }
213
- // v9.0: Detectar fase de código e delegar para code-phase-handler
214
- // Usa isCodePhaseName de flows/types.ts (fonte única de verdade)
213
+ // v10.0: Detectar fase de código e aplicar Readiness Gate + code-phase-handler
215
214
  const faseAtualInfo = getFaseComStitch(estado.nivel, estado.fase_atual, estado.usar_stitch);
216
215
  const isCodePhaseDetected = isCodePhaseName(faseAtualInfo?.nome);
217
216
  if (isCodePhaseDetected) {
217
+ // v10.0: Readiness Gate — checkpoint consolidado antes de fases de código
218
+ // Verifica se é a PRIMEIRA vez entrando em código (gates_validados não contém fases de código)
219
+ const isFirstCodePhase = !estado.readiness_approved && !estado.gates_validados?.some(g => {
220
+ const fInfo = getFaseComStitch(estado.nivel, g, estado.usar_stitch);
221
+ return isCodePhaseName(fInfo?.nome);
222
+ });
223
+ if (isFirstCodePhase) {
224
+ try {
225
+ const { readinessCheck, formatReadinessResult } = await import("../../gates/readiness-gate.js");
226
+ const readiness = await readinessCheck(estado, diretorio);
227
+ if (readiness.score < 60) {
228
+ // Bloqueio total — artefatos críticos faltando
229
+ return {
230
+ content: [{ type: "text", text: formatReadinessResult(readiness) }],
231
+ isError: true,
232
+ };
233
+ }
234
+ if (readiness.score < 80) {
235
+ // Aprovação manual necessária
236
+ // Verificar se usuário está aprovando manualmente via respostas
237
+ const isManualApproval = args.respostas?.approve_readiness === true ||
238
+ args.respostas?.approve_readiness === 'true';
239
+ if (!isManualApproval) {
240
+ estado.readiness_score = readiness.score;
241
+ const estadoFile = serializarEstado(estado);
242
+ try {
243
+ await saveFile(`${diretorio}/${estadoFile.path}`, estadoFile.content);
244
+ }
245
+ catch { /* ignore */ }
246
+ return {
247
+ content: [{ type: "text", text: formatReadinessResult(readiness) }],
248
+ };
249
+ }
250
+ }
251
+ // Score >= 80 ou aprovação manual: marcar como aprovado
252
+ estado.readiness_approved = true;
253
+ estado.readiness_score = readiness.score;
254
+ console.error(`[avancar] v10.0: Readiness Gate aprovado (score: ${readiness.score})`);
255
+ }
256
+ catch (err) {
257
+ // Best-effort — não bloqueia o fluxo se readiness gate falhar
258
+ console.warn('[avancar] v10.0: Readiness Gate falhou (non-blocking):', err);
259
+ }
260
+ }
218
261
  try {
219
262
  const { handleCodePhase } = await import("../../handlers/code-phase-handler.js");
220
263
  return handleCodePhase({
@@ -229,13 +272,51 @@ export async function avancar(args) {
229
272
  console.warn('[avancar] v8.0: Fallback para proximo.ts —', err);
230
273
  }
231
274
  }
232
- // Desenvolvimento (fases não-código): delegar para proximo
233
- // v5.5.0: proximo.ts agora é autossuficiente - do disco automaticamente
275
+ // v10.0: Fases de DOCUMENTO tentar specialist handler com PhaseConfig
276
+ // Se a skill tem collectFields, usa coleta conversacional dinâmica.
277
+ // Senão, fallback para proximo.ts (comportamento v9).
278
+ if (faseAtualInfo && !isCodePhaseDetected) {
279
+ try {
280
+ const { loadPhaseConfig } = await import("../../services/phase-config-loader.js");
281
+ const configResult = await loadPhaseConfig(diretorio, faseAtualInfo, estado.ide);
282
+ // Se PhaseConfig carregou com collectFields, usar specialist handler
283
+ if (configResult.loaded && configResult.config.collectFields.length > 0) {
284
+ // Inicializar specialistPhase se não existir para esta fase
285
+ if (!estado.onboarding) {
286
+ const { criarEstadoOnboardingComEspecialista } = await import("../../services/onboarding.service.js");
287
+ estado.onboarding = criarEstadoOnboardingComEspecialista(estado.projeto_id, estado.config?.mode || 'balanced', configResult.config.skillName);
288
+ }
289
+ else if (!estado.onboarding.specialistPhase || estado.onboarding.specialistPhase.skillName !== configResult.config.skillName) {
290
+ // Fase mudou — criar novo specialistPhase para a fase atual
291
+ estado.onboarding.specialistPhase = {
292
+ skillName: configResult.config.skillName,
293
+ status: 'active',
294
+ collectedData: {},
295
+ interactionCount: 0,
296
+ activatedAt: new Date().toISOString(),
297
+ };
298
+ estado.onboarding.phase = 'specialist_active';
299
+ }
300
+ const { handleSpecialistPhase } = await import("../../handlers/specialist-phase-handler.js");
301
+ return handleSpecialistPhase({
302
+ estado,
303
+ diretorio,
304
+ respostas: args.respostas,
305
+ entregavel: args.entregavel,
306
+ phaseConfig: configResult.config,
307
+ });
308
+ }
309
+ }
310
+ catch (err) {
311
+ console.warn('[avancar] v10.0: PhaseConfig/specialist handler falhou, fallback para proximo.ts:', err);
312
+ }
313
+ }
314
+ // Fallback: delegar para proximo.ts (comportamento v9)
234
315
  const estadoJson = args.estado_json || serializarEstado(estado).content;
235
316
  return proximo({
236
317
  diretorio: args.diretorio,
237
318
  estado_json: estadoJson,
238
- entregavel: args.entregavel, // Pode ser undefined - proximo.ts lê do disco
319
+ entregavel: args.entregavel,
239
320
  resumo_json: args.resumo_json,
240
321
  nome_arquivo: args.nome_arquivo,
241
322
  auto_flow: args.auto_flow,
@@ -1 +1 @@
1
- {"version":3,"file":"avancar.js","sourceRoot":"","sources":["../../../src/tools/consolidated/avancar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"avancar.js","sourceRoot":"","sources":["../../../src/tools/consolidated/avancar.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"iniciar-projeto.d.ts","sourceRoot":"","sources":["../../src/tools/iniciar-projeto.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAY,MAAM,mBAAmB,CAAC;AAuB/F,UAAU,kBAAkB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,aAAa,CAAC;IAC5C,IAAI,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IAE1C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,yBAAyB,CAAC,EAAE,aAAa,GAAG,YAAY,GAAG,SAAS,CAAC;IACrE,eAAe,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IACvC,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IAEvC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,oBAAqB,SAAQ,kBAAkB;IACrD,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IACvC,GAAG,EAAE,UAAU,GAAG,QAAQ,GAAG,aAAa,CAAC;IAC3C,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;CAE5C;AAkGD;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC,CA+KlF;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC,CA6NtF;AAED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAehC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgBlC,CAAC"}
1
+ {"version":3,"file":"iniciar-projeto.d.ts","sourceRoot":"","sources":["../../src/tools/iniciar-projeto.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAY,MAAM,mBAAmB,CAAC;AAuB/F,UAAU,kBAAkB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,aAAa,CAAC;IAC5C,IAAI,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IAE1C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,yBAAyB,CAAC,EAAE,aAAa,GAAG,YAAY,GAAG,SAAS,CAAC;IACrE,eAAe,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IACvC,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IAEvC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,oBAAqB,SAAQ,kBAAkB;IACrD,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IACvC,GAAG,EAAE,UAAU,GAAG,QAAQ,GAAG,aAAa,CAAC;IAC3C,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;CAE5C;AAkGD;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC,CA+KlF;AA6CD;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC,CA0OtF;AAED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAehC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgBlC,CAAC"}
@@ -262,6 +262,39 @@ confirmar_projeto({
262
262
  next_action,
263
263
  };
264
264
  }
265
+ /**
266
+ * v10.0: Gera documento de plano de orquestração com lista de fases do fluxo.
267
+ * Gerado automaticamente ao criar projeto — sempre atualizado via flows/types.ts.
268
+ */
269
+ function gerarPlanoOrquestracao(fluxo, nivel, nomeProjeto) {
270
+ const lines = [];
271
+ lines.push(`# Plano de Orquestração — ${nomeProjeto}\n`);
272
+ lines.push(`> **Gerado automaticamente pelo Maestro v10.0**`);
273
+ lines.push(`> **Nível:** ${nivel.toUpperCase()} | **Total de fases:** ${fluxo.total_fases}\n`);
274
+ lines.push(`---\n`);
275
+ lines.push(`## Fases do Fluxo\n`);
276
+ lines.push(`| # | Fase | Especialista | Entregável |`);
277
+ lines.push(`|---|------|-------------|------------|`);
278
+ for (const fase of fluxo.fases) {
279
+ lines.push(`| ${fase.numero} | **${fase.nome}** | ${fase.especialista} | \`${fase.entregavel_esperado}\` |`);
280
+ }
281
+ lines.push(`\n---\n`);
282
+ lines.push(`## Detalhamento por Fase\n`);
283
+ for (const fase of fluxo.fases) {
284
+ lines.push(`### Fase ${fase.numero}: ${fase.nome}\n`);
285
+ lines.push(`- **Especialista:** ${fase.especialista}`);
286
+ lines.push(`- **Entregável:** \`${fase.entregavel_esperado}\`\n`);
287
+ lines.push(`**Gate Checklist:**`);
288
+ for (const item of fase.gate_checklist) {
289
+ lines.push(`- [ ] ${item}`);
290
+ }
291
+ lines.push('');
292
+ }
293
+ lines.push(`---\n`);
294
+ lines.push(`> Este documento é gerado automaticamente e reflete o fluxo atual definido em \`flows/types.ts\`.`);
295
+ lines.push(`> Para avançar entre fases, use: \`executar({ acao: "avancar" })\``);
296
+ return lines.join('\n');
297
+ }
265
298
  /**
266
299
  * Tool: confirmar_projeto
267
300
  * Cria efetivamente os arquivos do projeto com os tipos confirmados
@@ -434,6 +467,19 @@ ${stitchNote}
434
467
  await saveFile(`${diretorio}/${f.path}`, f.content);
435
468
  savedPaths.push(`${diretorio}/${f.path}`);
436
469
  }
470
+ // v10.0: Gerar plano de orquestração automático
471
+ try {
472
+ const { getFluxoComStitch } = await import("../flows/types.js");
473
+ const fluxo = getFluxoComStitch(nivelFinal, estado.usar_stitch);
474
+ const planDoc = gerarPlanoOrquestracao(fluxo, nivelFinal, args.nome);
475
+ const planPath = `${diretorio}/docs/00-setup/plano-orquestracao.md`;
476
+ await saveFile(planPath, planDoc);
477
+ savedPaths.push(planPath);
478
+ console.error(`[iniciar-projeto] v10.0: Plano de orquestração gerado: ${planPath}`);
479
+ }
480
+ catch (planErr) {
481
+ console.warn('[iniciar-projeto] v10.0: Falha ao gerar plano de orquestração:', planErr);
482
+ }
437
483
  }
438
484
  catch (err) {
439
485
  console.error('[iniciar-projeto] Erro ao salvar arquivos:', err);