claude-flow-novice 1.6.3 → 1.6.5

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 (290) hide show
  1. package/.claude/commands/parse-epic.js +180 -0
  2. package/.claude/settings.json +12 -2
  3. package/.claude/settings.local.json +4 -2
  4. package/.claude-flow-novice/dist/mcp/mcp-server-novice.js +37 -2
  5. package/.claude-flow-novice/dist/mcp/transports/base.js +5 -0
  6. package/.claude-flow-novice/dist/mcp/transports/base.js.map +1 -0
  7. package/.claude-flow-novice/dist/mcp/transports/http.js +414 -0
  8. package/.claude-flow-novice/dist/mcp/transports/http.js.map +1 -0
  9. package/.claude-flow-novice/dist/mcp/transports/stdio.js +217 -0
  10. package/.claude-flow-novice/dist/mcp/transports/stdio.js.map +1 -0
  11. package/.claude-flow-novice/dist/src/cli/commands/parse-epic.js +129 -0
  12. package/.claude-flow-novice/dist/src/cli/commands/parse-epic.js.map +1 -0
  13. package/.claude-flow-novice/dist/src/cli/index.js +3 -0
  14. package/.claude-flow-novice/dist/src/cli/index.js.map +1 -1
  15. package/.claude-flow-novice/dist/src/cli/utils/epic-parser.js +266 -0
  16. package/.claude-flow-novice/dist/src/cli/utils/epic-parser.js.map +1 -0
  17. package/.claude-flow-novice/dist/src/communication/message-bus.js +105 -2
  18. package/.claude-flow-novice/dist/src/communication/message-bus.js.map +1 -1
  19. package/.claude-flow-novice/dist/src/coordination/adapters/v1-coordinator-adapter.js +1 -1
  20. package/.claude-flow-novice/dist/src/coordination/adapters/v1-coordinator-adapter.js.map +1 -1
  21. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/cache/artifact-cache-optimizer.js +632 -0
  22. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/cache/artifact-cache-optimizer.js.map +1 -0
  23. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/cache/index.js +11 -0
  24. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/cache/index.js.map +1 -0
  25. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/checkpoints/checkpoint-compressor.js +318 -0
  26. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/checkpoints/checkpoint-compressor.js.map +1 -0
  27. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/completion-detector.js +234 -0
  28. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/completion-detector.js.map +1 -0
  29. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/hierarchical-detector.js +347 -0
  30. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/hierarchical-detector.js.map +1 -0
  31. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/index.js +13 -0
  32. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/index.js.map +1 -0
  33. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/lamport-clock.js +173 -0
  34. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/lamport-clock.js.map +1 -0
  35. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/mesh-detector.js +526 -0
  36. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/mesh-detector.js.map +1 -0
  37. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/sdk-completion-detector.js +443 -0
  38. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/sdk-completion-detector.js.map +1 -0
  39. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/swarm-shutdown.js +366 -0
  40. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/swarm-shutdown.js.map +1 -0
  41. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinator-factory.js +287 -0
  42. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinator-factory.js.map +1 -0
  43. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/cascading-shutdown.example.js +364 -0
  44. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/cascading-shutdown.example.js.map +1 -0
  45. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/cascading-shutdown.js +492 -0
  46. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/cascading-shutdown.js.map +1 -0
  47. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/hierarchical-coordinator.js +786 -0
  48. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/hierarchical-coordinator.js.map +1 -0
  49. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/index.js +16 -0
  50. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/index.js.map +1 -0
  51. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/parent-child-manager.js +342 -0
  52. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/parent-child-manager.js.map +1 -0
  53. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/swarm-coordinator-v2.js +601 -0
  54. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/swarm-coordinator-v2.js.map +1 -0
  55. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/agent-state.js +9 -0
  56. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/agent-state.js.map +1 -0
  57. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dead-letter-queue.js +413 -0
  58. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dead-letter-queue.js.map +1 -0
  59. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dependency-graph.js +471 -0
  60. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dependency-graph.js.map +1 -0
  61. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dependency-node.js +379 -0
  62. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dependency-node.js.map +1 -0
  63. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dependency-resolver.js +335 -0
  64. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dependency-resolver.js.map +1 -0
  65. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/help-request-metrics.js +211 -0
  66. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/help-request-metrics.js.map +1 -0
  67. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/index.js +33 -0
  68. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/index.js.map +1 -0
  69. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/message-broker.js +920 -0
  70. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/message-broker.js.map +1 -0
  71. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/message-router.js +385 -0
  72. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/message-router.js.map +1 -0
  73. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/message.js +138 -0
  74. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/message.js.map +1 -0
  75. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/resource-manager-safe.js +478 -0
  76. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/resource-manager-safe.js.map +1 -0
  77. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/state-machine-config.js +358 -0
  78. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/state-machine-config.js.map +1 -0
  79. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/state-machine.js +588 -0
  80. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/state-machine.js.map +1 -0
  81. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/state-transition.js +153 -0
  82. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/state-transition.js.map +1 -0
  83. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/task-scheduler.js +360 -0
  84. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/task-scheduler.js.map +1 -0
  85. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/topic-manager.js +337 -0
  86. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/topic-manager.js.map +1 -0
  87. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/deadlock/deadlock-detector.js +424 -0
  88. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/deadlock/deadlock-detector.js.map +1 -0
  89. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/deadlock/index.js +9 -0
  90. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/deadlock/index.js.map +1 -0
  91. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/deadlock/resource-manager.js +669 -0
  92. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/deadlock/resource-manager.js.map +1 -0
  93. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/artifact-storage.js +451 -0
  94. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/artifact-storage.js.map +1 -0
  95. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/cycle-detector.js +271 -0
  96. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/cycle-detector.js.map +1 -0
  97. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/dependency-graph.js +335 -0
  98. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/dependency-graph.js.map +1 -0
  99. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/dependency-manager.js +439 -0
  100. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/dependency-manager.js.map +1 -0
  101. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/dependency-request.js +92 -0
  102. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/dependency-request.js.map +1 -0
  103. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/index.js +21 -0
  104. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/index.js.map +1 -0
  105. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/topological-sort.js +223 -0
  106. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/topological-sort.js.map +1 -0
  107. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-coordinator.js +436 -0
  108. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-coordinator.js.map +1 -0
  109. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-matcher.js +278 -0
  110. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-matcher.js.map +1 -0
  111. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-request-handler.js +317 -0
  112. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-request-handler.js.map +1 -0
  113. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-request.js +273 -0
  114. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-request.js.map +1 -0
  115. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/index.js +15 -0
  116. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/index.js.map +1 -0
  117. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/waiting-agent-pool.js +512 -0
  118. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/waiting-agent-pool.js.map +1 -0
  119. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/index.js +67 -0
  120. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/index.js.map +1 -0
  121. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/help-deadlock-integration.js +557 -0
  122. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/help-deadlock-integration.js.map +1 -0
  123. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/index.js +14 -0
  124. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/index.js.map +1 -0
  125. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/message-bus-completion-integration.example.js +212 -0
  126. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/message-bus-completion-integration.example.js.map +1 -0
  127. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/message-bus-completion-integration.js +552 -0
  128. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/message-bus-completion-integration.js.map +1 -0
  129. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/state-machine-integration.js +635 -0
  130. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/state-machine-integration.js.map +1 -0
  131. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/IArtifactStorage.js +28 -0
  132. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/IArtifactStorage.js.map +1 -0
  133. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/ICoordinator.js +9 -0
  134. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/ICoordinator.js.map +1 -0
  135. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/ISessionStore.js +25 -0
  136. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/ISessionStore.js.map +1 -0
  137. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/index.js +14 -0
  138. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/index.js.map +1 -0
  139. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/artifact-adapter.js +308 -0
  140. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/artifact-adapter.js.map +1 -0
  141. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/completion-storage.js +439 -0
  142. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/completion-storage.js.map +1 -0
  143. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/dependency-graph-storage.js +540 -0
  144. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/dependency-graph-storage.js.map +1 -0
  145. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/dependency-storage.js +367 -0
  146. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/dependency-storage.js.map +1 -0
  147. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/index.js +14 -0
  148. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/index.js.map +1 -0
  149. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/message-storage.js +518 -0
  150. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/message-storage.js.map +1 -0
  151. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/state-storage.js +377 -0
  152. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/state-storage.js.map +1 -0
  153. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channel.js +371 -0
  154. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channel.js.map +1 -0
  155. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/dependency-channel.js +355 -0
  156. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/dependency-channel.js.map +1 -0
  157. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/help-channel.js +424 -0
  158. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/help-channel.js.map +1 -0
  159. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/index.js +16 -0
  160. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/index.js.map +1 -0
  161. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/state-channel.js +295 -0
  162. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/state-channel.js.map +1 -0
  163. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/task-channel.js +411 -0
  164. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/task-channel.js.map +1 -0
  165. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/index.js +14 -0
  166. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/index.js.map +1 -0
  167. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/message-bus.js +387 -0
  168. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/message-bus.js.map +1 -0
  169. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/message-persistence.js +589 -0
  170. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/message-persistence.js.map +1 -0
  171. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/message-router.js +444 -0
  172. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/message-router.js.map +1 -0
  173. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/artifact-storage.js +560 -0
  174. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/artifact-storage.js.map +1 -0
  175. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/background-orchestrator.js +335 -0
  176. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/background-orchestrator.js.map +1 -0
  177. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/bash-output-monitor.js +104 -0
  178. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/bash-output-monitor.js.map +1 -0
  179. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/checkpoint-manager.js +847 -0
  180. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/checkpoint-manager.js.map +1 -0
  181. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/help-coordinator.js +470 -0
  182. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/help-coordinator.js.map +1 -0
  183. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/hierarchical-background-integration.js +450 -0
  184. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/hierarchical-background-integration.js.map +1 -0
  185. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/index.js +13 -0
  186. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/index.js.map +1 -0
  187. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/message-bus-integration.js +625 -0
  188. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/message-bus-integration.js.map +1 -0
  189. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/multi-level-control.js +545 -0
  190. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/multi-level-control.js.map +1 -0
  191. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/query-controller.js +740 -0
  192. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/query-controller.js.map +1 -0
  193. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/query-message-integration.js +415 -0
  194. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/query-message-integration.js.map +1 -0
  195. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/session-pool-optimizer.js +615 -0
  196. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/session-pool-optimizer.js.map +1 -0
  197. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/state-machine-integration.js +547 -0
  198. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/state-machine-integration.js.map +1 -0
  199. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/state-sdk-integration.js +342 -0
  200. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/state-sdk-integration.js.map +1 -0
  201. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/security/payload-validator.js +259 -0
  202. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/security/payload-validator.js.map +1 -0
  203. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/framework-registry.js +273 -0
  204. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/framework-registry.js.map +1 -0
  205. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/index.js +8 -0
  206. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/index.js.map +1 -0
  207. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/truth-config-manager.js +310 -0
  208. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/truth-config-manager.js.map +1 -0
  209. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/truth-validator.js +218 -0
  210. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/truth-validator.js.map +1 -0
  211. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/types/sdk.js +9 -0
  212. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/types/sdk.js.map +1 -0
  213. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/utils/index.js +6 -0
  214. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/utils/index.js.map +1 -0
  215. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/utils/priority-queue.js +145 -0
  216. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/utils/priority-queue.js.map +1 -0
  217. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/utils/sdk-helpers.js +122 -0
  218. package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/utils/sdk-helpers.js.map +1 -0
  219. package/.claude-flow-novice/dist/src/coordination/config-translator.js +17 -43
  220. package/.claude-flow-novice/dist/src/coordination/config-translator.js.map +1 -1
  221. package/.claude-flow-novice/dist/src/coordination/coordination-toggle.js +34 -76
  222. package/.claude-flow-novice/dist/src/coordination/coordination-toggle.js.map +1 -1
  223. package/.claude-flow-novice/dist/src/coordination/index.js +3 -0
  224. package/.claude-flow-novice/dist/src/coordination/index.js.map +1 -1
  225. package/.claude-flow-novice/dist/src/coordination/shared/core/agent-state.js +172 -0
  226. package/.claude-flow-novice/dist/src/coordination/shared/core/agent-state.js.map +1 -0
  227. package/.claude-flow-novice/dist/src/coordination/shared/core/index.js +7 -0
  228. package/.claude-flow-novice/dist/src/coordination/shared/core/index.js.map +1 -0
  229. package/.claude-flow-novice/dist/src/coordination/shared/index.js +19 -0
  230. package/.claude-flow-novice/dist/src/coordination/shared/index.js.map +1 -0
  231. package/.claude-flow-novice/dist/src/coordination/shared/interfaces/ICoordinator.js +24 -0
  232. package/.claude-flow-novice/dist/src/coordination/shared/interfaces/ICoordinator.js.map +1 -0
  233. package/.claude-flow-novice/dist/src/coordination/shared/interfaces/index.js +7 -0
  234. package/.claude-flow-novice/dist/src/coordination/shared/interfaces/index.js.map +1 -0
  235. package/.claude-flow-novice/dist/src/coordination/shared/message-broker.js +920 -0
  236. package/.claude-flow-novice/dist/src/coordination/shared/message-broker.js.map +1 -0
  237. package/.claude-flow-novice/dist/src/coordination/shared/message.js +138 -0
  238. package/.claude-flow-novice/dist/src/coordination/shared/message.js.map +1 -0
  239. package/.claude-flow-novice/dist/src/coordination/shared/security/payload-validator.js +259 -0
  240. package/.claude-flow-novice/dist/src/coordination/shared/security/payload-validator.js.map +1 -0
  241. package/.claude-flow-novice/dist/src/coordination/shared/transparency/index.js +17 -0
  242. package/.claude-flow-novice/dist/src/coordination/shared/transparency/index.js.map +1 -0
  243. package/.claude-flow-novice/dist/src/coordination/shared/transparency/interfaces/transparency-system.js +19 -0
  244. package/.claude-flow-novice/dist/src/coordination/shared/transparency/interfaces/transparency-system.js.map +1 -0
  245. package/.claude-flow-novice/dist/src/coordination/shared/transparency/transparency-integration.js +357 -0
  246. package/.claude-flow-novice/dist/src/coordination/shared/transparency/transparency-integration.js.map +1 -0
  247. package/.claude-flow-novice/dist/src/coordination/shared/transparency/transparency-system.js +679 -0
  248. package/.claude-flow-novice/dist/src/coordination/shared/transparency/transparency-system.js.map +1 -0
  249. package/.claude-flow-novice/dist/src/coordination/shared/types/index.js +7 -0
  250. package/.claude-flow-novice/dist/src/coordination/shared/types/index.js.map +1 -0
  251. package/.claude-flow-novice/dist/src/coordination/shared/types/sdk.js +10 -0
  252. package/.claude-flow-novice/dist/src/coordination/shared/types/sdk.js.map +1 -0
  253. package/.claude-flow-novice/dist/src/coordination/v1-transparency/interfaces/v1-transparency-system.js +12 -0
  254. package/.claude-flow-novice/dist/src/coordination/v1-transparency/interfaces/v1-transparency-system.js.map +1 -0
  255. package/.claude-flow-novice/dist/src/coordination/v1-transparency/v1-to-v2-bridge.js +433 -0
  256. package/.claude-flow-novice/dist/src/coordination/v1-transparency/v1-to-v2-bridge.js.map +1 -0
  257. package/.claude-flow-novice/dist/src/coordination/v1-transparency/v1-transparency-adapter.js +1468 -0
  258. package/.claude-flow-novice/dist/src/coordination/v1-transparency/v1-transparency-adapter.js.map +1 -0
  259. package/.claude-flow-novice/dist/src/feature-flags/core/FeatureFlagManager.js +52 -2
  260. package/.claude-flow-novice/dist/src/feature-flags/core/FeatureFlagManager.js.map +1 -1
  261. package/.claude-flow-novice/dist/src/mcp/mcp-server-novice.js +37 -2
  262. package/.claude-flow-novice/dist/src/mcp/session-manager.js +3 -1
  263. package/.claude-flow-novice/dist/src/mcp/session-manager.js.map +1 -1
  264. package/.claude-flow-novice/dist/src/monitoring/apm/apm-integration.js +5 -0
  265. package/.claude-flow-novice/dist/src/monitoring/apm/apm-integration.js.map +1 -1
  266. package/.claude-flow-novice/dist/src/providers/provider-manager.js +41 -6
  267. package/.claude-flow-novice/dist/src/providers/provider-manager.js.map +1 -1
  268. package/.claude-flow-novice/dist/src/providers/tiered-router.js +9 -17
  269. package/.claude-flow-novice/dist/src/providers/tiered-router.js.map +1 -1
  270. package/.claude-flow-novice/dist/src/utils/markdown-sanitizer.js +65 -41
  271. package/.claude-flow-novice/dist/src/utils/markdown-sanitizer.js.map +1 -1
  272. package/.claude-flow-novice/dist/src/web/api/server.js +1 -1
  273. package/.claude-flow-novice/dist/src/web/api/server.js.map +1 -1
  274. package/.claude-flow-novice/dist/src/workflows/progressive-rollout-manager.js +30 -0
  275. package/.claude-flow-novice/dist/src/workflows/progressive-rollout-manager.js.map +1 -1
  276. package/.claude-flow-novice/metrics.db +0 -0
  277. package/.claude-flow-novice/metrics.db-shm +0 -0
  278. package/.claude-flow-novice/metrics.db-wal +0 -0
  279. package/CLAUDE.md +72 -0
  280. package/config/hooks/post-edit-pipeline.js +68 -118
  281. package/config/hooks/pre-tool-memory-safety.js +209 -0
  282. package/package.json +7 -4
  283. package/scripts/cleanup-idle-sessions.sh +59 -0
  284. package/scripts/monitoring/alert-monitor.sh +220 -0
  285. package/scripts/monitoring/view-alerts.sh +307 -0
  286. package/scripts/test-provider-routing.cjs +7 -9
  287. package/scripts/test-zai-api.cjs +2 -2
  288. package/src/slash-commands/parse-epic.js +1 -1
  289. package/wiki/Provider-Routing.md +57 -69
  290. package/MEMORY_LEAK_ROOT_CAUSE.md +0 -149
