@maestro-ai/mcp-server 5.4.5 → 5.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/README.md +68 -83
  2. package/dist/content/rules/RULES.md +14 -0
  3. package/dist/core/metrics/MetricsCollector.d.ts +28 -12
  4. package/dist/core/metrics/MetricsCollector.d.ts.map +1 -1
  5. package/dist/core/metrics/MetricsCollector.js +151 -12
  6. package/dist/core/metrics/MetricsCollector.js.map +1 -1
  7. package/dist/core/validation/ValidationPipeline.d.ts +24 -2
  8. package/dist/core/validation/ValidationPipeline.d.ts.map +1 -1
  9. package/dist/core/validation/ValidationPipeline.js +46 -2
  10. package/dist/core/validation/ValidationPipeline.js.map +1 -1
  11. package/dist/core/validation/layers/DeliverableValidator.d.ts +13 -0
  12. package/dist/core/validation/layers/DeliverableValidator.d.ts.map +1 -0
  13. package/dist/core/validation/layers/DeliverableValidator.js +276 -0
  14. package/dist/core/validation/layers/DeliverableValidator.js.map +1 -0
  15. package/dist/flows/onboarding-orchestrator.js +5 -5
  16. package/dist/flows/onboarding-orchestrator.js.map +1 -1
  17. package/dist/gates/contextual-recommender.d.ts.map +1 -1
  18. package/dist/gates/contextual-recommender.js +260 -1
  19. package/dist/gates/contextual-recommender.js.map +1 -1
  20. package/dist/gates/validator.d.ts +5 -6
  21. package/dist/gates/validator.d.ts.map +1 -1
  22. package/dist/gates/validator.js +9 -6
  23. package/dist/gates/validator.js.map +1 -1
  24. package/dist/handlers/shared-prompt-handler.d.ts.map +1 -1
  25. package/dist/handlers/shared-prompt-handler.js +15 -14
  26. package/dist/handlers/shared-prompt-handler.js.map +1 -1
  27. package/dist/middleware/adr-generation.middleware.d.ts +5 -0
  28. package/dist/middleware/adr-generation.middleware.d.ts.map +1 -0
  29. package/dist/middleware/adr-generation.middleware.js +214 -0
  30. package/dist/middleware/adr-generation.middleware.js.map +1 -0
  31. package/dist/middleware/flow-engine.middleware.d.ts +5 -3
  32. package/dist/middleware/flow-engine.middleware.d.ts.map +1 -1
  33. package/dist/middleware/flow-engine.middleware.js +18 -10
  34. package/dist/middleware/flow-engine.middleware.js.map +1 -1
  35. package/dist/middleware/index.d.ts +18 -11
  36. package/dist/middleware/index.d.ts.map +1 -1
  37. package/dist/middleware/index.js +24 -11
  38. package/dist/middleware/index.js.map +1 -1
  39. package/dist/middleware/orchestration-pipeline.middleware.d.ts +42 -0
  40. package/dist/middleware/orchestration-pipeline.middleware.d.ts.map +1 -0
  41. package/dist/middleware/orchestration-pipeline.middleware.js +57 -0
  42. package/dist/middleware/orchestration-pipeline.middleware.js.map +1 -0
  43. package/dist/middleware/skill-injection.middleware.d.ts.map +1 -1
  44. package/dist/middleware/skill-injection.middleware.js +6 -9
  45. package/dist/middleware/skill-injection.middleware.js.map +1 -1
  46. package/dist/middleware/validation.middleware.d.ts +11 -0
  47. package/dist/middleware/validation.middleware.d.ts.map +1 -1
  48. package/dist/middleware/validation.middleware.js +64 -4
  49. package/dist/middleware/validation.middleware.js.map +1 -1
  50. package/dist/router.d.ts.map +1 -1
  51. package/dist/router.js +20 -14
  52. package/dist/router.js.map +1 -1
  53. package/dist/services/flow-engine.d.ts +1 -0
  54. package/dist/services/flow-engine.d.ts.map +1 -1
  55. package/dist/services/flow-engine.js +22 -10
  56. package/dist/services/flow-engine.js.map +1 -1
  57. package/dist/services/watcher.service.d.ts +45 -0
  58. package/dist/services/watcher.service.d.ts.map +1 -0
  59. package/dist/services/watcher.service.js +106 -0
  60. package/dist/services/watcher.service.js.map +1 -0
  61. package/dist/state/context.d.ts +15 -4
  62. package/dist/state/context.d.ts.map +1 -1
  63. package/dist/state/context.js +36 -9
  64. package/dist/state/context.js.map +1 -1
  65. package/dist/state/storage.d.ts.map +1 -1
  66. package/dist/state/storage.js +6 -0
  67. package/dist/state/storage.js.map +1 -1
  68. package/dist/tests/aprovar-gate.test.d.ts +2 -0
  69. package/dist/tests/aprovar-gate.test.d.ts.map +1 -0
  70. package/dist/tests/aprovar-gate.test.js +113 -0
  71. package/dist/tests/aprovar-gate.test.js.map +1 -0
  72. package/dist/tests/deliverable-validator.test.d.ts +12 -0
  73. package/dist/tests/deliverable-validator.test.d.ts.map +1 -0
  74. package/dist/tests/deliverable-validator.test.js +214 -0
  75. package/dist/tests/deliverable-validator.test.js.map +1 -0
  76. package/dist/tests/flow-engine.test.d.ts +2 -0
  77. package/dist/tests/flow-engine.test.d.ts.map +1 -0
  78. package/dist/tests/flow-engine.test.js +85 -0
  79. package/dist/tests/flow-engine.test.js.map +1 -0
  80. package/dist/tests/gate-orientation.test.d.ts +2 -0
  81. package/dist/tests/gate-orientation.test.d.ts.map +1 -0
  82. package/dist/tests/gate-orientation.test.js +59 -0
  83. package/dist/tests/gate-orientation.test.js.map +1 -0
  84. package/dist/tests/middleware.test.js +30 -4
  85. package/dist/tests/middleware.test.js.map +1 -1
  86. package/dist/tests/watcher.service.test.d.ts +2 -0
  87. package/dist/tests/watcher.service.test.d.ts.map +1 -0
  88. package/dist/tests/watcher.service.test.js +119 -0
  89. package/dist/tests/watcher.service.test.js.map +1 -0
  90. package/dist/tools/aprovar-gate.d.ts.map +1 -1
  91. package/dist/tools/aprovar-gate.js +4 -0
  92. package/dist/tools/aprovar-gate.js.map +1 -1
  93. package/dist/tools/contexto.d.ts.map +1 -1
  94. package/dist/tools/contexto.js +41 -0
  95. package/dist/tools/contexto.js.map +1 -1
  96. package/dist/tools/iniciar-projeto.d.ts.map +1 -1
  97. package/dist/tools/iniciar-projeto.js +6 -40
  98. package/dist/tools/iniciar-projeto.js.map +1 -1
  99. package/dist/tools/maestro-tool.d.ts.map +1 -1
  100. package/dist/tools/maestro-tool.js +34 -14
  101. package/dist/tools/maestro-tool.js.map +1 -1
  102. package/dist/tools/proximo.d.ts.map +1 -1
  103. package/dist/tools/proximo.js +224 -71
  104. package/dist/tools/proximo.js.map +1 -1
  105. package/dist/tools/status.d.ts.map +1 -1
  106. package/dist/tools/status.js +27 -0
  107. package/dist/tools/status.js.map +1 -1
  108. package/dist/tools/validar-gate.d.ts +8 -1
  109. package/dist/tools/validar-gate.d.ts.map +1 -1
  110. package/dist/tools/validar-gate.js +147 -99
  111. package/dist/tools/validar-gate.js.map +1 -1
  112. package/dist/types/config.d.ts +2 -0
  113. package/dist/types/config.d.ts.map +1 -1
  114. package/dist/types/config.js +2 -0
  115. package/dist/types/config.js.map +1 -1
  116. package/dist/types/index.d.ts +6 -0
  117. package/dist/types/index.d.ts.map +1 -1
  118. package/dist/types/index.js.map +1 -1
  119. package/dist/utils/gate-orientation.d.ts +11 -0
  120. package/dist/utils/gate-orientation.d.ts.map +1 -0
  121. package/dist/utils/gate-orientation.js +64 -0
  122. package/dist/utils/gate-orientation.js.map +1 -0
  123. package/dist/utils/ide-paths.d.ts +11 -0
  124. package/dist/utils/ide-paths.d.ts.map +1 -1
  125. package/dist/utils/ide-paths.js +27 -0
  126. package/dist/utils/ide-paths.js.map +1 -1
  127. package/dist/utils/instructions.d.ts +6 -1
  128. package/dist/utils/instructions.d.ts.map +1 -1
  129. package/dist/utils/instructions.js +32 -1
  130. package/dist/utils/instructions.js.map +1 -1
  131. package/package.json +2 -1
  132. package/dist/gates/compatibility-wrapper.d.ts +0 -139
  133. package/dist/gates/compatibility-wrapper.d.ts.map +0 -1
  134. package/dist/gates/compatibility-wrapper.js +0 -362
  135. package/dist/gates/compatibility-wrapper.js.map +0 -1
  136. package/dist/gates/unified-validator.d.ts +0 -67
  137. package/dist/gates/unified-validator.d.ts.map +0 -1
  138. package/dist/gates/unified-validator.js +0 -234
  139. package/dist/gates/unified-validator.js.map +0 -1
