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
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/coordination/shared/message-broker.ts"],"names":["EventEmitter","RateLimiter","MessagePriority","MessageUtils","DeliverySemantics","PayloadValidator","MessageBrokerError","Error","message","name","PriorityQueue","items","enqueue","item","push","sort","a","b","priority","dequeue","shift","peek","length","size","clear","MessageBroker","emitter","subscriptions","pendingRequests","messageQueue","config","stats","processing","subscriptionCounter","senderQueueSizes","deadLetterQueue","rateLimiters","rateLimiterCleanupInterval","payloadValidator","agentSubscriptions","subscriptionCleanupInterval","setMaxListeners","Map","maxQueueSize","maxQueueSizePerSender","enableDeadLetterQueue","priorityEvictionThreshold","defaultRequestTimeout","enableStats","maxConcurrency","maxSubscriptions","maxSubscriptionsPerAgent","subscriptionTTL","cleanupIntervalMs","authorizationProvider","rateLimit","maxMessagesPerSecond","maxBurstSize","strategy","undefined","payloadValidation","totalPublished","totalDelivered","totalFailed","totalSubscriptions","messagesByTopic","messagesByPriority","avgDeliveryTime","startRateLimiterCleanup","startSubscriptionCleanup","subscribe","topic","validateTopicName","handler","subscriberId","agentSubs","get","Set","authorized","canSubscribe","subscriptionId","Date","now","internalSub","id","createdAt","filter","expiresAt","has","set","topicSubs","add","unsubscribe","Array","from","keys","subs","index","findIndex","sub","splice","delete","publish","validateConfig","validationResult","validate","payload","valid","emit","errors","senderId","join","sanitizedPayload","sanitize","allowed","checkRateLimit","currentSenderSize","process","env","DEBUG_MESSAGE_BROKER","console","log","evictionThreshold","Math","floor","messagePriority","normalizePriority","evicted","evictLowPriorityMessages","queueSize","evictedMessages","threshold","generateMessageId","timestamp","replyTo","correlationId","recipientId","deliverySemantics","AT_LEAST_ONCE","metadata","processQueue","catch","error","broadcast","request","options","generateCorrelationId","timeout","NORMAL","replyTopic","Promise","resolve","reject","timeoutId","setTimeout","expectedSender","resolved","clearTimeout","reply","success","createReply","hasHandlers","hasMatchingHandlers","deliverMessage","senderSize","topicPattern","matchesTopic","startTime","matchingHandlers","cleanupExpiredSubscriptions","pendingRequest","warn","subscription","deliveryTime","getStats","resetStats","getSubscriptions","result","values","getQueueSize","getPendingRequestCount","includes","validTopicPattern","test","limiter","tokensPerInterval","interval","fireImmediately","remainingTokens","removeTokens","setInterval","entries","toKeep","slice","forEach","key","value","incomingPriority","lowestIndex","lowestPriority","i","candidate","getDeadLetterQueueSize","getRateLimiterCount","getDeadLetterMessages","count","clearDeadLetterQueue","cleanupInterval","expiredCount","validSubs","pending","clearInterval","removeAllListeners","shutdown","onError","on"],"mappings":"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"}
@@ -0,0 +1,138 @@
1
+ /**
2
+ * Agent Coordination V2 - Message Interface and Types
3
+ *
4
+ * Defines the core message structure for the message bus, supporting
5
+ * pub/sub, request/reply, and broadcast communication patterns.
6
+ *
7
+ * @module coordination/shared/message
8
+ */ /**
9
+ * Message priority levels (0-10 scale).
10
+ * Higher values indicate more urgent messages.
11
+ */ export var MessagePriority = /*#__PURE__*/ function(MessagePriority) {
12
+ /** Critical system messages (10) */ MessagePriority[MessagePriority["CRITICAL"] = 10] = "CRITICAL";
13
+ /** High priority operational messages (8) */ MessagePriority[MessagePriority["HIGH"] = 8] = "HIGH";
14
+ /** Normal priority messages (5) - default */ MessagePriority[MessagePriority["NORMAL"] = 5] = "NORMAL";
15
+ /** Low priority background messages (2) */ MessagePriority[MessagePriority["LOW"] = 2] = "LOW";
16
+ /** Informational/logging messages (0) */ MessagePriority[MessagePriority["INFORMATIONAL"] = 0] = "INFORMATIONAL";
17
+ return MessagePriority;
18
+ }({});
19
+ /**
20
+ * Message delivery semantics.
21
+ */ export var DeliverySemantics = /*#__PURE__*/ function(DeliverySemantics) {
22
+ /** At-least-once delivery (default) */ DeliverySemantics["AT_LEAST_ONCE"] = "at-least-once";
23
+ /** At-most-once delivery (fire-and-forget) */ DeliverySemantics["AT_MOST_ONCE"] = "at-most-once";
24
+ /** Exactly-once delivery (requires deduplication) */ DeliverySemantics["EXACTLY_ONCE"] = "exactly-once";
25
+ return DeliverySemantics;
26
+ }({});
27
+ /**
28
+ * Message validation error.
29
+ */ export class MessageValidationError extends Error {
30
+ messageId;
31
+ constructor(message, messageId){
32
+ super(message), this.messageId = messageId;
33
+ this.name = 'MessageValidationError';
34
+ }
35
+ }
36
+ /**
37
+ * Utility functions for message validation and creation.
38
+ */ export class MessageUtils {
39
+ /**
40
+ * Validates a message configuration.
41
+ *
42
+ * @param config - Message configuration to validate
43
+ * @throws {MessageValidationError} If configuration is invalid
44
+ */ static validateConfig(config) {
45
+ if (!config.topic || typeof config.topic !== 'string') {
46
+ throw new MessageValidationError('Message topic must be a non-empty string');
47
+ }
48
+ if (config.payload === undefined || config.payload === null) {
49
+ throw new MessageValidationError('Message payload is required');
50
+ }
51
+ if (config.priority !== undefined) {
52
+ if (typeof config.priority !== 'number' || isNaN(config.priority)) {
53
+ throw new MessageValidationError('Priority must be a valid number');
54
+ }
55
+ if (config.priority < 0 || config.priority > 10) {
56
+ throw new MessageValidationError('Priority must be between 0 and 10');
57
+ }
58
+ }
59
+ if (config.replyTo !== undefined && typeof config.replyTo !== 'string') {
60
+ throw new MessageValidationError('Reply-to must be a string');
61
+ }
62
+ if (config.correlationId !== undefined && typeof config.correlationId !== 'string') {
63
+ throw new MessageValidationError('Correlation ID must be a string');
64
+ }
65
+ }
66
+ /**
67
+ * Normalizes priority to valid range (0-10).
68
+ *
69
+ * @param priority - Priority value to normalize
70
+ * @returns Normalized priority
71
+ */ static normalizePriority(priority) {
72
+ if (priority === undefined || priority === null) {
73
+ return 5;
74
+ }
75
+ if (typeof priority !== 'number' || isNaN(priority)) {
76
+ return 5;
77
+ }
78
+ return Math.max(0, Math.min(10, Math.round(priority)));
79
+ }
80
+ /**
81
+ * Generates a unique message ID.
82
+ *
83
+ * @returns UUID v4 string
84
+ */ static generateMessageId() {
85
+ return `msg-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
86
+ }
87
+ /**
88
+ * Generates a unique correlation ID.
89
+ *
90
+ * @returns UUID v4 string
91
+ */ static generateCorrelationId() {
92
+ return `corr-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
93
+ }
94
+ /**
95
+ * Checks if a topic matches a topic pattern (supports wildcards).
96
+ *
97
+ * @param topic - Actual message topic
98
+ * @param pattern - Topic pattern (supports * and **)
99
+ * @returns True if topic matches pattern
100
+ *
101
+ * @example
102
+ * ```typescript
103
+ * MessageUtils.matchesTopic('task.completed', 'task.*'); // true
104
+ * MessageUtils.matchesTopic('agent.status.online', 'agent.**'); // true
105
+ * MessageUtils.matchesTopic('task.failed', 'task.completed'); // false
106
+ * ```
107
+ */ static matchesTopic(topic, pattern) {
108
+ if (pattern === '*' || pattern === '**') {
109
+ return true; // Match all
110
+ }
111
+ if (!pattern.includes('*')) {
112
+ return topic === pattern; // Exact match
113
+ }
114
+ // Convert pattern to regex
115
+ const regexPattern = pattern.replace(/\./g, '\\.').replace(/\*\*/g, '.*').replace(/\*/g, '[^.]*');
116
+ const regex = new RegExp(`^${regexPattern}$`);
117
+ return regex.test(topic);
118
+ }
119
+ /**
120
+ * Creates a reply message from a request.
121
+ *
122
+ * @param request - Original request message
123
+ * @param payload - Reply payload
124
+ * @param success - Success status (default: true)
125
+ * @param error - Error message if failed
126
+ * @returns Reply object
127
+ */ static createReply(request, payload, success = true, error) {
128
+ return {
129
+ correlationId: request.correlationId || request.id,
130
+ payload,
131
+ success,
132
+ error,
133
+ timestamp: Date.now()
134
+ };
135
+ }
136
+ }
137
+
138
+ //# sourceMappingURL=message.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/coordination/shared/message.ts"],"names":["MessagePriority","DeliverySemantics","MessageValidationError","Error","message","messageId","name","MessageUtils","validateConfig","config","topic","payload","undefined","priority","isNaN","replyTo","correlationId","normalizePriority","Math","max","min","round","generateMessageId","Date","now","random","toString","substr","generateCorrelationId","matchesTopic","pattern","includes","regexPattern","replace","regex","RegExp","test","createReply","request","success","error","id","timestamp"],"mappings":"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"}
@@ -0,0 +1,259 @@
1
+ /**
2
+ * Payload Validator - SEC-INJ-001 Mitigation
3
+ *
4
+ * Validates and sanitizes message payloads to prevent:
5
+ * - Prototype pollution attacks
6
+ * - Code injection via eval/Function
7
+ * - Memory bombs (deeply nested objects)
8
+ * - Oversized payloads
9
+ *
10
+ * @module coordination/shared/security/payload-validator
11
+ */ /**
12
+ * Payload validation rule configuration.
13
+ */ /**
14
+ * Payload validation error.
15
+ */ export class PayloadValidationError extends Error {
16
+ constructor(message){
17
+ super(message);
18
+ this.name = 'PayloadValidationError';
19
+ }
20
+ }
21
+ /**
22
+ * Payload Validator Implementation.
23
+ *
24
+ * Provides comprehensive validation and sanitization of message payloads
25
+ * to prevent injection attacks and resource exhaustion.
26
+ *
27
+ * @example
28
+ * ```typescript
29
+ * const validator = new PayloadValidator({
30
+ * maxDepth: 5,
31
+ * maxSize: 1024 * 1024,
32
+ * forbiddenKeys: ['__proto__', 'constructor', 'prototype'],
33
+ * allowedTypes: ['string', 'number', 'boolean', 'object', 'array']
34
+ * });
35
+ *
36
+ * const result = validator.validate(userPayload);
37
+ * if (!result.valid) {
38
+ * throw new Error(`Validation failed: ${result.errors.join(', ')}`);
39
+ * }
40
+ *
41
+ * const sanitized = validator.sanitize(userPayload);
42
+ * ```
43
+ */ export class PayloadValidator {
44
+ rules;
45
+ /**
46
+ * Default validation rules (secure defaults).
47
+ */ static DEFAULT_RULES = {
48
+ maxDepth: 5,
49
+ maxSize: 1024 * 1024,
50
+ allowedTypes: [
51
+ 'string',
52
+ 'number',
53
+ 'boolean',
54
+ 'object',
55
+ 'array',
56
+ 'null'
57
+ ],
58
+ forbiddenKeys: [
59
+ '__proto__',
60
+ 'constructor',
61
+ 'prototype',
62
+ 'eval',
63
+ 'Function'
64
+ ]
65
+ };
66
+ /**
67
+ * Creates a new payload validator.
68
+ *
69
+ * @param rules - Validation rules (uses secure defaults if not provided)
70
+ */ constructor(rules){
71
+ this.rules = {
72
+ ...PayloadValidator.DEFAULT_RULES,
73
+ ...rules
74
+ };
75
+ }
76
+ /**
77
+ * Validates a payload against configured rules.
78
+ *
79
+ * @param payload - Payload to validate
80
+ * @returns Validation result with errors if any
81
+ */ validate(payload) {
82
+ const errors = [];
83
+ try {
84
+ // SEC-INJ-001-BYPASS: Check for prototype chain pollution BEFORE serialization
85
+ // Object literals with __proto__ can pollute the prototype chain before validation runs
86
+ if (typeof payload === 'object' && payload !== null) {
87
+ const proto = Object.getPrototypeOf(payload);
88
+ if (proto !== Object.prototype && proto !== null) {
89
+ errors.push(`Prototype pollution detected: object has modified prototype chain`);
90
+ }
91
+ }
92
+ // SEC-INJ-001: Check payload size
93
+ const serialized = JSON.stringify(payload);
94
+ const size = Buffer.byteLength(serialized, 'utf8');
95
+ if (size > this.rules.maxSize) {
96
+ errors.push(`Payload size ${size} bytes exceeds maximum ${this.rules.maxSize} bytes`);
97
+ }
98
+ // SEC-INJ-001: Check object depth
99
+ const depth = this.getObjectDepth(payload);
100
+ if (depth > this.rules.maxDepth) {
101
+ errors.push(`Payload depth ${depth} exceeds maximum depth ${this.rules.maxDepth}`);
102
+ }
103
+ // SEC-INJ-001: Check for forbidden keys (prototype pollution vectors)
104
+ const allKeys = this.getAllKeys(payload);
105
+ const foundForbidden = allKeys.filter((key)=>this.rules.forbiddenKeys.includes(key));
106
+ if (foundForbidden.length > 0) {
107
+ errors.push(`Forbidden keys detected: ${foundForbidden.join(', ')}`);
108
+ }
109
+ // SEC-INJ-001: Check for dangerous type patterns
110
+ const typeErrors = this.validateTypes(payload);
111
+ errors.push(...typeErrors);
112
+ return {
113
+ valid: errors.length === 0,
114
+ errors,
115
+ depth,
116
+ size
117
+ };
118
+ } catch (error) {
119
+ // Catch circular reference or serialization errors
120
+ return {
121
+ valid: false,
122
+ errors: [
123
+ `Validation error: ${error instanceof Error ? error.message : String(error)}`
124
+ ]
125
+ };
126
+ }
127
+ }
128
+ /**
129
+ * Sanitizes a payload by removing dangerous keys and normalizing structure.
130
+ *
131
+ * Creates a deep clone with prototype chain stripped to prevent pollution attacks.
132
+ *
133
+ * @param payload - Payload to sanitize
134
+ * @returns Sanitized payload (deep frozen)
135
+ */ sanitize(payload) {
136
+ if (payload === null || payload === undefined) {
137
+ return payload;
138
+ }
139
+ // SEC-INJ-001: JSON round-trip removes prototype chain and functions
140
+ const serialized = JSON.stringify(payload);
141
+ const parsed = JSON.parse(serialized);
142
+ // SEC-INJ-001: Remove forbidden keys recursively
143
+ const cleaned = this.removeForbiddenKeys(parsed);
144
+ // SEC-INJ-001: Deep freeze to prevent modification
145
+ return this.deepFreeze(cleaned);
146
+ }
147
+ /**
148
+ * Gets the maximum depth of an object.
149
+ *
150
+ * @param obj - Object to measure
151
+ * @param currentDepth - Current recursion depth (internal)
152
+ * @returns Maximum nesting depth
153
+ */ getObjectDepth(obj, currentDepth = 0) {
154
+ if (obj === null || typeof obj !== 'object') {
155
+ return currentDepth;
156
+ }
157
+ if (Array.isArray(obj)) {
158
+ if (obj.length === 0) return currentDepth + 1;
159
+ return Math.max(...obj.map((item)=>this.getObjectDepth(item, currentDepth + 1)));
160
+ }
161
+ const keys = Object.keys(obj);
162
+ if (keys.length === 0) return currentDepth + 1;
163
+ return Math.max(...keys.map((key)=>this.getObjectDepth(obj[key], currentDepth + 1)));
164
+ }
165
+ /**
166
+ * Extracts all keys from an object recursively.
167
+ *
168
+ * @param obj - Object to extract keys from
169
+ * @returns Array of all keys (including nested)
170
+ */ getAllKeys(obj) {
171
+ if (obj === null || typeof obj !== 'object') {
172
+ return [];
173
+ }
174
+ const keys = [];
175
+ if (Array.isArray(obj)) {
176
+ obj.forEach((item)=>{
177
+ keys.push(...this.getAllKeys(item));
178
+ });
179
+ } else {
180
+ // FIX SEC-INJ-001: Use getOwnPropertyNames + getOwnPropertySymbols
181
+ // to detect non-enumerable properties like __proto__, constructor
182
+ const propertyNames = Object.getOwnPropertyNames(obj);
183
+ const propertySymbols = Object.getOwnPropertySymbols(obj);
184
+ propertyNames.forEach((key)=>{
185
+ keys.push(key);
186
+ keys.push(...this.getAllKeys(obj[key]));
187
+ });
188
+ // Include symbol properties for comprehensive coverage
189
+ propertySymbols.forEach((sym)=>{
190
+ keys.push(sym.toString());
191
+ keys.push(...this.getAllKeys(obj[sym]));
192
+ });
193
+ }
194
+ return keys;
195
+ }
196
+ /**
197
+ * Validates payload types recursively.
198
+ *
199
+ * @param obj - Object to validate
200
+ * @returns Array of type validation errors
201
+ */ validateTypes(obj) {
202
+ const errors = [];
203
+ if (obj === null) {
204
+ return errors; // null is allowed
205
+ }
206
+ const type = Array.isArray(obj) ? 'array' : typeof obj;
207
+ if (!this.rules.allowedTypes.includes(type)) {
208
+ errors.push(`Type '${type}' not allowed in payload`);
209
+ return errors; // Don't recurse into invalid types
210
+ }
211
+ if (type === 'object' || type === 'array') {
212
+ const values = Array.isArray(obj) ? obj : Object.values(obj);
213
+ values.forEach((value)=>{
214
+ errors.push(...this.validateTypes(value));
215
+ });
216
+ }
217
+ return errors;
218
+ }
219
+ /**
220
+ * Removes forbidden keys from object recursively.
221
+ *
222
+ * @param obj - Object to clean
223
+ * @returns Cleaned object
224
+ */ removeForbiddenKeys(obj) {
225
+ if (obj === null || typeof obj !== 'object') {
226
+ return obj;
227
+ }
228
+ if (Array.isArray(obj)) {
229
+ return obj.map((item)=>this.removeForbiddenKeys(item));
230
+ }
231
+ const cleaned = {};
232
+ Object.keys(obj).forEach((key)=>{
233
+ if (!this.rules.forbiddenKeys.includes(key)) {
234
+ cleaned[key] = this.removeForbiddenKeys(obj[key]);
235
+ }
236
+ });
237
+ return cleaned;
238
+ }
239
+ /**
240
+ * Deep freezes an object to prevent modification.
241
+ *
242
+ * @param obj - Object to freeze
243
+ * @returns Frozen object
244
+ */ deepFreeze(obj) {
245
+ if (obj === null || typeof obj !== 'object') {
246
+ return obj;
247
+ }
248
+ if (Array.isArray(obj)) {
249
+ obj.forEach((item)=>this.deepFreeze(item));
250
+ } else {
251
+ Object.keys(obj).forEach((key)=>{
252
+ this.deepFreeze(obj[key]);
253
+ });
254
+ }
255
+ return Object.freeze(obj);
256
+ }
257
+ }
258
+
259
+ //# sourceMappingURL=payload-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/coordination/shared/security/payload-validator.ts"],"names":["PayloadValidationError","Error","message","name","PayloadValidator","rules","DEFAULT_RULES","maxDepth","maxSize","allowedTypes","forbiddenKeys","validate","payload","errors","proto","Object","getPrototypeOf","prototype","push","serialized","JSON","stringify","size","Buffer","byteLength","depth","getObjectDepth","allKeys","getAllKeys","foundForbidden","filter","key","includes","length","join","typeErrors","validateTypes","valid","error","String","sanitize","undefined","parsed","parse","cleaned","removeForbiddenKeys","deepFreeze","obj","currentDepth","Array","isArray","Math","max","map","item","keys","forEach","propertyNames","getOwnPropertyNames","propertySymbols","getOwnPropertySymbols","sym","toString","type","values","value","freeze"],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Shared Coordination Transparency System
3
+ *
4
+ * Comprehensive transparency and monitoring for multi-level agent coordination.
5
+ * Provides real-time visibility into agent operations, hierarchy relationships,
6
+ * and performance metrics.
7
+ *
8
+ * @module coordination/shared/transparency
9
+ */ // Core interfaces and types
10
+ // Core implementation
11
+ export { TransparencySystem } from './transparency-system.js';
12
+ // Integration layer
13
+ export { TransparentCoordinator, withTransparency } from './transparency-integration.js';
14
+ // CLI interface
15
+ export { createTransparencyCommand } from '../../../cli/commands/transparency.js';
16
+
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/coordination/shared/transparency/index.ts"],"names":["TransparencySystem","TransparentCoordinator","withTransparency","createTransparencyCommand"],"mappings":"AAAA;;;;;;;;CAQC,GAED,4BAA4B;AAW5B,sBAAsB;AACtB,SAASA,kBAAkB,QAAQ,2BAA2B;AAE9D,oBAAoB;AACpB,SAASC,sBAAsB,EAAEC,gBAAgB,QAAQ,gCAAgC;AAEzF,gBAAgB;AAChB,SAASC,yBAAyB,QAAQ,wCAAwC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Agent Transparency System - V2 Coordination Enhancement
3
+ *
4
+ * Provides comprehensive visibility into multi-level agent operations,
5
+ * hierarchy relationships, and real-time status monitoring.
6
+ *
7
+ * @module coordination/shared/transparency/transparency-system
8
+ */ /**
9
+ * ITransparencySystem - Interface for agent transparency
10
+ *
11
+ * Provides comprehensive visibility into multi-level agent coordination:
12
+ * - Real-time agent hierarchy visualization
13
+ * - Agent lifecycle event streaming
14
+ * - Performance monitoring and alerting
15
+ * - Dependency relationship tracking
16
+ * - Resource allocation transparency
17
+ */ export { };
18
+
19
+ //# sourceMappingURL=transparency-system.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../src/coordination/shared/transparency/interfaces/transparency-system.ts"],"names":[],"mappings":"AAAA;;;;;;;CAOC,GA2RD;;;;;;;;;CASC,GACD,WAuLC"}