@@ -22,6 +22,8 @@ export class ProviderManager extends EventEmitter {
22
22
  cache = new Map();
23
23
  currentProviderIndex = 0;
24
24
  tieredRouter;
25
+ monitoringInterval;
26
+ isShutdown = false;
25
27
  constructor(logger, configManager, config){
26
28
  super();
27
29
  this.logger = logger;
@@ -37,6 +39,11 @@ export class ProviderManager extends EventEmitter {
37
39
  if (config.monitoring?.enabled) {
38
40
  this.startMonitoring();
39
41
  }
42
+ // Register automatic cleanup on process termination
43
+ process.on('SIGTERM', ()=>this.destroy());
44
+ process.on('SIGINT', ()=>this.destroy());
45
+ process.on('beforeExit', ()=>this.destroy());
46
+ this.logger.info('ProviderManager auto-shutdown hooks registered');
40
47
  }
41
48
  /**
42
49
  * Initialize all configured providers
@@ -103,6 +110,9 @@ export class ProviderManager extends EventEmitter {
103
110
  /**
104
111
  * Complete a request using the appropriate provider
105
112
  */ async complete(request, agentType) {
113
+ if (this.isShutdown) {
114
+ throw new Error('ProviderManager is shutdown');
115
+ }
106
116
  // Check cache first
107
117
  if (this.config.caching?.enabled) {
108
118
  const cached = this.checkCache(request);
@@ -158,11 +168,13 @@ export class ProviderManager extends EventEmitter {
158
168
  * Select the best provider for a request
159
169
  */ async selectProvider(request, agentType) {
160
170
  // Tiered routing based on agent type
161
- if (this.config.tieredRouting?.enabled && this.tieredRouter && agentType) {
162
- const selectedProvider = await this.tieredRouter.selectProvider(agentType);
171
+ // If no agentType provided, default to "main-chat" for Claude Max routing
172
+ const effectiveAgentType = agentType || "main-chat";
173
+ if (this.config.tieredRouting?.enabled && this.tieredRouter) {
174
+ const selectedProvider = await this.tieredRouter.selectProvider(effectiveAgentType);
163
175
  const provider = this.providers.get(selectedProvider);
164
176
  if (provider && this.isProviderAvailable(provider)) {
165
- this.logger.debug(`Tiered routing: ${agentType} → ${selectedProvider}`);
177
+ this.logger.debug(`Tiered routing: ${effectiveAgentType} → ${selectedProvider}`);
166
178
  return provider;
167
179
  }
168
180
  }
@@ -434,7 +446,7 @@ export class ProviderManager extends EventEmitter {
434
446
  /**
435
447
  * Start monitoring
436
448
  */ startMonitoring() {
437
- setInterval(()=>{
449
+ this.monitoringInterval = setInterval(()=>{
438
450
  this.emitMetrics();
439
451
  }, this.config.monitoring?.metricsInterval || 60000);
440
452
  }
@@ -477,6 +489,9 @@ export class ProviderManager extends EventEmitter {
477
489
  /**
478
490
  * Get available providers
479
491
  */ getAvailableProviders() {
492
+ if (this.isShutdown) {
493
+ throw new Error('ProviderManager is shutdown');
494
+ }
480
495
  return Array.from(this.providers.keys()).filter((name)=>{
481
496
  const provider = this.providers.get(name);
482
497
  return provider && this.isProviderAvailable(provider);
@@ -485,23 +500,43 @@ export class ProviderManager extends EventEmitter {
485
500
  /**
486
501
  * Get provider by name
487
502
  */ getProvider(name) {
503
+ if (this.isShutdown) {
504
+ throw new Error('ProviderManager is shutdown');
505
+ }
488
506
  return this.providers.get(name);
489
507
  }
490
508
  /**
491
509
  * Get all providers
492
510
  */ getAllProviders() {
511
+ if (this.isShutdown) {
512
+ throw new Error('ProviderManager is shutdown');
513
+ }
493
514
  return new Map(this.providers);
494
515
  }
495
516
  /**
496
517
  * Clean up resources
497
518
  */ destroy() {
498
- for (const provider of this.providers.values()){
519
+ if (this.isShutdown) return; // Idempotent guard
520
+ this.isShutdown = true;
521
+ this.logger.info('Destroying provider manager');
522
+ // Clear monitoring interval to prevent memory leak
523
+ if (this.monitoringInterval) {
524
+ clearInterval(this.monitoringInterval);
525
+ this.monitoringInterval = undefined;
526
+ }
527
+ // Destroy all providers
528
+ for (const [name, provider] of this.providers.entries()){
529
+ this.logger.info(`Destroying provider: ${name}`);
499
530
  provider.destroy();
500
531
  }
532
+ // Clean up event listeners to prevent memory leaks
533
+ this.removeAllListeners();
501
534
  this.providers.clear();
502
535
  this.cache.clear();
503
536
  this.providerMetrics.clear();
504
- this.removeAllListeners();
537
+ this.requestCount.clear();
538
+ this.lastUsed.clear();
539
+ this.logger.info('ProviderManager cleanup completed');
505
540
  }
506
541
  }
507
542
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/providers/provider-manager.ts"],"names":["EventEmitter","LLMProviderError","isRateLimitError","AnthropicProvider","OpenAIProvider","GoogleProvider","CohereProvider","OllamaProvider","ZaiProvider","createTieredRouter","ProviderManager","providers","Map","logger","config","requestCount","lastUsed","providerMetrics","cache","currentProviderIndex","tieredRouter","configManager","tieredRouting","enabled","info","initializeProviders","monitoring","startMonitoring","providerName","providerConfig","Object","entries","provider","createProvider","set","error","size","Error","name","providerOptions","warn","initialize","on","data","handleProviderResponse","handleProviderError","result","handleHealthCheck","complete","request","agentType","caching","cached","checkCache","debug","selectProvider","response","cacheResponse","updateProviderMetrics","success","latency","cost","totalCost","handleRequestError","streamComplete","fallbackProvider","getFallbackProvider","selectedProvider","get","isProviderAvailable","preferredProvider","costOptimization","costConstraints","optimized","selectOptimalProvider","loadBalancing","selectLoadBalancedProvider","defaultProvider","values","bestProvider","bestCost","Infinity","estimate","estimateCost","estimatedCost","total","maxCostPerRequest","availableProviders","Array","from","filter","p","length","strategy","roundRobinSelect","leastLoadedSelect","latencyBasedSelect","costBasedSelect","minLoad","status","getStatus","currentLoad","minLatency","metrics","avgLatency","reduce","sum","m","minCost","avgCost","available","failedProvider","fallbackStrategy","errorCondition","getErrorCondition","fallbackRule","rules","find","rule","condition","fallbackProviders","statusCode","code","cacheKey","generateCacheKey","age","Date","now","timestamp","getTime","ttl","delete","oldestKey","keys","next","value","JSON","stringify","model","messages","temperature","maxTokens","count","providerMetricsList","errorRate","successRate","push","load","availability","shift","emit","setInterval","emitMetrics","metricsInterval","totalRequests","averageLatency","requests","totalLatency","latencyCount","metric","getAvailableProviders","getProvider","getAllProviders","destroy","clear","removeAllListeners"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/providers/provider-manager.ts"],"names":["EventEmitter","LLMProviderError","isRateLimitError","AnthropicProvider","OpenAIProvider","GoogleProvider","CohereProvider","OllamaProvider","ZaiProvider","createTieredRouter","ProviderManager","providers","Map","logger","config","requestCount","lastUsed","providerMetrics","cache","currentProviderIndex","tieredRouter","monitoringInterval","isShutdown","configManager","tieredRouting","enabled","info","initializeProviders","monitoring","startMonitoring","process","on","destroy","providerName","providerConfig","Object","entries","provider","createProvider","set","error","size","Error","name","providerOptions","warn","initialize","data","handleProviderResponse","handleProviderError","result","handleHealthCheck","complete","request","agentType","caching","cached","checkCache","debug","selectProvider","response","cacheResponse","updateProviderMetrics","success","latency","cost","totalCost","handleRequestError","streamComplete","fallbackProvider","getFallbackProvider","effectiveAgentType","selectedProvider","get","isProviderAvailable","preferredProvider","costOptimization","costConstraints","optimized","selectOptimalProvider","loadBalancing","selectLoadBalancedProvider","defaultProvider","values","bestProvider","bestCost","Infinity","estimate","estimateCost","estimatedCost","total","maxCostPerRequest","availableProviders","Array","from","filter","p","length","strategy","roundRobinSelect","leastLoadedSelect","latencyBasedSelect","costBasedSelect","minLoad","status","getStatus","currentLoad","minLatency","metrics","avgLatency","reduce","sum","m","minCost","avgCost","available","failedProvider","fallbackStrategy","errorCondition","getErrorCondition","fallbackRule","rules","find","rule","condition","fallbackProviders","statusCode","code","cacheKey","generateCacheKey","age","Date","now","timestamp","getTime","ttl","delete","oldestKey","keys","next","value","JSON","stringify","model","messages","temperature","maxTokens","count","providerMetricsList","errorRate","successRate","push","load","availability","shift","emit","setInterval","emitMetrics","metricsInterval","totalRequests","averageLatency","requests","totalLatency","latencyCount","metric","getAvailableProviders","getProvider","getAllProviders","clearInterval","undefined","removeAllListeners","clear"],"mappings":"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"}
@@ -7,27 +7,18 @@ import { getGlobalTelemetry } from "../observability/telemetry.js";
7
7
  // ===== TIER DEFINITIONS =====
8
8
  const TIER_CONFIGS = [
9
9
  {
10
- name: "Tier 1: Subscription",
10
+ name: "Tier 0: Main Chat (Claude Max)",
11
11
  provider: "anthropic",
12
12
  agentTypes: [
13
- "coordinator",
14
- "architect",
15
- "system-architect"
13
+ "main-chat"
16
14
  ],
17
- priority: 1,
18
- subscriptionLimit: 1000
15
+ priority: 0
19
16
  },
20
17
  {
21
- name: "Tier 2: Z.ai Default",
18
+ name: "Tier 1: Z.ai Agent Orchestration (ALL Task Tool Agents)",
22
19
  provider: "zai",
23
20
  agentTypes: [],
24
- priority: 2
25
- },
26
- {
27
- name: "Tier 3: Anthropic Explicit",
28
- provider: "anthropic",
29
- agentTypes: [],
30
- priority: 3
21
+ priority: 1
31
22
  }
32
23
  ];
33
24
  // ===== TIERED PROVIDER ROUTER =====
@@ -115,10 +106,11 @@ export class TieredProviderRouter {
115
106
  return selectedProvider;
116
107
  }
117
108
  }
118
- // Step 3: Default fallback to Tier 2 (Z.ai)
119
- const fallbackTier = this.tierConfigs.find((t)=>t.priority === 2);
109
+ // Step 3: Default fallback to Z.ai (Tier 1)
110
+ // All Task tool agents (anything except "main-chat") go to Z.ai
111
+ const fallbackTier = this.tierConfigs.find((t)=>t.priority === 1);
120
112
  selectedProvider = fallbackTier?.provider || "zai";
121
- tierName = fallbackTier?.name || "Tier 2: Z.ai Default";
113
+ tierName = fallbackTier?.name || "Tier 1: Z.ai Agent Orchestration";
122
114
  source = "fallback";
123
115
  // Record telemetry
124
116
  this.telemetry.recordCounter("provider.request", 1, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/providers/tiered-router.ts"],"names":["AgentProfileLoader","getGlobalTelemetry","TIER_CONFIGS","name","provider","agentTypes","priority","subscriptionLimit","TieredProviderRouter","subscriptionUsage","tierConfigs","profileLoader","telemetry","initialUsage","agentsDir","sort","a","b","used","limit","resetDate","getNextResetDate","selectProvider","agentType","selectedProvider","tierName","source","profilePreference","getProviderPreference","hasSubscriptionCapacity","consumeSubscription","recordCounter","tier","includes","recordGauge","toString","remaining","fallbackTier","find","t","Date","resetSubscriptionUsage","now","getFullYear","getMonth","getDate","getSubscriptionUsage","getTierForAgentType","getTierConfigs","createTieredRouter","customTiers"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/providers/tiered-router.ts"],"names":["AgentProfileLoader","getGlobalTelemetry","TIER_CONFIGS","name","provider","agentTypes","priority","TieredProviderRouter","subscriptionUsage","tierConfigs","profileLoader","telemetry","initialUsage","agentsDir","sort","a","b","used","limit","resetDate","getNextResetDate","selectProvider","agentType","selectedProvider","tierName","source","profilePreference","getProviderPreference","hasSubscriptionCapacity","consumeSubscription","recordCounter","tier","includes","subscriptionLimit","recordGauge","toString","remaining","fallbackTier","find","t","Date","resetSubscriptionUsage","now","getFullYear","getMonth","getDate","getSubscriptionUsage","getTierForAgentType","getTierConfigs","createTieredRouter","customTiers"],"mappings":"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"}
@@ -1,4 +1,12 @@
1
- import DOMPurify from 'isomorphic-dompurify';
1
+ // Try to import DOMPurify, fallback to manual sanitization if unavailable
2
+ let DOMPurify;
3
+ try {
4
+ const module = await import('isomorphic-dompurify');
5
+ DOMPurify = module.default;
6
+ } catch (err) {
7
+ // jsdom not available - use fallback sanitization
8
+ DOMPurify = null;
9
+ }
2
10
  export class MarkdownSanitizer {
3
11
  static MAX_LENGTH = 100000;
4
12
  static MAX_SPRINT_DESC_LENGTH = 10000;
@@ -20,49 +28,65 @@ export class MarkdownSanitizer {
20
28
  .replace(/\son\w+\s*=/gi, ' ')// Remove <iframe> tags
21
29
  .replace(/<iframe[^>]*>.*?<\/iframe>/gis, '')// Remove <object> and <embed> tags
22
30
  .replace(/<(object|embed)[^>]*>.*?<\/\1>/gis, '');
23
- // Sanitize HTML with DOMPurify
24
- cleaned = DOMPurify.sanitize(cleaned, {
25
- ALLOWED_TAGS: [
26
- 'p',
27
- 'br',
28
- 'strong',
29
- 'em',
30
- 'u',
31
- 'code',
32
- 'pre',
33
- 'h1',
34
- 'h2',
35
- 'h3',
36
- 'h4',
37
- 'h5',
38
- 'h6',
39
- 'ul',
40
- 'ol',
41
- 'li',
42
- 'blockquote',
43
- 'a',
44
- 'img',
45
- 'table',
46
- 'thead',
47
- 'tbody',
48
- 'tr',
49
- 'th',
50
- 'td'
51
- ],
52
- ALLOWED_ATTR: [
53
- 'href',
54
- 'src',
55
- 'alt',
56
- 'title',
57
- 'class'
58
- ],
59
- ALLOW_DATA_ATTR: false,
60
- ALLOW_UNKNOWN_PROTOCOLS: false,
61
- ALLOWED_URI_REGEXP: /^(?:(?:https?|mailto|ftp):)/i
62
- });
31
+ // Sanitize HTML with DOMPurify if available, otherwise use fallback
32
+ if (DOMPurify) {
33
+ cleaned = DOMPurify.sanitize(cleaned, {
34
+ ALLOWED_TAGS: [
35
+ 'p',
36
+ 'br',
37
+ 'strong',
38
+ 'em',
39
+ 'u',
40
+ 'code',
41
+ 'pre',
42
+ 'h1',
43
+ 'h2',
44
+ 'h3',
45
+ 'h4',
46
+ 'h5',
47
+ 'h6',
48
+ 'ul',
49
+ 'ol',
50
+ 'li',
51
+ 'blockquote',
52
+ 'a',
53
+ 'img',
54
+ 'table',
55
+ 'thead',
56
+ 'tbody',
57
+ 'tr',
58
+ 'th',
59
+ 'td'
60
+ ],
61
+ ALLOWED_ATTR: [
62
+ 'href',
63
+ 'src',
64
+ 'alt',
65
+ 'title',
66
+ 'class'
67
+ ],
68
+ ALLOW_DATA_ATTR: false,
69
+ ALLOW_UNKNOWN_PROTOCOLS: false,
70
+ ALLOWED_URI_REGEXP: /^(?:(?:https?|mailto|ftp):)/i
71
+ });
72
+ } else {
73
+ // Fallback: strip all HTML tags except safe markdown-rendered ones
74
+ cleaned = this.sanitizeFallback(cleaned);
75
+ }
63
76
  return cleaned;
64
77
  }
65
78
  /**
79
+ * Fallback sanitization when DOMPurify is unavailable
80
+ */ static sanitizeFallback(html) {
81
+ // Strip all HTML tags except basic formatting
82
+ // This is a conservative approach when DOMPurify is not available
83
+ return html// Remove all tags except basic safe ones
84
+ .replace(/<(?!\/?(?:p|br|strong|em|u|code|pre|h[1-6]|ul|ol|li|blockquote|a|table|thead|tbody|tr|th|td)\b)[^>]+>/gi, '')// Remove event handlers from remaining tags
85
+ .replace(/\s+on\w+="[^"]*"/gi, '')// Remove style attributes
86
+ .replace(/\s+style="[^"]*"/gi, '')// Remove javascript: in href
87
+ .replace(/href="javascript:[^"]*"/gi, 'href="#"');
88
+ }
89
+ /**
66
90
  * Sanitize sprint descriptions with additional validation
67
91
  */ static sanitizeSprintDescription(description) {
68
92
  // Apply base sanitization
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/utils/markdown-sanitizer.ts"],"names":["DOMPurify","MarkdownSanitizer","MAX_LENGTH","MAX_SPRINT_DESC_LENGTH","sanitize","markdown","options","maxLength","length","Error","cleaned","replace","ALLOWED_TAGS","ALLOWED_ATTR","ALLOW_DATA_ATTR","ALLOW_UNKNOWN_PROTOCOLS","ALLOWED_URI_REGEXP","sanitizeSprintDescription","description","sanitized","suspiciousPatterns","pattern","test","source","sanitizeFilePath","filePath","dangerousPatterns","sanitizeId","id","type","allowedPattern","sanitizeUrl","url","parsed","URL","allowedProtocols","includes","protocol","hostname","toLowerCase","blockedHosts","href","err","message","String","sanitizeEpicConfig","config","epicId","name","undefined","phases","map","phase","phaseId","file","sprints","sprint","sprintId","taskType","maxIterations","dependencies","metadata"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/utils/markdown-sanitizer.ts"],"names":["DOMPurify","module","default","err","MarkdownSanitizer","MAX_LENGTH","MAX_SPRINT_DESC_LENGTH","sanitize","markdown","options","maxLength","length","Error","cleaned","replace","ALLOWED_TAGS","ALLOWED_ATTR","ALLOW_DATA_ATTR","ALLOW_UNKNOWN_PROTOCOLS","ALLOWED_URI_REGEXP","sanitizeFallback","html","sanitizeSprintDescription","description","sanitized","suspiciousPatterns","pattern","test","source","sanitizeFilePath","filePath","dangerousPatterns","sanitizeId","id","type","allowedPattern","sanitizeUrl","url","parsed","URL","allowedProtocols","includes","protocol","hostname","toLowerCase","blockedHosts","href","message","String","sanitizeEpicConfig","config","epicId","name","undefined","phases","map","phase","phaseId","file","sprints","sprint","sprintId","taskType","maxIterations","dependencies","metadata"],"mappings":"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"}
@@ -13,7 +13,7 @@ import helmet from 'helmet';
13
13
  import compression from 'compression';
14
14
  import rateLimit from 'express-rate-limit';
15
15
  import { v4 as uuidv4 } from 'uuid';
16
- import { TransparencySystem } from '../../coordination/v2/transparency/transparency-system.js';
16
+ import { TransparencySystem } from '../../coordination/shared/transparency/transparency-system.js';
17
17
  import { authMiddleware } from './middleware/auth.js';
18
18
  import { errorHandler } from './middleware/error-handler.js';
19
19
  import { requestLogger } from './middleware/request-logger.js';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/web/api/server.ts"],"names":["express","createServer","Server","SocketIOServer","cors","helmet","compression","rateLimit","v4","uuidv4","TransparencySystem","authMiddleware","errorHandler","requestLogger","cacheMiddleware","hierarchyRoutes","statusRoutes","eventsRoutes","metricsRoutes","analyticsRoutes","systemRoutes","createApiConfig","Logger","TransparencyApiServer","app","server","io","config","logger","isStarted","dataCache","Map","transparencySystem","enableWebSocketAuth","enableApiDocs","enableHealthCheck","level","logLevel","format","destination","origin","corsOrigins","methods","credentials","transports","setupMiddleware","setupRoutes","setupWebSocket","setupErrorHandling","start","warn","info","port","host","environment","initialize","enableRealTimeMonitoring","enableEventStreaming","metricsUpdateIntervalMs","heartbeatIntervalMs","startMonitoring","Promise","resolve","reject","listen","err","error","url","nodeVersion","process","version","stop","stopMonitoring","cleanup","close","getApp","getSocketIOServer","getConfig","use","contentSecurityPolicy","directives","defaultSrc","styleSrc","scriptSrc","imgSrc","connectSrc","allowedHeaders","preflightContinue","optionsSuccessStatus","json","limit","urlencoded","extended","limiter","windowMs","max","rateLimitWindowMs","message","standardHeaders","legacyHeaders","get","req","res","status","timestamp","Date","toISOString","uptime","env","npm_package_version","name","description","endpoints","hierarchy","events","metrics","analytics","system","websocket","documentation","method","originalUrl","socket","next","token","handshake","auth","headers","authorization","replace","Error","length","data","userId","slice","on","socketId","id","channels","Array","isArray","forEach","channel","join","debug","leave","reason","setupTransparencyEventListeners","transparency","to","emit","type","promise","exit","getCachedData","key","fetchFn","ttl","cached","now","set","clearCache","delete","clear","createApiServer"],"mappings":"AAAA;;;;;;;CAOC,GAED,OAAOA,aAA2D,UAAU;AAC5E,SAASC,YAAY,QAAQ,OAAO;AACpC,SAASC,UAAUC,cAAc,QAAQ,YAAY;AACrD,OAAOC,UAAU,OAAO;AACxB,OAAOC,YAAY,SAAS;AAC5B,OAAOC,iBAAiB,cAAc;AACtC,OAAOC,eAAe,qBAAqB;AAC3C,SAASC,MAAMC,MAAM,QAAQ,OAAO;AAGpC,SAASC,kBAAkB,QAAQ,4DAA4D;AAS/F,SAASC,cAAc,QAAQ,uBAAuB;AACtD,SAASC,YAAY,QAAQ,gCAAgC;AAC7D,SAASC,aAAa,QAAQ,iCAAiC;AAC/D,SAASC,eAAe,QAAQ,wBAAwB;AAExD,SACEC,eAAe,EACfC,YAAY,EACZC,YAAY,EACZC,aAAa,EACbC,eAAe,EACfC,YAAY,QACP,oBAAoB;AAC3B,SAAoBC,eAAe,QAAQ,yBAAyB;AACpE,SAASC,MAAM,QAAQ,uBAAuB;AAgB9C;;;;;;;;;CASC,GACD,OAAO,MAAMC;IACHC,IAAa;IACbC,OAAmB;IACnBC,GAAmB;IACnBC,OAAwB;IACxBC,OAAe;IACfC,YAAY,MAAM;IAE1B,6BAA6B;IACrBC,YAAY,IAAIC,MAA6D;IAErF,YAAYJ,SAAmC,CAAC,CAAC,CAAE;QACjD,IAAI,CAACA,MAAM,GAAG;YACZ,GAAGN,iBAAiB;YACpBW,oBAAoB,IAAItB;YACxBuB,qBAAqB;YACrBC,eAAe;YACfC,mBAAmB;YACnB,GAAGR,MAAM;QACX;QAEA,IAAI,CAACC,MAAM,GAAG,IAAIN,OAAO;YACvBc,OAAO,IAAI,CAACT,MAAM,CAACU,QAAQ;YAC3BC,QAAQ;YACRC,aAAa;QACf;QAEA,IAAI,CAACf,GAAG,GAAGxB;QACX,IAAI,CAACyB,MAAM,GAAGxB,aAAa,IAAI,CAACuB,GAAG;QACnC,IAAI,CAACE,EAAE,GAAG,IAAIvB,eAAe,IAAI,CAACsB,MAAM,EAAE;YACxCrB,MAAM;gBACJoC,QAAQ,IAAI,CAACb,MAAM,CAACc,WAAW;gBAC/BC,SAAS;oBAAC;oBAAO;iBAAO;gBACxBC,aAAa;YACf;YACAC,YAAY;gBAAC;gBAAa;aAAU;QACtC;QAEA,IAAI,CAACC,eAAe;QACpB,IAAI,CAACC,WAAW;QAChB,IAAI,CAACC,cAAc;QACnB,IAAI,CAACC,kBAAkB;IACzB;IAEA;;GAEC,GACD,MAAMC,QAAuB;QAC3B,IAAI,IAAI,CAACpB,SAAS,EAAE;YAClB,IAAI,CAACD,MAAM,CAACsB,IAAI,CAAC;YACjB;QACF;QAEA,IAAI,CAACtB,MAAM,CAACuB,IAAI,CAAC,oCAAoC;YACnDC,MAAM,IAAI,CAACzB,MAAM,CAACyB,IAAI;YACtBC,MAAM,IAAI,CAAC1B,MAAM,CAAC0B,IAAI;YACtBC,aAAa,IAAI,CAAC3B,MAAM,CAAC2B,WAAW;QACtC;QAEA,iCAAiC;QACjC,MAAM,IAAI,CAAC3B,MAAM,CAACK,kBAAkB,CAACuB,UAAU,CAAC;YAC9CC,0BAA0B;YAC1BC,sBAAsB;YACtBC,yBAAyB;YACzBC,qBAAqB;QACvB;QAEA,MAAM,IAAI,CAAChC,MAAM,CAACK,kBAAkB,CAAC4B,eAAe;QAEpD,oBAAoB;QACpB,OAAO,IAAIC,QAAQ,CAACC,SAASC;YAC3B,IAAI,CAACtC,MAAM,CAACuC,MAAM,CAAC,IAAI,CAACrC,MAAM,CAACyB,IAAI,EAAE,IAAI,CAACzB,MAAM,CAAC0B,IAAI,EAAE,CAACY;gBACtD,IAAIA,KAAK;oBACP,IAAI,CAACrC,MAAM,CAACsC,KAAK,CAAC,8BAA8BD;oBAChDF,OAAOE;oBACP;gBACF;gBAEA,IAAI,CAACpC,SAAS,GAAG;gBACjB,IAAI,CAACD,MAAM,CAACuB,IAAI,CAAC,gDAAgD;oBAC/DgB,KAAK,CAAC,OAAO,EAAE,IAAI,CAACxC,MAAM,CAAC0B,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC1B,MAAM,CAACyB,IAAI,EAAE;oBACrDE,aAAa,IAAI,CAAC3B,MAAM,CAAC2B,WAAW;oBACpCc,aAAaC,QAAQC,OAAO;gBAC9B;gBAEAR;YACF;QACF;IACF;IAEA;;GAEC,GACD,MAAMS,OAAsB;QAC1B,IAAI,CAAC,IAAI,CAAC1C,SAAS,EAAE;YACnB;QACF;QAEA,IAAI,CAACD,MAAM,CAACuB,IAAI,CAAC;QAEjB,2BAA2B;QAC3B,MAAM,IAAI,CAACxB,MAAM,CAACK,kBAAkB,CAACwC,cAAc;QACnD,MAAM,IAAI,CAAC7C,MAAM,CAACK,kBAAkB,CAACyC,OAAO;QAE5C,8BAA8B;QAC9B,IAAI,CAAC/C,EAAE,CAACgD,KAAK;QAEb,oBAAoB;QACpB,OAAO,IAAIb,QAAQ,CAACC;YAClB,IAAI,CAACrC,MAAM,CAACiD,KAAK,CAAC;gBAChB,IAAI,CAAC7C,SAAS,GAAG;gBACjB,IAAI,CAACD,MAAM,CAACuB,IAAI,CAAC;gBACjBW;YACF;QACF;IACF;IAEA;;GAEC,GACDa,SAAkB;QAChB,OAAO,IAAI,CAACnD,GAAG;IACjB;IAEA;;GAEC,GACDoD,oBAAoC;QAClC,OAAO,IAAI,CAAClD,EAAE;IAChB;IAEA;;GAEC,GACDmD,YAA6B;QAC3B,OAAO;YAAE,GAAG,IAAI,CAAClD,MAAM;QAAC;IAC1B;IAEA;;GAEC,GACD,AAAQkB,kBAAwB;QAC9B,sBAAsB;QACtB,IAAI,CAACrB,GAAG,CAACsD,GAAG,CAACzE,OAAO;YAClB0E,uBAAuB;gBACrBC,YAAY;oBACVC,YAAY;wBAAC;qBAAS;oBACtBC,UAAU;wBAAC;wBAAU;qBAAkB;oBACvCC,WAAW;wBAAC;qBAAS;oBACrBC,QAAQ;wBAAC;wBAAU;wBAAS;qBAAS;oBACrCC,YAAY;wBAAC;wBAAU;wBAAO;qBAAO;gBACvC;YACF;QACF;QAEA,qBAAqB;QACrB,IAAI,CAAC7D,GAAG,CAACsD,GAAG,CAAC1E,KAAK;YAChBoC,QAAQ,IAAI,CAACb,MAAM,CAACc,WAAW;YAC/BC,SAAS;gBAAC;gBAAO;gBAAQ;gBAAO;gBAAU;gBAAS;aAAU;YAC7D4C,gBAAgB;gBAAC;gBAAgB;gBAAiB;aAAmB;YACrE3C,aAAa;YACb4C,mBAAmB;YACnBC,sBAAsB;QACxB;QAEA,cAAc;QACd,IAAI,CAAChE,GAAG,CAACsD,GAAG,CAACxE;QAEb,eAAe;QACf,IAAI,CAACkB,GAAG,CAACsD,GAAG,CAAC9E,QAAQyF,IAAI,CAAC;YAAEC,OAAO;QAAO;QAC1C,IAAI,CAAClE,GAAG,CAACsD,GAAG,CAAC9E,QAAQ2F,UAAU,CAAC;YAAEC,UAAU;YAAMF,OAAO;QAAO;QAEhE,kBAAkB;QAClB,IAAI,CAAClE,GAAG,CAACsD,GAAG,CAACjE,cAAc,IAAI,CAACe,MAAM;QAEtC,gBAAgB;QAChB,MAAMiE,UAAUtF,UAAU;YACxBuF,UAAU,KAAK,KAAK;YACpBC,KAAK,IAAI,CAACpE,MAAM,CAACqE,iBAAiB;YAClCC,SAAS;gBACP/B,OAAO;gBACP+B,SAAS;YACX;YACAC,iBAAiB;YACjBC,eAAe;QACjB;QACA,IAAI,CAAC3E,GAAG,CAACsD,GAAG,CAAC,QAAQe;QAErB,oCAAoC;QACpC,IAAI,CAACrE,GAAG,CAACsD,GAAG,CAAC,QAAQhE,gBAAgB,IAAI,CAACgB,SAAS;QAEnD,4DAA4D;QAC5D,IAAI,CAACN,GAAG,CAACsD,GAAG,CAAC,WAAWnE,eAAe,IAAI,CAACgB,MAAM;IACpD;IAEA;;GAEC,GACD,AAAQmB,cAAoB;QAC1B,wBAAwB;QACxB,IAAI,IAAI,CAACnB,MAAM,CAACQ,iBAAiB,EAAE;YACjC,IAAI,CAACX,GAAG,CAAC4E,GAAG,CAAC,WAAW,CAACC,KAAcC;gBACrCA,IAAIb,IAAI,CAAC;oBACPc,QAAQ;oBACRC,WAAW,IAAIC,OAAOC,WAAW;oBACjCC,QAAQtC,QAAQsC,MAAM;oBACtBrC,SAASD,QAAQuC,GAAG,CAACC,mBAAmB,IAAI;oBAC5CvD,aAAa,IAAI,CAAC3B,MAAM,CAAC2B,WAAW;gBACtC;YACF;QACF;QAEA,oBAAoB;QACpB,IAAI,IAAI,CAAC3B,MAAM,CAACO,aAAa,EAAE;YAC7B,IAAI,CAACV,GAAG,CAAC4E,GAAG,CAAC,QAAQ,CAACC,KAAcC;gBAClCA,IAAIb,IAAI,CAAC;oBACPqB,MAAM;oBACNxC,SAAS;oBACTyC,aAAa;oBACbC,WAAW;wBACTC,WAAW;wBACXV,QAAQ;wBACRW,QAAQ;wBACRC,SAAS;wBACTC,WAAW;wBACXC,QAAQ;oBACV;oBACAC,WAAW;oBACXC,eAAe;gBACjB;YACF;QACF;QAEA,uBAAuB;QACvB,IAAI,CAAC/F,GAAG,CAACsD,GAAG,CAAC,qBAAqB/D,gBAAgB,IAAI,CAACY,MAAM,CAACK,kBAAkB,EAAE,IAAI,CAACJ,MAAM;QAC7F,IAAI,CAACJ,GAAG,CAACsD,GAAG,CAAC,kBAAkB9D,aAAa,IAAI,CAACW,MAAM,CAACK,kBAAkB,EAAE,IAAI,CAACJ,MAAM;QACvF,IAAI,CAACJ,GAAG,CAACsD,GAAG,CAAC,kBAAkB7D,aAAa,IAAI,CAACU,MAAM,CAACK,kBAAkB,EAAE,IAAI,CAACJ,MAAM;QACvF,IAAI,CAACJ,GAAG,CAACsD,GAAG,CAAC,mBAAmB5D,cAAc,IAAI,CAACS,MAAM,CAACK,kBAAkB,EAAE,IAAI,CAACJ,MAAM;QACzF,IAAI,CAACJ,GAAG,CAACsD,GAAG,CAAC,qBAAqB3D,gBAAgB,IAAI,CAACQ,MAAM,CAACK,kBAAkB,EAAE,IAAI,CAACJ,MAAM;QAC7F,IAAI,CAACJ,GAAG,CAACsD,GAAG,CAAC,kBAAkB1D,aAAa,IAAI,CAACO,MAAM,EAAE,IAAI,CAACC,MAAM;QAEpE,cAAc;QACd,IAAI,CAACJ,GAAG,CAACsD,GAAG,CAAC,KAAK,CAACuB,KAAcC;YAC/BA,IAAIC,MAAM,CAAC,KAAKd,IAAI,CAAC;gBACnBvB,OAAO;gBACP+B,SAAS,CAAC,SAAS,EAAEI,IAAImB,MAAM,CAAC,CAAC,EAAEnB,IAAIoB,WAAW,CAAC,UAAU,CAAC;gBAC9DjB,WAAW,IAAIC,OAAOC,WAAW;YACnC;QACF;IACF;IAEA;;GAEC,GACD,AAAQ3D,iBAAuB;QAC7B,IAAI,CAACnB,MAAM,CAACuB,IAAI,CAAC;QAEjB,2BAA2B;QAC3B,IAAI,IAAI,CAACxB,MAAM,CAACM,mBAAmB,EAAE;YACnC,IAAI,CAACP,EAAE,CAACoD,GAAG,CAAC,OAAO4C,QAAQC;gBACzB,IAAI;oBACF,MAAMC,QAAQF,OAAOG,SAAS,CAACC,IAAI,CAACF,KAAK,IAAIF,OAAOG,SAAS,CAACE,OAAO,CAACC,aAAa,EAAEC,QAAQ,WAAW;oBAExG,IAAI,CAACL,OAAO;wBACV,OAAOD,KAAK,IAAIO,MAAM;oBACxB;oBAEA,yDAAyD;oBACzD,4CAA4C;oBAC5C,IAAIN,MAAMO,MAAM,GAAG,GAAG;wBACpBT,OAAOU,IAAI,CAACC,MAAM,GAAG,UAAU5H,SAAS6H,KAAK,CAAC,GAAG;wBACjDX;oBACF,OAAO;wBACLA,KAAK,IAAIO,MAAM;oBACjB;gBACF,EAAE,OAAOhE,OAAO;oBACdyD,KAAK,IAAIO,MAAM;gBACjB;YACF;QACF;QAEA,+BAA+B;QAC/B,IAAI,CAACxG,EAAE,CAAC6G,EAAE,CAAC,cAAc,CAACb;YACxB,IAAI,CAAC9F,MAAM,CAACuB,IAAI,CAAC,8BAA8B;gBAC7CqF,UAAUd,OAAOe,EAAE;gBACnBJ,QAAQX,OAAOU,IAAI,CAACC,MAAM;YAC5B;YAEA,oCAAoC;YACpCX,OAAOa,EAAE,CAAC,aAAa,CAACH;gBACtB,MAAM,EAAEM,QAAQ,EAAE,GAAGN;gBAErB,IAAIO,MAAMC,OAAO,CAACF,WAAW;oBAC3BA,SAASG,OAAO,CAACC,CAAAA;wBACfpB,OAAOqB,IAAI,CAACD;wBACZ,IAAI,CAAClH,MAAM,CAACoH,KAAK,CAAC,gCAAgC;4BAChDR,UAAUd,OAAOe,EAAE;4BACnBK;wBACF;oBACF;gBACF;YACF;YAEA,4BAA4B;YAC5BpB,OAAOa,EAAE,CAAC,eAAe,CAACH;gBACxB,MAAM,EAAEM,QAAQ,EAAE,GAAGN;gBAErB,IAAIO,MAAMC,OAAO,CAACF,WAAW;oBAC3BA,SAASG,OAAO,CAACC,CAAAA;wBACfpB,OAAOuB,KAAK,CAACH;wBACb,IAAI,CAAClH,MAAM,CAACoH,KAAK,CAAC,oCAAoC;4BACpDR,UAAUd,OAAOe,EAAE;4BACnBK;wBACF;oBACF;gBACF;YACF;YAEA,uBAAuB;YACvBpB,OAAOa,EAAE,CAAC,cAAc,CAACW;gBACvB,IAAI,CAACtH,MAAM,CAACuB,IAAI,CAAC,iCAAiC;oBAChDqF,UAAUd,OAAOe,EAAE;oBACnBS;gBACF;YACF;QACF;QAEA,qEAAqE;QACrE,IAAI,CAACC,+BAA+B;IACtC;IAEA;;GAEC,GACD,AAAQA,kCAAwC;QAC9C,MAAMC,eAAe,IAAI,CAACzH,MAAM,CAACK,kBAAkB;QAEnD,sBAAsB;QACtBoH,aAAab,EAAE,CAAC,qBAAqB,CAACH;YACpC,IAAI,CAAC1G,EAAE,CAAC2H,EAAE,CAAC,gBAAgBC,IAAI,CAAC,oBAAoB;gBAClDC,MAAM;gBACNnB;gBACA5B,WAAW,IAAIC,OAAOC,WAAW;YACnC;QACF;QAEA,0BAA0B;QAC1B0C,aAAab,EAAE,CAAC,mBAAmB,CAACH;YAClC,IAAI,CAAC1G,EAAE,CAAC2H,EAAE,CAAC,aAAaC,IAAI,CAAC,mBAAmB;gBAC9CC,MAAM;gBACNnB;gBACA5B,WAAW,IAAIC,OAAOC,WAAW;YACnC;QACF;QAEA,mBAAmB;QACnB0C,aAAab,EAAE,CAAC,kBAAkB,CAACH;YACjC,IAAI,CAAC1G,EAAE,CAAC2H,EAAE,CAAC,UAAUC,IAAI,CAAC,kBAAkB;gBAC1CC,MAAM;gBACNnB;gBACA5B,WAAW,IAAIC,OAAOC,WAAW;YACnC;QACF;QAEA,kBAAkB;QAClB0C,aAAab,EAAE,CAAC,iBAAiB,CAACH;YAChC,IAAI,CAAC1G,EAAE,CAAC2H,EAAE,CAAC,WAAWC,IAAI,CAAC,iBAAiB;gBAC1CC,MAAM;gBACNnB;gBACA5B,WAAW,IAAIC,OAAOC,WAAW;YACnC;QACF;QAEA,qBAAqB;QACrB0C,aAAab,EAAE,CAAC,oBAAoB,CAACH;YACnC,IAAI,CAAC1G,EAAE,CAAC2H,EAAE,CAAC,UAAUC,IAAI,CAAC,oBAAoB;gBAC5CC,MAAM;gBACNnB;gBACA5B,WAAW,IAAIC,OAAOC,WAAW;YACnC;QACF;IACF;IAEA;;GAEC,GACD,AAAQ1D,qBAA2B;QACjC,uBAAuB;QACvB,IAAI,CAACxB,GAAG,CAACsD,GAAG,CAAClE,aAAa,IAAI,CAACgB,MAAM;QAErC,sCAAsC;QACtCyC,QAAQkE,EAAE,CAAC,sBAAsB,CAACW,QAAQM;YACxC,IAAI,CAAC5H,MAAM,CAACsC,KAAK,CAAC,+BAA+B;gBAAEgF;gBAAQM;YAAQ;QACrE;QAEA,6BAA6B;QAC7BnF,QAAQkE,EAAE,CAAC,qBAAqB,CAACrE;YAC/B,IAAI,CAACtC,MAAM,CAACsC,KAAK,CAAC,sBAAsBA;YACxCG,QAAQoF,IAAI,CAAC;QACf;IACF;IAEA;;GAEC,GACD,MAAcC,cACZC,GAAW,EACXC,OAAyB,EACzBC,MAAc,IAAI,EACN;QACZ,MAAMC,SAAS,IAAI,CAAChI,SAAS,CAACsE,GAAG,CAACuD;QAClC,MAAMI,MAAMtD,KAAKsD,GAAG;QAEpB,IAAID,UAAU,AAACC,MAAMD,OAAOtD,SAAS,GAAIsD,OAAOD,GAAG,EAAE;YACnD,OAAOC,OAAO1B,IAAI;QACpB;QAEA,MAAMA,OAAO,MAAMwB;QACnB,IAAI,CAAC9H,SAAS,CAACkI,GAAG,CAACL,KAAK;YACtBvB;YACA5B,WAAWuD;YACXF;QACF;QAEA,OAAOzB;IACT;IAEA;;GAEC,GACD,AAAQ6B,WAAWN,GAAY,EAAQ;QACrC,IAAIA,KAAK;YACP,IAAI,CAAC7H,SAAS,CAACoI,MAAM,CAACP;QACxB,OAAO;YACL,IAAI,CAAC7H,SAAS,CAACqI,KAAK;QACtB;IACF;AACF;AAEA;;CAEC,GACD,OAAO,eAAeC,gBACpBzI,MAAiC;IAEjC,MAAMF,SAAS,IAAIF,sBAAsBI;IACzC,MAAMF,OAAOwB,KAAK;IAClB,OAAOxB;AACT;AAEA;;CAEC,GACD,eAAeF,sBAAsB"}
1
+ {"version":3,"sources":["../../../../../src/web/api/server.ts"],"names":["express","createServer","Server","SocketIOServer","cors","helmet","compression","rateLimit","v4","uuidv4","TransparencySystem","authMiddleware","errorHandler","requestLogger","cacheMiddleware","hierarchyRoutes","statusRoutes","eventsRoutes","metricsRoutes","analyticsRoutes","systemRoutes","createApiConfig","Logger","TransparencyApiServer","app","server","io","config","logger","isStarted","dataCache","Map","transparencySystem","enableWebSocketAuth","enableApiDocs","enableHealthCheck","level","logLevel","format","destination","origin","corsOrigins","methods","credentials","transports","setupMiddleware","setupRoutes","setupWebSocket","setupErrorHandling","start","warn","info","port","host","environment","initialize","enableRealTimeMonitoring","enableEventStreaming","metricsUpdateIntervalMs","heartbeatIntervalMs","startMonitoring","Promise","resolve","reject","listen","err","error","url","nodeVersion","process","version","stop","stopMonitoring","cleanup","close","getApp","getSocketIOServer","getConfig","use","contentSecurityPolicy","directives","defaultSrc","styleSrc","scriptSrc","imgSrc","connectSrc","allowedHeaders","preflightContinue","optionsSuccessStatus","json","limit","urlencoded","extended","limiter","windowMs","max","rateLimitWindowMs","message","standardHeaders","legacyHeaders","get","req","res","status","timestamp","Date","toISOString","uptime","env","npm_package_version","name","description","endpoints","hierarchy","events","metrics","analytics","system","websocket","documentation","method","originalUrl","socket","next","token","handshake","auth","headers","authorization","replace","Error","length","data","userId","slice","on","socketId","id","channels","Array","isArray","forEach","channel","join","debug","leave","reason","setupTransparencyEventListeners","transparency","to","emit","type","promise","exit","getCachedData","key","fetchFn","ttl","cached","now","set","clearCache","delete","clear","createApiServer"],"mappings":"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"}
@@ -4,9 +4,14 @@ export class ProgressiveRolloutManager extends EventEmitter {
4
4
  configs = new Map();
5
5
  healthCheckIntervals = new Map();
6
6
  metricsCollectors = new Map();
7
+ isShutdown = false;
7
8
  constructor(){
8
9
  super();
9
10
  this.initializeDefaultConfigs();
11
+ // Register automatic cleanup on process termination
12
+ process.on('SIGTERM', ()=>this.destroy());
13
+ process.on('SIGINT', ()=>this.destroy());
14
+ process.on('beforeExit', ()=>this.destroy());
10
15
  }
11
16
  initializeDefaultConfigs() {
12
17
  // Canary deployment configuration
@@ -703,8 +708,33 @@ export class ProgressiveRolloutManager extends EventEmitter {
703
708
  return Array.from(this.rollouts.values()).filter((r)=>r.featureId === featureId);
704
709
  }
705
710
  getRolloutsByStatus(status) {
711
+ if (this.isShutdown) {
712
+ throw new Error('ProgressiveRolloutManager is shutdown');
713
+ }
706
714
  return Array.from(this.rollouts.values()).filter((r)=>r.status === status);
707
715
  }
716
+ /**
717
+ * Clean up resources to prevent memory leaks
718
+ */ destroy() {
719
+ if (this.isShutdown) return; // Idempotent guard
720
+ this.isShutdown = true;
721
+ // Clear all health check intervals
722
+ for (const interval of this.healthCheckIntervals.values()){
723
+ clearInterval(interval);
724
+ }
725
+ this.healthCheckIntervals.clear();
726
+ // Clear all metrics collection intervals
727
+ for (const interval of this.metricsCollectors.values()){
728
+ clearInterval(interval);
729
+ }
730
+ this.metricsCollectors.clear();
731
+ // Clean up event listeners
732
+ this.removeAllListeners();
733
+ // Clear data structures
734
+ this.rollouts.clear();
735
+ this.configs.clear();
736
+ console.log('ProgressiveRolloutManager cleanup completed');
737
+ }
708
738
  }
709
739
 
710
740
  //# sourceMappingURL=progressive-rollout-manager.js.map