@@ -0,0 +1,85 @@
1
+ import { describe, it, expect, vi, beforeEach } from 'vitest';
2
+ import { getNextStep, getFlowState, isInOnboarding } from '../services/flow-engine.js';
3
+ // Mock dependencies
4
+ vi.mock('../services/specialist.service.js', () => ({
5
+ getSpecialistPersona: vi.fn().mockReturnValue({ role: 'Especialista Mock', context: 'Contexto mock' })
6
+ }));
7
+ vi.mock('../flows/types.js', () => ({
8
+ getFaseComStitch: vi.fn().mockReturnValue({ nome: 'Requisitos', entregavel_esperado: 'requisitos.md' })
9
+ }));
10
+ describe('Flow Engine', () => {
11
+ beforeEach(() => {
12
+ vi.clearAllMocks();
13
+ });
14
+ describe('Smart Auto-Flow (V6 Sprint 6)', () => {
15
+ let baseState;
16
+ beforeEach(() => {
17
+ baseState = {
18
+ projeto_id: '123',
19
+ fase_atual: 2,
20
+ total_fases: 10,
21
+ config: { setup: { completed: true }, mode: 'balanced' },
22
+ gates_validados: [1],
23
+ nivel: 'medio',
24
+ usar_stitch: false
25
+ // flow_phase_type definido no teste
26
+ };
27
+ });
28
+ it('deve manter requires_user_input=true para fases do tipo input_required', () => {
29
+ baseState.flow_phase_type = 'input_required';
30
+ const nextStep = getNextStep(baseState, '/test');
31
+ // Fases normais de transição de "fase_ativa" para "gerar_entregavel" requerem input humano
32
+ expect(nextStep.tool).toBe('executar');
33
+ expect(nextStep.requires_user_input).toBe(true);
34
+ });
35
+ it('deve sobrescrever requires_user_input=false para fases do tipo derived (Auto-Flow)', () => {
36
+ baseState.flow_phase_type = 'derived';
37
+ const nextStep = getNextStep(baseState, '/test');
38
+ // Fases derivadas podem avançar silenciosamente sem input
39
+ expect(nextStep.tool).toBe('executar');
40
+ expect(nextStep.requires_user_input).toBe(false);
41
+ });
42
+ it('deve sobrescrever requires_user_input=false para fases do tipo technical (Auto-Flow)', () => {
43
+ baseState.flow_phase_type = 'technical';
44
+ const nextStep = getNextStep(baseState, '/test');
45
+ expect(nextStep.tool).toBe('executar');
46
+ expect(nextStep.requires_user_input).toBe(false);
47
+ });
48
+ it('deve manter requires_user_input=true para fases do tipo correction_loop', () => {
49
+ baseState.flow_phase_type = 'correction_loop';
50
+ const nextStep = getNextStep(baseState, '/test');
51
+ expect(nextStep.tool).toBe('executar');
52
+ expect(nextStep.requires_user_input).toBe(true); // transição padrão exige input se for fallback
53
+ });
54
+ });
55
+ describe('Fluxos de Estado (getFlowState & isInOnboarding)', () => {
56
+ it('deve reconhecer corretamente se está em onboarding (specialist_active)', () => {
57
+ const estadoOnboarding = {
58
+ projeto_id: '123',
59
+ onboarding: {
60
+ phase: 'running',
61
+ specialistPhase: { status: 'active' }
62
+ }
63
+ };
64
+ expect(isInOnboarding(estadoOnboarding)).toBe(true);
65
+ const fs = getFlowState(estadoOnboarding, '/test');
66
+ expect(fs.currentPhase).toBe('specialist_active');
67
+ });
68
+ it('não deve marcar como onboarding se phase for completed sem specialistPhase', () => {
69
+ const estadoDesenvolvimento = {
70
+ projeto_id: '123',
71
+ fase_atual: 2,
72
+ total_fases: 10,
73
+ gates_validados: [1],
74
+ onboarding: {
75
+ phase: 'completed',
76
+ specialistPhase: null
77
+ }
78
+ };
79
+ expect(isInOnboarding(estadoDesenvolvimento)).toBe(false);
80
+ const fs = getFlowState(estadoDesenvolvimento, '/test');
81
+ expect(fs.currentPhase).toBe('fase_ativa');
82
+ });
83
+ });
84
+ });
85
+ //# sourceMappingURL=flow-engine.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flow-engine.test.js","sourceRoot":"","sources":["../../src/tests/flow-engine.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGvF,oBAAoB;AACpB,EAAE,CAAC,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE,CAAC,CAAC;IAChD,oBAAoB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;CACzG,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC;IAChC,gBAAgB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,CAAC;CAC1G,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,UAAU,CAAC,GAAG,EAAE;QACZ,EAAE,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAC3C,IAAI,SAAc,CAAC;QAEnB,UAAU,CAAC,GAAG,EAAE;YACZ,SAAS,GAAG;gBACR,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,CAAC;gBACb,WAAW,EAAE,EAAE;gBACf,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;gBACxD,eAAe,EAAE,CAAC,CAAC,CAAC;gBACpB,KAAK,EAAE,OAAO;gBACd,WAAW,EAAE,KAAK;gBAClB,oCAAoC;aACvC,CAAC;QACN,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;YAC9E,SAAS,CAAC,eAAe,GAAG,gBAAgB,CAAC;YAE7C,MAAM,QAAQ,GAAG,WAAW,CAAC,SAA0B,EAAE,OAAO,CAAC,CAAC;YAElE,2FAA2F;YAC3F,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oFAAoF,EAAE,GAAG,EAAE;YAC1F,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC;YAEtC,MAAM,QAAQ,GAAG,WAAW,CAAC,SAA0B,EAAE,OAAO,CAAC,CAAC;YAElE,0DAA0D;YAC1D,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sFAAsF,EAAE,GAAG,EAAE;YAC5F,SAAS,CAAC,eAAe,GAAG,WAAW,CAAC;YAExC,MAAM,QAAQ,GAAG,WAAW,CAAC,SAA0B,EAAE,OAAO,CAAC,CAAC;YAElE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yEAAyE,EAAE,GAAG,EAAE;YAC/E,SAAS,CAAC,eAAe,GAAG,iBAAiB,CAAC;YAE9C,MAAM,QAAQ,GAAG,WAAW,CAAC,SAA0B,EAAE,OAAO,CAAC,CAAC;YAElE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,+CAA+C;QACpG,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC9D,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;YAC9E,MAAM,gBAAgB,GAAG;gBACrB,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE;oBACR,KAAK,EAAE,SAAS;oBAChB,eAAe,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;iBACxC;aACJ,CAAC;YACF,MAAM,CAAC,cAAc,CAAC,gBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3D,MAAM,EAAE,GAAG,YAAY,CAAC,gBAAiC,EAAE,OAAO,CAAC,CAAC;YACpE,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4EAA4E,EAAE,GAAG,EAAE;YAClF,MAAM,qBAAqB,GAAG;gBAC1B,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,CAAC;gBACb,WAAW,EAAE,EAAE;gBACf,eAAe,EAAE,CAAC,CAAC,CAAC;gBACpB,UAAU,EAAE;oBACR,KAAK,EAAE,WAAW;oBAClB,eAAe,EAAE,IAAI;iBACxB;aACJ,CAAC;YACF,MAAM,CAAC,cAAc,CAAC,qBAA4B,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACjE,MAAM,EAAE,GAAG,YAAY,CAAC,qBAAsC,EAAE,OAAO,CAAC,CAAC;YACzE,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=gate-orientation.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gate-orientation.test.d.ts","sourceRoot":"","sources":["../../src/tests/gate-orientation.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,59 @@
1
+ import { vi, describe, it, expect, beforeEach } from 'vitest';
2
+ import { generateGateOrientationDoc } from '../utils/gate-orientation.js';
3
+ import * as fsPromises from 'fs/promises';
4
+ // Mocks
5
+ vi.mock('fs/promises', () => ({
6
+ writeFile: vi.fn().mockResolvedValue(undefined),
7
+ mkdir: vi.fn().mockResolvedValue(undefined)
8
+ }));
9
+ vi.mock('../services/skill-loader.service.js', () => ({
10
+ SkillLoaderService: class {
11
+ async loadChecklist(faseNome) {
12
+ if (faseNome === 'Produto')
13
+ return '- Critério A\n- Critério B';
14
+ return null;
15
+ }
16
+ }
17
+ }));
18
+ vi.mock('../utils/prompt-mapper.js', () => ({
19
+ getSkillParaFase: vi.fn().mockReturnValue('skill-gestao-produto')
20
+ }));
21
+ vi.mock('../utils/ide-paths.js', () => ({
22
+ getSkillFilePath: vi.fn().mockReturnValue('.agent/skills/skill-gestao-produto/'),
23
+ detectIDE: vi.fn().mockReturnValue('cursor')
24
+ }));
25
+ describe('GateOrientation', () => {
26
+ beforeEach(() => {
27
+ vi.clearAllMocks();
28
+ });
29
+ it('deve gerar o documento descritivo de gate e salvar no disco', async () => {
30
+ const result = await generateGateOrientationDoc('/test/dir', 'Produto', 1);
31
+ expect(result).not.toBeNull();
32
+ expect(fsPromises.mkdir).toHaveBeenCalled();
33
+ expect(fsPromises.writeFile).toHaveBeenCalled();
34
+ // Verificar o path correto gerado
35
+ const expectedPathPart = 'fase-01'; // Verifica normalização
36
+ expect(result).toContain(expectedPathPart);
37
+ expect(result).toContain('.orientacoes-gate.md');
38
+ // Checar parte do conteúdo escrito
39
+ const writeCallArgs = vi.mocked(fsPromises.writeFile).mock.calls[0];
40
+ const contentWritten = writeCallArgs[1];
41
+ expect(contentWritten).toContain('Critérios do Gate — Fase 1: Produto');
42
+ expect(contentWritten).toContain('skill-gestao-produto');
43
+ expect(contentWritten).toContain('- Critério A\n- Critério B');
44
+ });
45
+ it('deve retornar null se o checklist da fase não for encontrado na skill', async () => {
46
+ // Mocka uma fase não registrada
47
+ const result = await generateGateOrientationDoc('/test/dir', 'FaseInvalida', 99);
48
+ // Se não houver checklist, o orientador aborta e não gera nada
49
+ expect(result).toBeNull();
50
+ expect(fsPromises.writeFile).not.toHaveBeenCalled();
51
+ });
52
+ it('deve lidar corretamente com erros do filesystem durante a gravação', async () => {
53
+ // Redefinir mock especificamente para este caso causar erro
54
+ vi.mocked(fsPromises.mkdir).mockRejectedValueOnce(new Error('Permission denied'));
55
+ const result = await generateGateOrientationDoc('/test/dir', 'Produto', 1);
56
+ expect(result).toBeNull();
57
+ });
58
+ });
59
+ //# sourceMappingURL=gate-orientation.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gate-orientation.test.js","sourceRoot":"","sources":["../../src/tests/gate-orientation.test.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import { withStateLoad } from '../middleware/state-loader.middleware.js';
6
6
  import { withPersistence } from '../middleware/persistence.middleware.js';
