@maestro-ai/mcp-server 5.6.5 → 6.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.
Files changed (109) hide show
  1. package/dist/constants.d.ts +1 -1
  2. package/dist/constants.js +1 -1
  3. package/dist/content/skills/specialist-api-contract/SKILL.md +98 -0
  4. package/dist/content/skills/specialist-api-contract/resources/checklists/gate-checklist.md +38 -0
  5. package/dist/content/skills/specialist-api-contract/resources/reference/guide.md +109 -0
  6. package/dist/content/skills/specialist-architect/SKILL.md +111 -0
  7. package/dist/content/skills/specialist-architect/resources/checklists/gate-checklist.md +45 -0
  8. package/dist/content/skills/specialist-architect/resources/examples/example-architecture.md +345 -0
  9. package/dist/content/skills/specialist-architect/resources/reference/guide.md +86 -0
  10. package/dist/content/skills/specialist-architect/resources/templates/arquitetura.md +282 -0
  11. package/dist/content/skills/specialist-backend/SKILL.md +100 -0
  12. package/dist/content/skills/specialist-backend/resources/checklists/gate-checklist.md +38 -0
  13. package/dist/content/skills/specialist-backend/resources/reference/guide.md +160 -0
  14. package/dist/content/skills/specialist-design/SKILL.md +107 -0
  15. package/dist/content/skills/specialist-design/resources/checklists/gate-checklist.md +45 -0
  16. package/dist/content/skills/specialist-design/resources/examples/example-design.md +294 -0
  17. package/dist/content/skills/specialist-design/resources/reference/guide.md +67 -0
  18. package/dist/content/skills/specialist-design/resources/templates/design-doc.md +232 -0
  19. package/dist/content/skills/specialist-devops/SKILL.md +99 -0
  20. package/dist/content/skills/specialist-devops/resources/checklists/gate-checklist.md +38 -0
  21. package/dist/content/skills/specialist-devops/resources/reference/guide.md +116 -0
  22. package/dist/content/skills/specialist-discovery/SKILL.md +109 -0
  23. package/dist/content/skills/specialist-discovery/resources/checklists/gate-checklist.md +45 -0
  24. package/dist/content/skills/specialist-discovery/resources/examples/example-discovery.md +179 -0
  25. package/dist/content/skills/specialist-discovery/resources/reference/guide.md +48 -0
  26. package/dist/content/skills/specialist-discovery/resources/templates/discovery.md +187 -0
  27. package/dist/content/skills/specialist-domain/SKILL.md +105 -0
  28. package/dist/content/skills/specialist-domain/resources/checklists/gate-checklist.md +37 -0
  29. package/dist/content/skills/specialist-domain/resources/reference/guide.md +80 -0
  30. package/dist/content/skills/specialist-frontend/SKILL.md +99 -0
  31. package/dist/content/skills/specialist-frontend/resources/checklists/gate-checklist.md +38 -0
  32. package/dist/content/skills/specialist-frontend/resources/reference/guide.md +90 -0
  33. package/dist/content/skills/specialist-operations/SKILL.md +109 -0
  34. package/dist/content/skills/specialist-operations/resources/checklists/gate-checklist.md +38 -0
  35. package/dist/content/skills/specialist-operations/resources/reference/guide.md +129 -0
  36. package/dist/content/skills/specialist-planning/SKILL.md +100 -0
  37. package/dist/content/skills/specialist-planning/resources/checklists/gate-checklist.md +38 -0
  38. package/dist/content/skills/specialist-planning/resources/reference/guide.md +88 -0
  39. package/dist/content/skills/specialist-product/SKILL.md +113 -0
  40. package/dist/content/skills/specialist-product/resources/checklists/gate-checklist.md +40 -0
  41. package/dist/content/skills/specialist-product/resources/reference/guide.md +43 -0
  42. package/dist/content/skills/specialist-product/resources/templates/PRD.md +191 -0
  43. package/dist/content/skills/specialist-requirements/SKILL.md +107 -0
  44. package/dist/content/skills/specialist-requirements/resources/checklists/gate-checklist.md +36 -0
  45. package/dist/content/skills/specialist-requirements/resources/reference/guide.md +66 -0
  46. package/dist/content/skills/specialist-technical-design/SKILL.md +114 -0
  47. package/dist/content/skills/specialist-technical-design/resources/checklists/gate-checklist.md +38 -0
  48. package/dist/content/skills/specialist-technical-design/resources/reference/guide.md +86 -0
  49. package/dist/flows/types.d.ts +33 -3
  50. package/dist/flows/types.d.ts.map +1 -1
  51. package/dist/flows/types.js +288 -309
  52. package/dist/flows/types.js.map +1 -1
  53. package/dist/gates/code-validator.d.ts +47 -0
  54. package/dist/gates/code-validator.d.ts.map +1 -0
  55. package/dist/gates/code-validator.js +225 -0
  56. package/dist/gates/code-validator.js.map +1 -0
  57. package/dist/gates/readiness-gate.d.ts +48 -0
  58. package/dist/gates/readiness-gate.d.ts.map +1 -0
  59. package/dist/gates/readiness-gate.js +301 -0
  60. package/dist/gates/readiness-gate.js.map +1 -0
  61. package/dist/handlers/code-phase-handler.d.ts +1 -0
  62. package/dist/handlers/code-phase-handler.d.ts.map +1 -1
  63. package/dist/handlers/code-phase-handler.js +176 -27
  64. package/dist/handlers/code-phase-handler.js.map +1 -1
  65. package/dist/handlers/specialist-phase-handler.d.ts +11 -10
  66. package/dist/handlers/specialist-phase-handler.d.ts.map +1 -1
  67. package/dist/handlers/specialist-phase-handler.js +160 -64
  68. package/dist/handlers/specialist-phase-handler.js.map +1 -1
  69. package/dist/services/deliverable-gate.service.d.ts +40 -0
  70. package/dist/services/deliverable-gate.service.d.ts.map +1 -0
  71. package/dist/services/deliverable-gate.service.js +88 -0
  72. package/dist/services/deliverable-gate.service.js.map +1 -0
  73. package/dist/services/phase-config-loader.d.ts +28 -0
  74. package/dist/services/phase-config-loader.d.ts.map +1 -0
  75. package/dist/services/phase-config-loader.js +200 -0
  76. package/dist/services/phase-config-loader.js.map +1 -0
  77. package/dist/services/scoring-config.d.ts.map +1 -1
  78. package/dist/services/scoring-config.js +13 -10
  79. package/dist/services/scoring-config.js.map +1 -1
  80. package/dist/tools/consolidated/avancar.d.ts.map +1 -1
  81. package/dist/tools/consolidated/avancar.js +89 -8
  82. package/dist/tools/consolidated/avancar.js.map +1 -1
  83. package/dist/tools/iniciar-projeto.d.ts.map +1 -1
  84. package/dist/tools/iniciar-projeto.js +46 -0
  85. package/dist/tools/iniciar-projeto.js.map +1 -1
  86. package/dist/tools/proximo.d.ts +1 -0
  87. package/dist/tools/proximo.d.ts.map +1 -1
  88. package/dist/tools/proximo.js +41 -126
  89. package/dist/tools/proximo.js.map +1 -1
  90. package/dist/types/index.d.ts +2 -0
  91. package/dist/types/index.d.ts.map +1 -1
  92. package/dist/types/index.js.map +1 -1
  93. package/dist/types/phase-config.d.ts +65 -0
  94. package/dist/types/phase-config.d.ts.map +1 -0
  95. package/dist/types/phase-config.js +11 -0
  96. package/dist/types/phase-config.js.map +1 -0
  97. package/dist/utils/migration-v10.d.ts +31 -0
  98. package/dist/utils/migration-v10.d.ts.map +1 -0
  99. package/dist/utils/migration-v10.js +145 -0
  100. package/dist/utils/migration-v10.js.map +1 -0
  101. package/dist/utils/prompt-mapper.d.ts +6 -2
  102. package/dist/utils/prompt-mapper.d.ts.map +1 -1
  103. package/dist/utils/prompt-mapper.js +72 -91
  104. package/dist/utils/prompt-mapper.js.map +1 -1
  105. package/dist/utils/skill-deployer.d.ts +32 -0
  106. package/dist/utils/skill-deployer.d.ts.map +1 -0
  107. package/dist/utils/skill-deployer.js +150 -0
  108. package/dist/utils/skill-deployer.js.map +1 -0
  109. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"code-phase-handler.js","sourceRoot":"","sources":["../../src/handlers/code-phase-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code-phase-handler.js","sourceRoot":"","sources":["../../src/handlers/code-phase-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;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,qBAAqB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EAAE,gBAAgB,EAAoB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAC/G,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAS7D;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,QAA4B;IACpD,OAAO,eAAe,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAmB;IACrD,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IACnC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IAEvF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO;YACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,UAAU,2BAA2B,EAAE,CAAC;YACzF,OAAO,EAAE,IAAI;SAChB,CAAC;IACN,CAAC;IAED,mDAAmD;IACnD,IAAI,SAAS,GAAG,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE7E,gBAAgB;IAChB,QAAQ,SAAS,CAAC,MAAM,EAAE,CAAC;QACvB,KAAK,OAAO;YACR,OAAO,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAClD,KAAK,SAAS;YACV,OAAO,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QACpD,KAAK,MAAM;YACP,OAAO,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QACjD,KAAK,WAAW;YACZ,sDAAsD;YACtD,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACnC;YACI,OAAO,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACtD,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,WAAW,CACtB,IAAmB,EACnB,SAAyB,EACzB,QAA0F;IAE1F,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IACnC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,IAAI,UAAU,CAA0C,CAAC;IAExG,sCAAsC;IACtC,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAC1E,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAC1E,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IAElF,kDAAkD;IAClD,IAAI,CAAC,SAAS,CAAC,cAAc,IAAI,cAAc,EAAE,CAAC;QAC9C,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,uBAAuB,CACpC,cAAc,EACd,cAAc,EACd,MAAM,CAAC,UAAU,EACjB,QAAQ,CAAC,IAAI,CAChB,CAAC;YACF,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,qCAAqC;gBACrC,MAAM,CAAC,KAAK,GAAG;oBACX,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,UAAU,CAAC;oBAClE,GAAG,QAAQ;iBACd,CAAC;gBACF,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,sBAAsB,QAAQ,CAAC,MAAM,uCAAuC,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;YACpI,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,qDAAqD,EAAE,GAAG,CAAC,CAAC;QAC7E,CAAC;IACL,CAAC;IAED,qBAAqB;IACrB,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IACxE,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IAE9F,sDAAsD;IACtD,MAAM,SAAS,GAAG,gBAAgB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEtE,+DAA+D;IAC/D,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QACtB,SAAS,CAAC,QAAQ,GAAG,mBAAmB,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/E,CAAC;IACD,SAAS,CAAC,QAAQ,CAAC,KAAK,GAAG,uBAAuB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEtF,6CAA6C;IAC7C,MAAM,eAAe,GAAG,6BAA6B,CAAC,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAErF,+BAA+B;IAC/B,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEhF,0CAA0C;IAC1C,MAAM,OAAO,GAAG,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAE7E,mBAAmB;IACnB,SAAS,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;IAClD,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACtC,MAAM,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAEtC,MAAM,QAAQ,GAAG,QAAQ;QACrB,CAAC,CAAC,wBAAwB,QAAQ,CAAC,KAAK,MAAM,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,WAAW,IAAI;QACzF,CAAC,CAAC,8DAA8D,CAAC;IAErE,OAAO;QACH,OAAO,EAAE,CAAC;gBACN,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,aAAa,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,IAAI;;sBAE5C,QAAQ,CAAC,YAAY;;EAEzC,SAAS;;EAET,eAAe;;EAEf,gBAAgB;;;EAGhB,OAAO;EACP,QAAQ;mBACS,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,KAAK,WAAW,QAAQ,CAAC,UAAU;;;EAG9E,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;;;;;;oBAY7C,SAAS;;;;;;;CAO5B;aACQ,CAAC;QACF,iBAAiB,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,OAAO;QACnD,kBAAkB,EAAE;YAChB,IAAI,EAAE,QAAQ,CAAC,YAAY;YAC3B,IAAI,EAAE,mBAAmB;YACzB,SAAS,EAAE,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC9C,YAAY,EAAE,4BAA4B,QAAQ,CAAC,IAAI,+GAA+G;SACzK;QACD,QAAQ,EAAE;YACN,aAAa,EAAE,QAAQ,CAAC,IAAI;YAC5B,YAAY,EAAE,MAAM,CAAC,WAAW;YAChC,gBAAgB,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,IAAI,CAAC;YACrD,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,GAAG,CAAC;SAC7F;KACJ,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,aAAa,CACxB,IAAmB,EACnB,SAAyB,EACzB,QAA0F;IAE1F,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAC9C,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,IAAI,UAAU,CAA0C,CAAC;IAExG,MAAM,UAAU,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,UAAU,CAAC,CAAC;IAEnF,qCAAqC;IACrC,IAAI,SAAS,EAAE,SAAS,KAAK,IAAI,IAAI,SAAS,EAAE,SAAS,KAAK,MAAM,EAAE,CAAC;QACnE,sDAAsD;QACtD,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACpC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC;YAC3C,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;YACnD,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAC5F,CAAC;QAEF,IAAI,WAAW,EAAE,CAAC;YACd,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC;YAC5B,WAAW,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,wCAAwC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;YAEzE,8CAA8C;YAC9C,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;gBACxB,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,SAAS,CAAC,CAAC;gBACpE,IAAI,MAAM,EAAE,CAAC;oBACT,MAAM,eAAe,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CACpD,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAC5D,CAAC;oBACF,IAAI,eAAe,EAAE,CAAC;wBAClB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;wBACvB,MAAM,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;oBACjD,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,2DAA2D;QAC3D,IAAI,SAAS,EAAE,gBAAgB,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC3E,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;gBACtB,SAAS,CAAC,QAAQ,GAAG,mBAAmB,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC/E,CAAC;YACD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CACpC,GAAI,SAAS,CAAC,gBAA6B,CAC9C,CAAC;QACN,CAAC;IACL,CAAC;IAED,gCAAgC;IAChC,MAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IAEzC,8CAA8C;IAC9C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;QAC1B,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACtC,MAAM,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACtC,OAAO,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,uCAAuC;IACvC,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QACzC,QAAQ,CAAC,MAAM,GAAG,aAAa,CAAC;QAChC,QAAQ,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACnD,CAAC;IAED,SAAS,CAAC,gBAAgB,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC3C,SAAS,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/C,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACtC,MAAM,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAEtC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAE7E,OAAO;QACH,OAAO,EAAE,CAAC;gBACN,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,KAAK,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,EAAE,SAAS,OAAO,IAAI,QAAQ,CAAC,KAAK;;mBAE3F,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,UAAU;EACxE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,UAAU;;EAE7H,QAAQ,CAAC,CAAC,CAAC,qBAAqB,QAAQ,CAAC,KAAK;EAC9C,QAAQ,CAAC,WAAW;;EAEpB,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC,CAAC,4BAA4B,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;;EAEnJ,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,2BAA2B,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;CACvH,CAAC,CAAC,CAAC,0BAA0B;;;EAG5B,OAAO;;;;;;;;oBAQW,SAAS;;;;;CAK5B;aACQ,CAAC;QACF,iBAAiB,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,OAAO;QACnD,WAAW,EAAE;YACT,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,iBAAiB,OAAO,IAAI,QAAQ,CAAC,KAAK,KAAK,QAAQ,EAAE,KAAK,IAAI,SAAS,EAAE;YAC1F,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE;YAC7E,mBAAmB,EAAE,KAAK;SAC7B;KACJ,CAAC;AACN,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,UAAU,CACrB,IAAmB,EACnB,SAAyB,EACzB,QAA0F;IAE1F,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IACnC,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAExE,iBAAiB;IACjB,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,IAAI,mBAAmB,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7F,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC;IACtC,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC;IACpC,QAAQ,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAE9C,oDAAoD;IACpD,MAAM,YAAY,GAAG,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAChE,QAAQ,CAAC,gBAAgB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,gBAAgB,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAE1F,mEAAmE;IACnE,2BAA2B,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAE7E,kBAAkB;IAClB,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrE,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAEtG,IAAI,CAAC;QACD,MAAM,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAEhE,wBAAwB;QACxB,MAAM,cAAc,GAAG,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC7E,MAAM,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAE5C,sCAAsC;QACtC,MAAM,CAAC,WAAW,CAAC,QAAQ,MAAM,CAAC,UAAU,EAAE,CAAC,GAAG,WAAW,CAAC;IAClE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,wCAAwC,EAAE,GAAG,CAAC,CAAC;IAChE,CAAC;IAED,sEAAsE;IACtE,MAAM,gBAAgB,GAAG,iBAAiB,CACtC,QAAQ,EACR,SAAS,EACT,MAAM,CAAC,KAAK,IAAI,EAAE,EAClB,MAAM,CAAC,UAAU,CACpB,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,0CAA0C,gBAAgB,CAAC,KAAK,iBAAiB,gBAAgB,CAAC,QAAQ,cAAc,gBAAgB,CAAC,SAAS,CAAC,QAAQ,WAAW,gBAAgB,CAAC,SAAS,CAAC,KAAK,cAAc,gBAAgB,CAAC,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC;IAExQ,uBAAuB;IACvB,IAAI,gBAAgB,CAAC,KAAK,GAAG,EAAE,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,0BAA0B,CAAC,gBAAgB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/E,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,kCAAkC,QAAQ,CAAC,IAAI,OAAO,UAAU,+IAA+I;iBACxN,CAAC;YACF,iBAAiB,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,OAAO;SACtD,CAAC;IACN,CAAC;IAED,yCAAyC;IACzC,IAAI,gBAAgB,CAAC,KAAK,GAAG,EAAE,EAAE,CAAC;QAC9B,MAAM,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,MAAM,CAAC,eAAe,GAAG,yBAAyB,gBAAgB,CAAC,KAAK,MAAM,CAAC;QAC/E,MAAM,CAAC,eAAe,GAAG,gBAAgB,CAAC,KAAK,CAAC;QAChD,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACtC,MAAM,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAEtC,MAAM,UAAU,GAAG,0BAA0B,CAAC,gBAAgB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/E,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,sCAAsC,QAAQ,CAAC,IAAI,OAAO,UAAU,uNAAuN;iBACpS,CAAC;YACF,iBAAiB,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,OAAO;SACtD,CAAC;IACN,CAAC;IAED,4FAA4F;IAC5F,SAAS,CAAC,MAAM,GAAG,WAAW,CAAC;IAC/B,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC9B,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACtC,MAAM,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAEtC,kFAAkF;IAClF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED,2BAA2B;AAE3B;;GAEG;AACH,SAAS,kBAAkB,CAAC,MAAqB,EAAE,UAAkB,EAAE,QAAgB;IACnF,MAAM,QAAQ,GAAI,MAAc,CAAC,cAA4C,CAAC;IAC9E,IAAI,QAAQ,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QACjD,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,OAAO;QACH,MAAM,EAAE,OAAO;QACf,UAAU;QACV,QAAQ;QACR,cAAc,EAAE,KAAK;QACrB,gBAAgB,EAAE,CAAC;QACnB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACtC,CAAC;AACN,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAqB,EAAE,SAAyB;IACvE,MAAc,CAAC,cAAc,GAAG,SAAS,CAAC;AAC/C,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,MAAqB,EAAE,SAAiB;IAChE,MAAM,CAAC,aAAa,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAChD,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC;QACD,MAAM,QAAQ,CAAC,GAAG,SAAS,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC1E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,GAAG,CAAC,CAAC;IAC9D,CAAC;AACL,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,cAAc,CACzB,MAAqB,EACrB,SAAiB,EACjB,IAAgE;IAEhE,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;IAE7C,qCAAqC;IACrC,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QACnC,MAAM,SAAS,GAAI,IAAe,CAAC,WAAW,EAAE,CAAC;QAEjD,MAAM,KAAK,GACP,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;YACvF,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAClH,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACtI,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;YACxF,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QAE7F,IAAI,KAAK,EAAE,CAAC;YACR,IAAI,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAc,EAAE,OAAO,CAAC,CAAC;gBACxD,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,EAAE;oBAAE,OAAO,OAAO,CAAC;YAC9D,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;IACL,CAAC;IAED,uCAAuC;IACvC,MAAM,aAAa,GAA6B;QAC5C,OAAO,EAAE,CAAC,4BAA4B,EAAE,iCAAiC,CAAC;QAC1E,OAAO,EAAE,CAAC,0BAA0B,EAAE,wCAAwC,CAAC;QAC/E,WAAW,EAAE,CAAC,oCAAoC,EAAE,yCAAyC,CAAC;QAC9F,MAAM,EAAE,CAAC,iCAAiC,EAAE,sCAAsC,CAAC;QACnF,KAAK,EAAE,CAAC,oCAAoC,EAAE,6CAA6C,CAAC;KAC/F,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1C,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC;gBACD,OAAO,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC7C,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,kBAAiC,EAAE,QAAgB;IACzE,IAAI,CAAC,kBAAkB;QAAE,OAAO,kFAAkF,CAAC;IAEnH,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,cAAc,GAAG,KAAK,CAAC;IAE3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC3E,cAAc,GAAG,IAAI,CAAC;YACtB,SAAS;QACb,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACjB,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAAE,MAAM;YACxD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;oBAC/I,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC;qBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;oBACpJ,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC;qBAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBACjE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,8CAA8C;QAC9C,OAAO,+FAA+F,CAAC;IAC3G,CAAC;IAED,OAAO,oCAAoC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AACvE,CAAC;AAED;;GAEG;AACH,SAAS,6BAA6B,CAAC,cAA6B,EAAE,QAAgB;IAClF,IAAI,CAAC,cAAc;QAAE,OAAO,kDAAkD,CAAC;IAE/E,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IAEpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,6EAA6E,CAAC,CAAC;QACxG,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;YACtC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACrC,MAAM,UAAU,GACZ,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvD,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACtD,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC5F,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;YAE3F,IAAI,UAAU,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,MAAM,GAAG,OAAO,CAAC,CAAC;YACtF,CAAC;QACL,CAAC;IACL,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,wEAAwE,CAAC;IAE1G,OAAO,2BAA2B,QAAQ,2DAA2D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAC9H,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAAC,cAA6B,EAAE,QAAgB;IAC5E,IAAI,CAAC,cAAc;QAAE,OAAO,EAAE,CAAC;IAE/B,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,IAAI,WAAW,GAAG,EAAE,CAAC;IAErB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC7C,IAAI,SAAS,EAAE,CAAC;YAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAAC,SAAS;QAAC,CAAC;QACxD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACtE,IAAI,WAAW,IAAI,WAAW,EAAE,CAAC;YAC7B,SAAS,CAAC,IAAI,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,WAAW,IAAI,CAAC,CAAC;QACzE,CAAC;IACL,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEtC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;IAC5G,OAAO,wBAAwB,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAC1B,MAAqB,EACrB,SAAiB,EACjB,QAAgB,EAChB,GAA0C;IAE1C,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;IAC7C,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IAEpC,2CAA2C;IAC3C,MAAM,YAAY,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;IACnE,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACjE,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC3F,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE1D,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACvD,MAAM,EAAE,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,EAAE,GAAI,OAAkB,CAAC,WAAW,EAAE,CAAC;QAC7C,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAC9D,MAAM,OAAO,GAAI,OAAkB;iBAC9B,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;iBAC1C,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;iBACtB,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC5B,OAAO,CAAC,IAAI,CAAC,KAAK,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACzE,CAAC;IACL,CAAC;IAED,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,8CAA8C,CAAC;AACpG,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,SAAiB,EAAE,QAAgB;IACzD,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACpC,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAChG,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACjF,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IAE3E,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACtC,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;QAC1B,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,IAAY;IACnD,OAAO;QACH,IAAI;QACJ,IAAI;QACJ,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE;QAChD,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,CAAC;QACb,gBAAgB,EAAE,EAAE;QACpB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACtC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAC5B,kBAAiC,EACjC,QAAgB;IAEhB,IAAI,CAAC,kBAAkB;QAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;IAE1E,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,kBAAkB,CAAC,WAAW,EAAE,CAAC;IACjD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,QAAQ,GAAG,YAAY,CAAC;IAE5B,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,SAAS,GAAG,SAAS,CAAC;aAChF,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,SAAS,GAAG,OAAO,CAAC;aACnD,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS,GAAG,QAAQ,CAAC;aAClD,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,SAAS,GAAG,SAAS,CAAC;QAC5D,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1D,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzD,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpG,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,SAAS,GAAG,SAAS,CAAC;aAClD,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,SAAS,GAAG,SAAS,CAAC;aACvD,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,SAAS,GAAG,QAAQ,CAAC;QACzF,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtD,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9F,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;YAAE,SAAS,GAAG,YAAY,CAAC;aACxD,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,SAAS,GAAG,SAAS,CAAC;QAC5D,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1D,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,SAAS,GAAG,QAAQ,CAAC;QACrD,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACtE,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;QAAE,QAAQ,GAAG,YAAY,CAAC;IAC/F,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,QAAQ,GAAG,QAAQ,CAAC;IACpD,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;QAAE,QAAQ,GAAG,MAAM,CAAC;IAEnF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;AACnF,CAAC;AAED;;;GAGG;AACH,SAAS,2BAA2B,CAChC,QAAsB,EACtB,KAAkE,EAClE,UAAkB;IAElB,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IAE3D,QAAQ,CAAC,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QACxC,2DAA2D;QAC3D,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC7C,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAE3C,iCAAiC;QACjC,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC;QACpE,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;QACpF,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC;QAEvE,iCAAiC;QACjC,MAAM,QAAQ,GAAG,UAAU;aACtB,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC;aACrC,MAAM,CAAC,OAAO,CAAC,CAAC;QAErB,OAAO;YACH,EAAE;YACF,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;YAC/C,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,MAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,aAAsB,CAAC,CAAC,CAAC,MAAe;YAC5F,QAAQ;SACX,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,uBAAuB,CAC5B,QAAsB,EACtB,QAA0B,EAC1B,QAA6D;IAE7D,4BAA4B;IAC5B,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE,SAAS;QACrC,CAAC,CAAC,8BAA8B,QAAQ,CAAC,KAAK,CAAC,SAAS,qBAAqB,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI;QAC7L,CAAC,CAAC,EAAE,CAAC;IAET,0DAA0D;IAC1D,IAAI,cAAc,GAAG,EAAE,CAAC;IACxB,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,cAAc,GAAG,8GAA8G,CAAC;QAChI,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;YACzF,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;gBACtC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpI,CAAC,CAAC,GAAG,CAAC;YACV,cAAc,IAAI,KAAK,KAAK,CAAC,EAAE,MAAM,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,IAAI,KAAK,CAAC,MAAM,MAAM,QAAQ,MAAM,CAAC;QACrH,CAAC;QACD,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;QAChF,cAAc,IAAI,0BAA0B,SAAS,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC;IAC9F,CAAC;SAAM,CAAC;QACJ,cAAc,GAAG,iDAAiD,CAAC;IACvE,CAAC;IAED,OAAO,KAAK,QAAQ,CAAC,IAAI,4DAA4D,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,UAAU,+BAA+B,QAAQ,CAAC,gBAAgB,CAAC,MAAM,OAAO,OAAO,KAAK,cAAc,0BAA0B,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,qBAAqB,qBAAqB,QAAQ,CAAC,SAAS,IAAI,CAAC;AAC1Y,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAgB;IAC1C,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACpC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;IAC5H,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;IACpH,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;IACjG,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC;IACpG,OAAO,CAAC,iBAAiB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,iBAAiB,CAAC,IAAmB;IAChD,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IACnC,MAAM,SAAS,GAAI,MAAc,CAAC,cAA4C,CAAC;IAC/E,MAAM,QAAQ,GAAG,SAAS,EAAE,QAAQ,CAAC;IAErC,mFAAmF;IACnF,MAAM,eAAe,GAAG,QAAQ;QAC5B,CAAC,CAAC,uBAAuB,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,IAAI,EAAE,EAAE,EAAE,eAAe,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;QAChI,CAAC,CAAC,gDAAgD,CAAC;IAEvD,0EAA0E;IAC1E,MAAM,cAAc,GAAG,SAAS,EAAE,MAAM,KAAK,WAAW,CAAC;IAEzD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IACxD,OAAO,OAAO,CAAC;QACX,SAAS;QACT,WAAW,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,OAAO;QAC7C,UAAU,EAAE,eAAe;QAC3B,eAAe,EAAE,cAAc;KAClC,CAAC,CAAC;AACP,CAAC"}
@@ -1,24 +1,25 @@
1
1
  /**
2
- * Specialist Phase Handler (v6.1)
2
+ * Specialist Phase Handler (v10.0)
3
3
  *
4
- * Handler central do novo fluxo de onboarding unificado.
4
+ * Handler central do fluxo de fases de documento.
5
5
  * Gerencia o ciclo: specialist_active → collecting → generating → validating → approved
6
6
  *
7
- * v6.1 Fixes:
8
- * - FIX: PRD validation score (was always 15/100 due to regex/escape bug)
9
- * - FIX: prazo_mvp alias mapping
10
- * - FIX: Infinite retry loop (max 3 attempts)
11
- * - FIX: File-based PRD validation (eliminates JSON escape issues)
12
- * - FIX: Reduced template repetition in context
13
- * - FIX: Standardized output with AI instruction markers
14
- * - FIX: Resource loading instructions in output
7
+ * v10.0: Generalizado para aceitar PhaseConfig dinâmico (qualquer fase, não apenas PRD).
8
+ * Quando phaseConfig é fornecido, usa dados da skill. Sem config, mantém comportamento v9 (PRD).
9
+ *
10
+ * v6.1 Fixes mantidos:
11
+ * - FIX: PRD validation score, prazo_mvp alias, retry limit
12
+ * - FIX: File-based validation, reduced template repetition
15
13
  */
16
14
  import type { ToolResult, EstadoProjeto } from "../types/index.js";
15
+ import type { PhaseConfig } from "../types/phase-config.js";
17
16
  interface SpecialistPhaseArgs {
18
17
  estado: EstadoProjeto;
19
18
  diretorio: string;
20
19
  respostas?: Record<string, unknown>;
21
20
  entregavel?: string;
21
+ /** v10.0: Config dinâmico da fase. Se presente, usa dados da skill em vez de hardcodes PRD. */
22
+ phaseConfig?: PhaseConfig;
22
23
  }
23
24
  /**
24
25
  * Entry point do specialist phase handler.
@@ -1 +1 @@
1
- {"version":3,"file":"specialist-phase-handler.d.ts","sourceRoot":"","sources":["../../src/handlers/specialist-phase-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AA6DnE,UAAU,mBAAmB;IACzB,MAAM,EAAE,aAAa,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAGD;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,CA4C1F;AAokBD,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"specialist-phase-handler.d.ts","sourceRoot":"","sources":["../../src/handlers/specialist-phase-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AA4D5D,UAAU,mBAAmB;IACzB,MAAM,EAAE,aAAa,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+FAA+F;IAC/F,WAAW,CAAC,EAAE,WAAW,CAAC;CAC7B;AAGD;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,CAqD1F;AA0qBD,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC"}
@@ -1,17 +1,15 @@
1
1
  /**
2
- * Specialist Phase Handler (v6.1)
2
+ * Specialist Phase Handler (v10.0)
3
3
  *
4
- * Handler central do novo fluxo de onboarding unificado.
4
+ * Handler central do fluxo de fases de documento.
5
5
  * Gerencia o ciclo: specialist_active → collecting → generating → validating → approved
6
6
  *
7
- * v6.1 Fixes:
8
- * - FIX: PRD validation score (was always 15/100 due to regex/escape bug)
9
- * - FIX: prazo_mvp alias mapping
10
- * - FIX: Infinite retry loop (max 3 attempts)
11
- * - FIX: File-based PRD validation (eliminates JSON escape issues)
12
- * - FIX: Reduced template repetition in context
13
- * - FIX: Standardized output with AI instruction markers
14
- * - FIX: Resource loading instructions in output
7
+ * v10.0: Generalizado para aceitar PhaseConfig dinâmico (qualquer fase, não apenas PRD).
8
+ * Quando phaseConfig é fornecido, usa dados da skill. Sem config, mantém comportamento v9 (PRD).
9
+ *
10
+ * v6.1 Fixes mantidos:
11
+ * - FIX: PRD validation score, prazo_mvp alias, retry limit
12
+ * - FIX: File-based validation, reduced template repetition
15
13
  */
16
14
  import { formatResponse, formatError } from "../utils/response-formatter.js";
17
15
  import { serializarEstado } from "../state/storage.js";
@@ -23,9 +21,9 @@ import { getFaseComStitch } from "../flows/types.js";
23
21
  import { normalizeFieldKey, getRequiredFields } from "./field-normalizer.js";
24
22
  import { calculatePrdScore, calculatePrdScoreDetailed, identifyPrdGaps, normalizePrdContent } from "./prd-scorer.js";
25
23
  import { loadCollectingContext, formatMissingFieldsByBlock, truncateValue, buildCollectionPrompt } from "./specialist-formatters.js";
26
- /** Maximum number of automatic PRD validation retries before requiring user approval */
27
- const MAX_PRD_VALIDATION_RETRIES = 3;
28
- /** Paths padrão para saída de documentos — a IA DEVE usar estes paths */
24
+ /** Maximum number of automatic validation retries before requiring user approval */
25
+ const MAX_VALIDATION_RETRIES = 3;
26
+ /** Paths padrão para saída de documentos — fallback para PRD (v9 compat) */
29
27
  const PRD_OUTPUT_PATHS = {
30
28
  primary: 'docs/01-produto/PRD.md',
31
29
  draft: '.maestro/entregaveis/prd-draft.md',
@@ -74,14 +72,22 @@ export async function handleSpecialistPhase(args) {
74
72
  };
75
73
  }
76
74
  const sp = onboarding.specialistPhase;
75
+ // v10.0: Resolver output path dinâmico (PhaseConfig ou fallback PRD)
76
+ const outputPath = args.phaseConfig
77
+ ? `${diretorio}/${args.phaseConfig.outputPath}`
78
+ : getPrdOutputPath(diretorio);
79
+ const draftPath = args.phaseConfig
80
+ ? `${diretorio}/.maestro/entregaveis/${args.phaseConfig.outputFilename}`
81
+ : getPrdDraftPath(diretorio);
82
+ const specialistName = args.phaseConfig?.specialistName || 'Gestão de Produto';
77
83
  switch (sp.status) {
78
84
  case 'active':
79
85
  case 'collecting':
80
86
  return handleCollecting(args, onboarding, sp);
81
87
  case 'generating': {
82
88
  // v7.1: File-first — verificar disco OU param entregavel
83
- const hasPrdOnDisk = existsSync(getPrdOutputPath(diretorio)) || existsSync(getPrdDraftPath(diretorio));
84
- if (args.entregavel || hasPrdOnDisk) {
89
+ const hasDocOnDisk = existsSync(outputPath) || existsSync(draftPath);
90
+ if (args.entregavel || hasDocOnDisk) {
85
91
  sp.status = 'validating';
86
92
  return handleValidating(args, onboarding, sp);
87
93
  }
@@ -100,12 +106,19 @@ export async function handleSpecialistPhase(args) {
100
106
  }
101
107
  /**
102
108
  * Handler: collecting — Recebe respostas do usuário e acumula dados
109
+ * v10.0: Usa PhaseConfig.collectFields quando disponível, fallback para getRequiredFields(mode).
103
110
  */
104
111
  async function handleCollecting(args, onboarding, sp) {
105
112
  const { estado, diretorio, respostas } = args;
106
113
  const mode = onboarding.mode || 'balanced';
114
+ const config = args.phaseConfig;
115
+ const specialistLabel = config?.specialistName || 'Gestão de Produto';
107
116
  // Se não há respostas, mostrar o que falta
108
117
  if (!respostas || Object.keys(respostas).length === 0) {
118
+ // v10.0: Se temos PhaseConfig com collectFields, usar diretamente
119
+ if (config && config.collectFields.length > 0) {
120
+ return buildDynamicCollectionPrompt(estado, diretorio, sp, config, resolveIDEForProject);
121
+ }
109
122
  return buildCollectionPrompt(estado, diretorio, sp, mode, resolveIDEForProject);
110
123
  }
111
124
  // Acumular dados recebidos (com fuzzy matching de campos — Sprint 5)
@@ -119,19 +132,19 @@ async function handleCollecting(args, onboarding, sp) {
119
132
  sp.status = 'collecting';
120
133
  onboarding.totalInteractions++;
121
134
  onboarding.lastInteractionAt = new Date().toISOString();
122
- // Verificar se tem dados suficientes para gerar PRD
123
- const required = getRequiredFields(mode);
135
+ // v10.0: Usar campos da PhaseConfig se disponíveis, senão fallback PRD
136
+ const required = (config && config.collectFields.length > 0)
137
+ ? config.collectFields.filter(f => f.required).map(f => ({ id: f.id, label: f.label, block: f.block, hint: f.hint, example: f.example || '', required: f.required, modes: ['economy', 'balanced', 'quality'] }))
138
+ : getRequiredFields(mode);
124
139
  const missing = required.filter(f => !sp.collectedData[f.id]);
125
140
  const collected = required.filter(f => sp.collectedData[f.id]);
126
141
  if (missing.length === 0) {
127
142
  // Todos os campos obrigatórios preenchidos
128
143
  if (args.entregavel) {
129
- // Entregável já presente → skip generating, ir direto para validating
130
144
  sp.status = 'validating';
131
145
  await persistState(estado, onboarding, diretorio);
132
146
  return handleValidating(args, onboarding, sp);
133
147
  }
134
- // Sem entregável → gerar PRD
135
148
  sp.status = 'generating';
136
149
  await persistState(estado, onboarding, diretorio);
137
150
  return handleGenerating(args, onboarding, sp);
@@ -139,14 +152,20 @@ async function handleCollecting(args, onboarding, sp) {
139
152
  // Ainda faltam campos — pedir mais informações
140
153
  await persistState(estado, onboarding, diretorio);
141
154
  const progressPct = Math.round((collected.length / required.length) * 100);
142
- // v6.0 (P11): next_action com parâmetros COMPLETOS e EXATOS
143
155
  const missingTemplate = {};
144
156
  for (const f of missing) {
145
157
  missingTemplate[f.id] = `<${f.label}>`;
146
158
  }
159
+ // v10.0: Persona dinâmica da config ou fallback
160
+ const persona = config?.persona || {
161
+ name: 'Gestão de Produto',
162
+ tone: 'Estratégico e orientado ao usuário',
163
+ expertise: ['product discovery', 'lean startup', 'user stories', 'MVP definition'],
164
+ instructions: 'Conduza a coleta de forma conversacional. PERGUNTE — NÃO invente.',
165
+ };
147
166
  return {
148
167
  content: formatResponse({
149
- titulo: "🧠 Especialista: Gestão de Produto",
168
+ titulo: `🧠 Especialista: ${specialistLabel}`,
150
169
  resumo: `Dados recebidos! ${collected.length}/${required.length} campos preenchidos (${progressPct}%).`,
151
170
  dados: {
152
171
  "Campos preenchidos": `${collected.length}/${required.length}`,
@@ -163,16 +182,12 @@ ${collected.map(f => `✅ **${f.label}**: ${truncateValue(sp.collectedData[f.id]
163
182
  ${formatMissingFieldsByBlock(missing, mode)}
164
183
 
165
184
  ⚠️ REGRA CRÍTICA: Os dados devem vir DIRETAMENTE do usuário.
166
- Se o usuário pedir "crie os dados", "invente para teste" ou "preencha para mim":
167
- → Responda: "Preciso que VOCÊ me conte sobre o seu produto. Mesmo que seja simples, suas respostas reais vão gerar um PRD muito melhor do que dados inventados."
168
- → Reformule as perguntas de forma mais simples se o usuário parecer travado.
169
- → Ofereça exemplos para inspirar, mas NÃO use os exemplos como resposta.
185
+ NÃO invente dados. Se o usuário não souber, marque como "A definir".
170
186
 
171
187
  ## 📍 Onde Estamos
172
- ✅ Setup → 🔄 Coleta (${progressPct}%) → ⏳ Geração PRD → ⏳ Validação → ⏳ Aprovação
188
+ ✅ Setup → 🔄 Coleta (${progressPct}%) → ⏳ Geração → ⏳ Validação → ⏳ Aprovação
173
189
 
174
- ⚠️ Para avançar, SEMPRE use: \`executar({acao: "avancar"})\`
175
- ⚠️ NUNCA use: \`maestro({acao: "status"})\` para tentar avançar`,
190
+ ⚠️ Para avançar, SEMPRE use: \`executar({acao: "avancar"})\``,
176
191
  proximo_passo: {
177
192
  tool: "executar",
178
193
  descricao: `Enviar respostas dos campos faltantes`,
@@ -184,19 +199,15 @@ Se o usuário pedir "crie os dados", "invente para teste" ou "preencha para mim"
184
199
  next_action: {
185
200
  tool: "executar",
186
201
  description: `Enviar respostas: ${missing.map(f => f.label).join(', ')}`,
187
- args_template: {
188
- diretorio,
189
- acao: "avancar",
190
- respostas: missingTemplate,
191
- },
202
+ args_template: { diretorio, acao: "avancar", respostas: missingTemplate },
192
203
  requires_user_input: true,
193
204
  user_prompt: `Responda: ${missing.map(f => f.label).join(', ')}`,
194
205
  },
195
206
  specialist_persona: {
196
- name: "Gestão de Produto",
197
- tone: "Estratégico e orientado ao usuário",
198
- expertise: ["product discovery", "lean startup", "user stories", "MVP definition"],
199
- instructions: "Conduza a coleta de forma conversacional focada em PRODUTO. PERGUNTE — NÃO invente. Faça follow-up quando respostas forem vagas (< 20 palavras).",
207
+ name: persona.name,
208
+ tone: persona.tone,
209
+ expertise: persona.expertise,
210
+ instructions: persona.instructions,
200
211
  },
201
212
  progress: {
202
213
  current_phase: "specialist_collecting",
@@ -207,25 +218,114 @@ Se o usuário pedir "crie os dados", "invente para teste" ou "preencha para mim"
207
218
  };
208
219
  }
209
220
  /**
210
- * Handler: generating Gera PRD draft a partir dos dados coletados
221
+ * v10.0: Prompt de coleta dinâmico usando PhaseConfig.collectFields.
222
+ * Usado quando a skill tem campos de coleta definidos.
223
+ */
224
+ async function buildDynamicCollectionPrompt(estado, diretorio, sp, config, resolveIDE) {
225
+ const allFields = config.collectFields;
226
+ const requiredFields = allFields.filter(f => f.required);
227
+ const missing = requiredFields.filter(f => !sp.collectedData[f.id]);
228
+ const collected = requiredFields.filter(f => sp.collectedData[f.id]);
229
+ const missingTemplate = {};
230
+ for (const f of missing) {
231
+ missingTemplate[f.id] = `<${f.label}>`;
232
+ }
233
+ const collectedInfo = collected.length > 0
234
+ ? `\nCampos já coletados:\n${collected.map(f => `✅ **${f.label}**: ${truncateValue(sp.collectedData[f.id])}`).join('\n')}`
235
+ : '';
236
+ // Agrupar campos faltantes por bloco
237
+ const blockMap = {};
238
+ for (const f of missing) {
239
+ if (!blockMap[f.block])
240
+ blockMap[f.block] = [];
241
+ blockMap[f.block].push(f);
242
+ }
243
+ let missingMd = '## Campos que FALTAM (pergunte ao usuário):\n\n';
244
+ for (const [block, fields] of Object.entries(blockMap)) {
245
+ missingMd += `### ${block}\n\n`;
246
+ for (const f of fields) {
247
+ missingMd += `❌ **${f.label}**\n _${f.hint}_\n\n`;
248
+ }
249
+ }
250
+ const persona = config.persona || { name: config.specialistName, tone: 'Profissional', expertise: [], instructions: '' };
251
+ return {
252
+ content: formatResponse({
253
+ titulo: `🧠 Especialista: ${config.specialistName}`,
254
+ resumo: `Coleta de informações. ${collected.length}/${requiredFields.length} campos preenchidos.`,
255
+ instrucoes: `⚠️ OBRIGATÓRIO: Pergunte ao usuário os campos abaixo. NÃO invente dados.
256
+
257
+ ${loadCollectingContext(sp.skillName, resolveIDE(estado, diretorio), diretorio)}
258
+ ${collectedInfo}
259
+
260
+ ${missingMd}
261
+
262
+ ⚠️ REGRA CRÍTICA: Os dados devem vir DIRETAMENTE do usuário.
263
+
264
+ Após coletar as respostas, EXECUTE:
265
+ \`\`\`json
266
+ executar({
267
+ "diretorio": "${diretorio}",
268
+ "acao": "avancar",
269
+ "respostas": ${JSON.stringify(missingTemplate, null, 4)}
270
+ })
271
+ \`\`\``,
272
+ proximo_passo: {
273
+ tool: "executar",
274
+ descricao: "Enviar respostas coletadas do usuário",
275
+ args: `{ "diretorio": "${diretorio}", "acao": "avancar", "respostas": ${JSON.stringify(missingTemplate)} }`,
276
+ requer_input_usuario: true,
277
+ prompt_usuario: `Responda: ${missing.map(f => f.label).join(', ')}`,
278
+ },
279
+ }),
280
+ next_action: {
281
+ tool: "executar",
282
+ description: `Coletar e enviar: ${missing.map(f => f.label).join(', ')}`,
283
+ args_template: { diretorio, acao: "avancar", respostas: missingTemplate },
284
+ requires_user_input: true,
285
+ user_prompt: `Pergunte ao usuário: ${missing.map(f => f.label).join(', ')}`,
286
+ },
287
+ specialist_persona: {
288
+ name: persona.name,
289
+ tone: persona.tone,
290
+ expertise: persona.expertise,
291
+ instructions: persona.instructions,
292
+ },
293
+ progress: {
294
+ current_phase: "specialist_active",
295
+ total_phases: 5,
296
+ completed_phases: 1,
297
+ percentage: 20,
298
+ },
299
+ };
300
+ }
301
+ /**
302
+ * Handler: generating — Gera entregável a partir dos dados coletados
303
+ * v10.0: Usa PhaseConfig para outputPath e specialistName dinâmicos.
211
304
  */
212
305
  async function handleGenerating(args, onboarding, sp) {
213
306
  const { estado, diretorio } = args;
214
- const mode = onboarding.mode || 'balanced';
215
- // Montar contexto para geração do PRD
307
+ const config = args.phaseConfig;
216
308
  const collectedSummary = Object.entries(sp.collectedData)
217
309
  .map(([key, value]) => `- **${key}**: ${value}`)
218
310
  .join('\n');
219
- // v7.0: Resolver paths de skills adaptados para a IDE do projeto
220
- const skillPaths = getSkillPathForIDE(sp.skillName, estado, diretorio);
311
+ // v10.0: Output path dinâmico
312
+ const outputRelPath = config?.outputPath || PRD_OUTPUT_PATHS.primary;
313
+ const docLabel = config?.faseName || 'PRD';
314
+ const specialistLabel = config?.specialistName || 'Gestão de Produto';
221
315
  sp.status = 'generating';
222
316
  await persistState(estado, onboarding, diretorio);
317
+ const persona = config?.persona || {
318
+ name: 'Gestão de Produto',
319
+ tone: 'Completo e estruturado',
320
+ expertise: ['PRDs', 'especificações', 'escopo', 'métricas de sucesso'],
321
+ instructions: 'Gere o documento usando EXATAMENTE o template fornecido. Preencha com dados REAIS coletados. Marque gaps como "A definir".',
322
+ };
223
323
  return {
224
324
  content: formatResponse({
225
- titulo: "📝 Geração do PRD",
226
- resumo: "Todos os dados foram coletados. Gerando PRD draft usando o template do especialista.",
325
+ titulo: `📝 Geração: ${docLabel}`,
326
+ resumo: `Todos os dados foram coletados. Gerando ${docLabel} usando o template do especialista.`,
227
327
  instrucoes: `🤖 **AÇÃO AUTOMÁTICA REQUERIDA:**
228
- Você DEVE gerar o PRD e salvá-lo no disco IMEDIATAMENTE, sem esperar comando do usuário.
328
+ Você DEVE gerar o documento e salvá-lo no disco IMEDIATAMENTE, sem esperar comando do usuário.
229
329
 
230
330
  ## Dados Coletados do Usuário
231
331
 
@@ -239,7 +339,7 @@ ${formatSkillHydrationCommand(sp.skillName, resolveIDEForProject(estado, diretor
239
339
  1. Preencha CADA seção do template com os dados coletados
240
340
  2. Se um dado não foi coletado, marque como "A definir com o usuário"
241
341
  3. NÃO invente números, métricas ou dados que o usuário não forneceu
242
- 4. **SALVE O PRD** no arquivo \`${PRD_OUTPUT_PATHS.primary}\`
342
+ 4. **SALVE** no arquivo \`${outputRelPath}\`
243
343
  5. Após salvar, avance usando:
244
344
 
245
345
  \`\`\`json
@@ -254,13 +354,12 @@ executar({
254
354
  🤖 **NÃO ESPERE** o usuário dizer "pode seguir" ou "avançar". Salve o arquivo e execute a tool AGORA.
255
355
 
256
356
  ## 📍 Onde Estamos
257
- ✅ Setup → ✅ Coleta → 🔄 Geração PRD → ⏳ Validação → ⏳ Aprovação
357
+ ✅ Setup → ✅ Coleta → 🔄 Geração → ⏳ Validação → ⏳ Aprovação
258
358
 
259
- ⚠️ Para avançar, SEMPRE use: \`executar({acao: "avancar"})\`
260
- ⚠️ NUNCA use: \`maestro({acao: "status"})\` para tentar avançar`,
359
+ ⚠️ Para avançar, SEMPRE use: \`executar({acao: "avancar"})\``,
261
360
  proximo_passo: {
262
361
  tool: "executar",
263
- descricao: "Salvar PRD no disco e avançar para validação",
362
+ descricao: `Salvar ${docLabel} no disco e avançar para validação`,
264
363
  args: `{ "diretorio": "${diretorio}", "acao": "avancar" }`,
265
364
  requer_input_usuario: false,
266
365
  auto_execute: true,
@@ -268,19 +367,16 @@ executar({
268
367
  }),
269
368
  next_action: {
270
369
  tool: "executar",
271
- description: "Salvar PRD em docs/01-produto/PRD.md e avançar",
272
- args_template: {
273
- diretorio,
274
- acao: "avancar",
275
- },
370
+ description: `Salvar ${docLabel} em ${outputRelPath} e avançar`,
371
+ args_template: { diretorio, acao: "avancar" },
276
372
  requires_user_input: false,
277
373
  auto_execute: true,
278
374
  },
279
375
  specialist_persona: {
280
- name: "Gestão de Produto",
281
- tone: "Completo e estruturado",
282
- expertise: ["PRDs", "especificações", "escopo", "métricas de sucesso"],
283
- instructions: "Gere o PRD usando EXATAMENTE o template fornecido. Preencha com dados REAIS coletados. Marque gaps como 'A definir'.",
376
+ name: persona.name,
377
+ tone: persona.tone,
378
+ expertise: persona.expertise,
379
+ instructions: persona.instructions,
284
380
  },
285
381
  progress: {
286
382
  current_phase: "specialist_generating",
@@ -393,7 +489,7 @@ executar({
393
489
  return handleApproved(args, onboarding, sp);
394
490
  }
395
491
  // v6.1 (Bug #3): Check retry limit
396
- const retriesExhausted = sp.validationAttempts >= MAX_PRD_VALIDATION_RETRIES;
492
+ const retriesExhausted = sp.validationAttempts >= MAX_VALIDATION_RETRIES;
397
493
  // PRD precisa de melhorias
398
494
  const { details } = calculatePrdScoreDetailed(entregavel);
399
495
  const gaps = identifyPrdGaps(entregavel, onboarding.mode);
@@ -409,7 +505,7 @@ executar({
409
505
  resumo: `PRD validado com score ${score}/100 após ${sp.validationAttempts} tentativas. Requer decisão do usuário.`,
410
506
  dados: {
411
507
  "Score": `${score}/100`,
412
- "Tentativas": `${sp.validationAttempts}/${MAX_PRD_VALIDATION_RETRIES}`,
508
+ "Tentativas": `${sp.validationAttempts}/${MAX_VALIDATION_RETRIES}`,
413
509
  "Status": "⚠️ Limite de tentativas atingido",
414
510
  "Mínimo": "70/100",
415
511
  },
@@ -441,14 +537,14 @@ executar({
441
537
  return {
442
538
  content: formatResponse({
443
539
  titulo: "📊 Validação do PRD",
444
- resumo: `PRD recebido. Score: ${score}/100. Tentativa ${sp.validationAttempts}/${MAX_PRD_VALIDATION_RETRIES}.`,
540
+ resumo: `PRD recebido. Score: ${score}/100. Tentativa ${sp.validationAttempts}/${MAX_VALIDATION_RETRIES}.`,
445
541
  dados: {
446
542
  "Score": `${score}/100`,
447
- "Tentativa": `${sp.validationAttempts}/${MAX_PRD_VALIDATION_RETRIES}`,
543
+ "Tentativa": `${sp.validationAttempts}/${MAX_VALIDATION_RETRIES}`,
448
544
  "Status": "⚠️ Precisa de melhorias",
449
545
  "Mínimo": "70/100",
450
546
  },
451
- instrucoes: `## 📊 Detalhamento do Score\n\n${scoreBreakdown}\n\n${gaps.length > 0 ? `## Gaps Identificados\n\n${gaps.map(g => `- ${g}`).join('\n')}\n\n` : ''}🤖 **AÇÃO REQUERIDA (tentativa ${sp.validationAttempts + 1}/${MAX_PRD_VALIDATION_RETRIES}):**\nMelhore o PRD nos pontos acima.\n\n1. **Edite o arquivo** \`${PRD_OUTPUT_PATHS.primary}\` com as melhorias\n2. Após salvar, avance:\n\n\`\`\`json\nexecutar({\n "diretorio": "${diretorio}",\n "acao": "avancar"\n})\n\`\`\`\n\n⚠️ **NÃO passe o conteúdo via entregavel.** O MCP lê direto do arquivo.\n\n## 📍 Onde Estamos\n✅ Setup → ✅ Coleta → ✅ Geração PRD → 🔄 Validação → ⏳ Aprovação`,
547
+ instrucoes: `## 📊 Detalhamento do Score\n\n${scoreBreakdown}\n\n${gaps.length > 0 ? `## Gaps Identificados\n\n${gaps.map(g => `- ${g}`).join('\n')}\n\n` : ''}🤖 **AÇÃO REQUERIDA (tentativa ${sp.validationAttempts + 1}/${MAX_VALIDATION_RETRIES}):**\nMelhore o PRD nos pontos acima.\n\n1. **Edite o arquivo** \`${PRD_OUTPUT_PATHS.primary}\` com as melhorias\n2. Após salvar, avance:\n\n\`\`\`json\nexecutar({\n "diretorio": "${diretorio}",\n "acao": "avancar"\n})\n\`\`\`\n\n⚠️ **NÃO passe o conteúdo via entregavel.** O MCP lê direto do arquivo.\n\n## 📍 Onde Estamos\n✅ Setup → ✅ Coleta → ✅ Geração PRD → 🔄 Validação → ⏳ Aprovação`,
452
548
  proximo_passo: {
453
549
  tool: "executar",
454
550
  descricao: "Salvar PRD melhorado no disco e avançar",
@@ -1 +1 @@
1
- {"version":3,"file":"specialist-phase-handler.js","sourceRoot":"","sources":["../../src/handlers/specialist-phase-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"specialist-phase-handler.js","sourceRoot":"","sources":["../../src/handlers/specialist-phase-handler.ts"],"names":[],"mappings":"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"}