7
7
  import { withFlowEngine } from '../middleware/flow-engine.middleware.js';
8
8
  import { withSkillInjection } from '../middleware/skill-injection.middleware.js';
9
- import { applyMiddlewares, applyLightMiddlewares } from '../middleware/index.js';
9
+ import { applyMiddlewares, applyLightMiddlewares, applyOrchestrationPipeline } from '../middleware/index.js';
10
10
  // Mock state service
11
11
  vi.mock('../services/state.service.js', () => ({
12
12
  createStateService: vi.fn((dir) => ({
@@ -162,16 +162,20 @@ describe('Middleware: withFlowEngine', () => {
162
162
  expect(result.next_action?.tool).toBe('proximo');
163
163
  expect(result.progress).toBeDefined();
164
164
  });
165
- it('não deve sobrescrever next_action presente', async () => {
165
+ // v6.0: FlowEngine SEMPRE sobrescreve next_action (comportamento forçado)
166
+ it('deve SEMPRE sobrescrever next_action, mesmo quando já presente (v6.0)', async () => {
166
167
  const existingAction = { tool: 'validar_gate', description: 'Validar', args_template: {}, requires_user_input: false };
167
168
  const handler = vi.fn().mockResolvedValue({
168
169
  content: [{ type: 'text', text: 'ok' }],
169
- estado_atualizado: JSON.stringify({ nome: 'Test' }),
170
+ estado_atualizado: JSON.stringify({ nome: 'Test', nivel: 'medio', fase_atual: 2, total_fases: 8 }),
170
171
  next_action: existingAction,
171
172
  });
172
173
  const wrapped = withFlowEngine(handler);
173
174
  const result = await wrapped({ diretorio: '/test/project' });
174
- expect(result.next_action).toEqual(existingAction);
175
+ // v6.0: FlowEngine FORÇA sobrescrita — next_action deve ser do FlowEngine, não da tool
176
+ expect(result.next_action?.tool).toBe('proximo'); // FlowEngine define 'proximo'
177
+ // O next_action original ('validar_gate') deve ter sido sobrescrito
178
+ expect(result.next_action?.tool).not.toBe('validar_gate');
175
179
  });
176
180
  it('não deve calcular next_action quando isError', async () => {
177
181
  const handler = vi.fn().mockResolvedValue({
@@ -225,4 +229,26 @@ describe('Pipeline: applyLightMiddlewares', () => {
225
229
  expect(result.content[0].text).toBe('Light OK');
226
230
  });
227
231
  });
232
+ describe('Pipeline: applyOrchestrationPipeline (v6.0)', () => {
233
+ it('deve compor todos os middlewares na ordem correta', async () => {
234
+ const handler = vi.fn().mockResolvedValue({
235
+ content: [{ type: 'text', text: 'Orchestration OK' }],
236
+ });
237
+ const wrapped = applyOrchestrationPipeline('test-tool', handler);
238
+ expect(typeof wrapped).toBe('function');
239
+ const result = await wrapped({ diretorio: '/test/project' });
240
+ expect(result.content[0].text).toContain('Orchestration OK');
241
+ });
242
+ it('deve calcular next_action via FlowEngine', async () => {
243
+ const handler = vi.fn().mockResolvedValue({
244
+ content: [{ type: 'text', text: 'ok' }],
245
+ estado_atualizado: JSON.stringify({ nome: 'Test', nivel: 'medio', fase_atual: 2, total_fases: 8 }),
246
+ });
247
+ const wrapped = applyOrchestrationPipeline('test-tool', handler);
248
+ const result = await wrapped({ diretorio: '/test/project' });
249
+ // FlowEngine deve ter calculado next_action
250
+ expect(result.next_action).toBeDefined();
251
+ expect(result.next_action?.tool).toBe('proximo');
252
+ });
253
+ });
228
254
  //# sourceMappingURL=middleware.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.test.js","sourceRoot":"","sources":["../../src/tests/middleware.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"middleware.test.js","sourceRoot":"","sources":["../../src/tests/middleware.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=watcher.service.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watcher.service.test.d.ts","sourceRoot":"","sources":["../../src/tests/watcher.service.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,119 @@
1
+ import { vi, describe, it, expect, beforeEach, afterEach } from 'vitest';
2
+ import { startFileWatcher, stopFileWatcher, getActiveWatcherCount } from '../services/watcher.service.js';
3
+ // Mock chokidar
4
+ vi.mock('chokidar', () => {
5
+ const watchers = new Map();
6
+ return {
7
+ default: {
8
+ watch: vi.fn((filePath) => {
9
+ const watcher = {
10
+ on: vi.fn((event, cb) => {
11
+ if (!watchers.has(filePath))
12
+ watchers.set(filePath, {});
13
+ watchers.get(filePath)[event] = cb;
14
+ return watcher;
15
+ }),
16
+ close: vi.fn(),
17
+ // Helper para simular eventos nos testes
18
+ __emit: (event, ...args) => {
19
+ if (watchers.get(filePath)?.[event]) {
20
+ watchers.get(filePath)[event](...args);
21
+ }
22
+ }
23
+ };
24
+ // Salvar o watcher instanciado para acesso no teste
25
+ watchers.set(filePath + '_instance', watcher);
26
+ return watcher;
27
+ }),
28
+ __getWatchers: () => watchers
29
+ }
30
+ };
31
+ });
32
+ // Mock fs/promises
33
+ vi.mock('fs/promises', () => ({
34
+ readFile: vi.fn().mockResolvedValue('# Produto\n\nMocked PRD content for testing.')
35
+ }));
36
+ // Mock ValidationPipeline
37
+ vi.mock('../core/validation/ValidationPipeline.js', () => {
38
+ return {
39
+ ValidationPipeline: class {
40
+ async validateDeliverable() {
41
+ return {
42
+ overallScore: 85,
43
+ recommendations: ['Sugestão mockada']
44
+ };
45
+ }
46
+ }
47
+ };
48
+ });
49
+ describe('WatcherService', () => {
50
+ beforeEach(() => {
51
+ vi.useFakeTimers();
52
+ // Limpar watchers residuais
53
+ stopFileWatcher('/test/dir');
54
+ });
55
+ afterEach(() => {
56
+ vi.useRealTimers();
57
+ vi.clearAllMocks();
58
+ });
59
+ it('deve registrar um novo watcher e gerenciar contagem', async () => {
60
+ const onValidationResult = vi.fn();
61
+ await startFileWatcher({
62
+ filePath: '/test/dir/PRD.md',
63
+ diretorio: '/test/dir',
64
+ faseNome: 'Produto',
65
+ onValidationResult
66
+ });
67
+ expect(getActiveWatcherCount()).toBe(1);
68
+ stopFileWatcher('/test/dir');
69
+ expect(getActiveWatcherCount()).toBe(0);
70
+ });
71
+ it('deve disparar a validação quando o arquivo mudar respeitando debounce', async () => {
72
+ let resolveValidation;
73
+ const validationPromise = new Promise(r => resolveValidation = r);
74
+ const onValidationResult = vi.fn().mockImplementation(() => {
75
+ resolveValidation();
76
+ });
77
+ await startFileWatcher({
78
+ filePath: '/test/dir/PRD.md',
79
+ diretorio: '/test/dir',
80
+ faseNome: 'Produto',
81
+ onValidationResult
82
+ });
83
+ const chokidar = await import('chokidar');
84
+ const watchersMap = chokidar.default.__getWatchers();
85
+ const watcherInstance = watchersMap.get('/test/dir/PRD.md_instance');
86
+ // Simular 3 eventos de change muito rápidos
87
+ watcherInstance.__emit('change');
88
+ watcherInstance.__emit('change');
89
+ watcherInstance.__emit('change');
90
+ // Avançar o tempo apenas 200ms (antes do debounce de 500ms)
91
+ await vi.advanceTimersByTimeAsync(200);
92
+ expect(onValidationResult).not.toHaveBeenCalled();
93
+ // Avançar o tempo além dos 500ms
94
+ await vi.advanceTimersByTimeAsync(350);
95
+ // Aguarda toda a cadeia async (resolve readFile, etc)
96
+ await validationPromise;
97
+ // Deve ter chamado a validação apenas 1 vez debido ao debounce
98
+ expect(onValidationResult).toHaveBeenCalledTimes(1);
99
+ expect(onValidationResult).toHaveBeenCalledWith(85, 'Score: 85/100\nSugestão mockada', '/test/dir/PRD.md');
100
+ });
101
+ it('não deve acumular múltiplos watchers para o mesmo diretório', async () => {
102
+ const onValidationResult = vi.fn();
103
+ await startFileWatcher({
104
+ filePath: '/test/dir/PRD.md',
105
+ diretorio: '/test/dir',
106
+ faseNome: 'Produto',
107
+ onValidationResult
108
+ });
109
+ // Chamar novamente para o mesmo diretório
110
+ await startFileWatcher({
111
+ filePath: '/test/dir/PRD.md',
112
+ diretorio: '/test/dir',
113
+ faseNome: 'Produto',
114
+ onValidationResult
115
+ });
116
+ expect(getActiveWatcherCount()).toBe(1);
117
+ });
118
+ });
119
+ //# sourceMappingURL=watcher.service.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watcher.service.test.js","sourceRoot":"","sources":["../../src/tests/watcher.service.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;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
+ {"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,CA2O5E;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;CAkB7B,CAAC"}
@@ -114,6 +114,8 @@ O projeto deve primeiro:
114
114
  estado.aguardando_aprovacao = false;
115
115
  estado.motivo_bloqueio = undefined;
116
116
  estado.score_bloqueado = undefined;
117
+ // V6 Sprint 2: Desativar modo compulsório ao aprovar
118
+ estado.em_estado_compulsorio = false;
117
119
  // Serializar estado
118
120
  const estadoFile = serializarEstado(estado);
119
121
  const faseAtual = getFaseComStitch(estado.nivel, estado.fase_atual, estado.usar_stitch);
@@ -177,6 +179,8 @@ ${estadoFile.content}
177
179
  estado.aguardando_aprovacao = false;
178
180
  estado.motivo_bloqueio = undefined;
179
181
  estado.score_bloqueado = undefined;
182
+ // V6 Sprint 2: Desativar modo compulsório ao rejeitar também
183
+ estado.em_estado_compulsorio = false;
180
184
  // Serializar estado
181
185
  const estadoFile = serializarEstado(estado);
182
186
  const faseAtualRej = getFaseComStitch(estado.nivel, estado.fase_atual, estado.usar_stitch);
@@ -1 +1 @@
1
- {"version":3,"file":"aprovar-gate.js","sourceRoot":"","sources":["../../src/tools/aprovar-gate.ts"],"names":[],"mappings":"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"}
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":"contexto.d.ts","sourceRoot":"","sources":["../../src/tools/contexto.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,mBAAmB,CAAC;AAgBnE,UAAU,YAAY;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAuLtE;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;CAa1B,CAAC"}
1
+ {"version":3,"file":"contexto.d.ts","sourceRoot":"","sources":["../../src/tools/contexto.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,mBAAmB,CAAC;AAiBnE,UAAU,YAAY;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAkOtE;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;CAa1B,CAAC"}
@@ -10,6 +10,7 @@ import { formatError, embedAllMetadata } from "../utils/response-formatter.js";
10
10
  import { withStructuredContent } from "../services/structured-content.service.js";
11
11
  import { ContentResolverService } from "../services/content-resolver.service.js";
12
12
  import { SkillLoaderService } from "../services/skill-loader.service.js";
13
+ import { KnowledgeBase } from "../core/knowledge/KnowledgeBase.js";
13
14
  /**
14
15
  * Tool: contexto
15
16
  * Retorna contexto acumulado do projeto para injeção em prompts (modo stateless)
@@ -49,6 +50,45 @@ export async function contexto(args) {
49
50
  .join("\n");
50
51
  // Identificar stack e modelo (se disponíveis nas fases anteriores)
51
52
  const fasesCompletas = estado.gates_validados.map(num => getFase(estado.nivel, num)?.nome).join(", ");
53
+ // v6.3 S3.3: Carregar ADRs e decisões acumuladas do KnowledgeBase
54
+ let knowledgeSection = "";
55
+ try {
56
+ const kb = new KnowledgeBase(diretorio);
57
+ const [adrs, decisions] = await Promise.all([
58
+ kb.listByType('adr'),
59
+ kb.listByType('decision'),
60
+ ]);
61
+ const partes = [];
62
+ if (adrs.length > 0) {
63
+ partes.push(`## 📚 Decisões Arquiteturais (ADRs)\n`);
64
+ partes.push(`> ${adrs.length} ADR(s) registrado(s) ao longo do projeto.\n`);
65
+ adrs.slice(0, 10).forEach(adr => {
66
+ const content = adr.content;
67
+ const faseInfo = getFase(estado.nivel, adr.metadata.fase);
68
+ partes.push(`**${adr.id}** _(Fase ${adr.metadata.fase}: ${faseInfo?.nome || '?'})_`);
69
+ partes.push(`> ${content?.decision || 'Decisão não disponível'}\n`);
70
+ });
71
+ if (adrs.length > 10) {
72
+ partes.push(`_... e mais ${adrs.length - 10} ADR(s). Consulte \`.maestro/adrs/\` para ver todos._\n`);
73
+ }
74
+ }
75
+ if (decisions.length > 0) {
76
+ partes.push(`## 📌 Decisões Técnicas\n`);
77
+ decisions.slice(0, 5).forEach(d => {
78
+ const content = d.content;
79
+ partes.push(`- **${d.id}**: ${content?.action || d.id}`);
80
+ if (content?.reason)
81
+ partes.push(` _Motivo: ${content.reason}_`);
82
+ });
83
+ partes.push('');
84
+ }
85
+ if (partes.length > 0) {
86
+ knowledgeSection = partes.join('\n');
87
+ }
88
+ }
89
+ catch {
90
+ // KnowledgeBase é best-effort
91
+ }
52
92
  // v6.0 (P13): Carregar conteúdo real da skill ANTES do template
53
93
  let skillInjectionContent = "";
54
94
  if (faseAtual) {
@@ -143,6 +183,7 @@ ${fluxo.fases.map(f => {
143
183
  return `${status} **Fase ${f.numero}**: ${f.nome}`;
144
184
  }).join("\n")}
145
185
 
186
+ ${knowledgeSection ? `\n${knowledgeSection}\n` : ""}
146
187
  ---
147
188
 
148
189
  *Use este contexto para manter consistência entre as fases do projeto.*
@@ -1 +1 @@
1
- {"version":3,"file":"contexto.js","sourceRoot":"","sources":["../../src/tools/contexto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contexto.js","sourceRoot":"","sources":["../../src/tools/contexto.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,CA6PtF;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;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"}