claude-flow-novice 1.6.1 → 1.6.3

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 (273) hide show
  1. package/.claude/agents/cfn-loop/product-owner.md +54 -4
  2. package/.claude/commands/cfn-claude-sync.md +303 -0
  3. package/.claude/commands/cfn-loop-epic.md +290 -0
  4. package/.claude/commands/cfn-loop-single.md +168 -0
  5. package/.claude/commands/cfn-loop-sprints.md +384 -0
  6. package/.claude/commands/cfn-loop.md +180 -0
  7. package/.claude/commands/metrics-summary.md +58 -0
  8. package/.claude/commands/parse-epic.md +357 -0
  9. package/.claude/settings.json +5 -4
  10. package/.claude/settings.local.json +9 -2
  11. package/.claude-flow-novice/.claude/agents/cfn-loop/product-owner.md +792 -0
  12. package/.claude-flow-novice/dist/mcp/server.js +21 -2
  13. package/.claude-flow-novice/dist/src/api/auth-service.js +84 -38
  14. package/.claude-flow-novice/dist/src/api/auth-service.js.map +1 -1
  15. package/.claude-flow-novice/dist/src/api/claude-client.js +138 -3
  16. package/.claude-flow-novice/dist/src/api/claude-client.js.map +1 -1
  17. package/.claude-flow-novice/dist/src/cfn-loop/phase-orchestrator-example.js +1 -1
  18. package/.claude-flow-novice/dist/src/cfn-loop/scope-control.js +247 -0
  19. package/.claude-flow-novice/dist/src/cfn-loop/scope-control.js.map +1 -0
  20. package/.claude-flow-novice/dist/src/cli/commands/swarm.js +32 -15
  21. package/.claude-flow-novice/dist/src/cli/commands/swarm.js.map +1 -1
  22. package/.claude-flow-novice/dist/src/cli/commands/transparency.js +455 -0
  23. package/.claude-flow-novice/dist/src/cli/commands/transparency.js.map +1 -0
  24. package/.claude-flow-novice/dist/src/cli/simple-commands/init/templates/CLAUDE.md +129 -13
  25. package/.claude-flow-novice/dist/src/components/visualizations/index.js +9 -0
  26. package/.claude-flow-novice/dist/src/components/visualizations/index.js.map +1 -0
  27. package/.claude-flow-novice/dist/src/coordination/adapters/v1-coordinator-adapter.js +462 -0
  28. package/.claude-flow-novice/dist/src/coordination/adapters/v1-coordinator-adapter.js.map +1 -0
  29. package/.claude-flow-novice/dist/src/coordination/config-translator.js +248 -0
  30. package/.claude-flow-novice/dist/src/coordination/config-translator.js.map +1 -0
  31. package/.claude-flow-novice/dist/src/coordination/coordination-toggle.js +287 -0
  32. package/.claude-flow-novice/dist/src/coordination/coordination-toggle.js.map +1 -0
  33. package/.claude-flow-novice/dist/src/coordination/distributed-consensus.js +68 -9
  34. package/.claude-flow-novice/dist/src/coordination/distributed-consensus.js.map +1 -1
  35. package/.claude-flow-novice/dist/src/coordination/feature-flags.js +166 -0
  36. package/.claude-flow-novice/dist/src/coordination/feature-flags.js.map +1 -0
  37. package/.claude-flow-novice/dist/src/coordination/queen-agent.js +18 -4
  38. package/.claude-flow-novice/dist/src/coordination/queen-agent.js.map +1 -1
  39. package/.claude-flow-novice/dist/src/coordination/role-assignment.js +6 -110
  40. package/.claude-flow-novice/dist/src/coordination/role-assignment.js.map +1 -1
  41. package/.claude-flow-novice/dist/src/coordination/v2/cache/artifact-cache-optimizer.js +632 -0
  42. package/.claude-flow-novice/dist/src/coordination/v2/cache/artifact-cache-optimizer.js.map +1 -0
  43. package/.claude-flow-novice/dist/src/coordination/v2/cache/index.js +11 -0
  44. package/.claude-flow-novice/dist/src/coordination/v2/cache/index.js.map +1 -0
  45. package/.claude-flow-novice/dist/src/coordination/v2/checkpoints/checkpoint-compressor.js +318 -0
  46. package/.claude-flow-novice/dist/src/coordination/v2/checkpoints/checkpoint-compressor.js.map +1 -0
  47. package/.claude-flow-novice/dist/src/coordination/v2/coordinators/cascading-shutdown.example.js +364 -0
  48. package/.claude-flow-novice/dist/src/coordination/v2/coordinators/cascading-shutdown.example.js.map +1 -0
  49. package/.claude-flow-novice/dist/src/coordination/v2/coordinators/cascading-shutdown.js +492 -0
  50. package/.claude-flow-novice/dist/src/coordination/v2/coordinators/cascading-shutdown.js.map +1 -0
  51. package/.claude-flow-novice/dist/src/coordination/v2/coordinators/hierarchical-coordinator.js +786 -0
  52. package/.claude-flow-novice/dist/src/coordination/v2/coordinators/hierarchical-coordinator.js.map +1 -0
  53. package/.claude-flow-novice/dist/src/coordination/v2/coordinators/index.js +16 -0
  54. package/.claude-flow-novice/dist/src/coordination/v2/coordinators/index.js.map +1 -0
  55. package/.claude-flow-novice/dist/src/coordination/v2/coordinators/parent-child-manager.js +342 -0
  56. package/.claude-flow-novice/dist/src/coordination/v2/coordinators/parent-child-manager.js.map +1 -0
  57. package/.claude-flow-novice/dist/src/coordination/v2/coordinators/swarm-coordinator-v2.js +601 -0
  58. package/.claude-flow-novice/dist/src/coordination/v2/coordinators/swarm-coordinator-v2.js.map +1 -0
  59. package/.claude-flow-novice/dist/src/coordination/v2/core/help-request-metrics.js +211 -0
  60. package/.claude-flow-novice/dist/src/coordination/v2/core/help-request-metrics.js.map +1 -0
  61. package/.claude-flow-novice/dist/src/coordination/v2/core/index.js +1 -0
  62. package/.claude-flow-novice/dist/src/coordination/v2/core/index.js.map +1 -1
  63. package/.claude-flow-novice/dist/src/coordination/v2/core/message-broker.js +365 -6
  64. package/.claude-flow-novice/dist/src/coordination/v2/core/message-broker.js.map +1 -1
  65. package/.claude-flow-novice/dist/src/coordination/v2/core/resource-manager-safe.js +478 -0
  66. package/.claude-flow-novice/dist/src/coordination/v2/core/resource-manager-safe.js.map +1 -0
  67. package/.claude-flow-novice/dist/src/coordination/v2/core/state-machine-config.js +5 -2
  68. package/.claude-flow-novice/dist/src/coordination/v2/core/state-machine-config.js.map +1 -1
  69. package/.claude-flow-novice/dist/src/coordination/v2/core/state-machine.js +189 -0
  70. package/.claude-flow-novice/dist/src/coordination/v2/core/state-machine.js.map +1 -1
  71. package/.claude-flow-novice/dist/src/coordination/v2/deadlock/deadlock-detector.js +424 -0
  72. package/.claude-flow-novice/dist/src/coordination/v2/deadlock/deadlock-detector.js.map +1 -0
  73. package/.claude-flow-novice/dist/src/coordination/v2/deadlock/index.js +9 -0
  74. package/.claude-flow-novice/dist/src/coordination/v2/deadlock/index.js.map +1 -0
  75. package/.claude-flow-novice/dist/src/coordination/v2/deadlock/resource-manager.js +669 -0
  76. package/.claude-flow-novice/dist/src/coordination/v2/deadlock/resource-manager.js.map +1 -0
  77. package/.claude-flow-novice/dist/src/coordination/v2/dependency/artifact-storage.js +451 -0
  78. package/.claude-flow-novice/dist/src/coordination/v2/dependency/artifact-storage.js.map +1 -0
  79. package/.claude-flow-novice/dist/src/coordination/v2/dependency/cycle-detector.js +271 -0
  80. package/.claude-flow-novice/dist/src/coordination/v2/dependency/cycle-detector.js.map +1 -0
  81. package/.claude-flow-novice/dist/src/coordination/v2/dependency/dependency-graph.js +335 -0
  82. package/.claude-flow-novice/dist/src/coordination/v2/dependency/dependency-graph.js.map +1 -0
  83. package/.claude-flow-novice/dist/src/coordination/v2/dependency/dependency-manager.js +439 -0
  84. package/.claude-flow-novice/dist/src/coordination/v2/dependency/dependency-manager.js.map +1 -0
  85. package/.claude-flow-novice/dist/src/coordination/v2/dependency/dependency-request.js +92 -0
  86. package/.claude-flow-novice/dist/src/coordination/v2/dependency/dependency-request.js.map +1 -0
  87. package/.claude-flow-novice/dist/src/coordination/v2/dependency/index.js +21 -0
  88. package/.claude-flow-novice/dist/src/coordination/v2/dependency/index.js.map +1 -0
  89. package/.claude-flow-novice/dist/src/coordination/v2/dependency/topological-sort.js +223 -0
  90. package/.claude-flow-novice/dist/src/coordination/v2/dependency/topological-sort.js.map +1 -0
  91. package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-coordinator.js +436 -0
  92. package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-coordinator.js.map +1 -0
  93. package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-matcher.js +278 -0
  94. package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-matcher.js.map +1 -0
  95. package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-request-handler.js +317 -0
  96. package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-request-handler.js.map +1 -0
  97. package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-request.js +273 -0
  98. package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-request.js.map +1 -0
  99. package/.claude-flow-novice/dist/src/coordination/v2/help-system/index.js +15 -0
  100. package/.claude-flow-novice/dist/src/coordination/v2/help-system/index.js.map +1 -0
  101. package/.claude-flow-novice/dist/src/coordination/v2/help-system/waiting-agent-pool.js +512 -0
  102. package/.claude-flow-novice/dist/src/coordination/v2/help-system/waiting-agent-pool.js.map +1 -0
  103. package/.claude-flow-novice/dist/src/coordination/v2/index.js +6 -0
  104. package/.claude-flow-novice/dist/src/coordination/v2/index.js.map +1 -1
  105. package/.claude-flow-novice/dist/src/coordination/v2/integration/help-deadlock-integration.js +557 -0
  106. package/.claude-flow-novice/dist/src/coordination/v2/integration/help-deadlock-integration.js.map +1 -0
  107. package/.claude-flow-novice/dist/src/coordination/v2/integration/index.js +14 -0
  108. package/.claude-flow-novice/dist/src/coordination/v2/integration/index.js.map +1 -0
  109. package/.claude-flow-novice/dist/src/coordination/v2/integration/message-bus-completion-integration.example.js +212 -0
  110. package/.claude-flow-novice/dist/src/coordination/v2/integration/message-bus-completion-integration.example.js.map +1 -0
  111. package/.claude-flow-novice/dist/src/coordination/v2/integration/message-bus-completion-integration.js +552 -0
  112. package/.claude-flow-novice/dist/src/coordination/v2/integration/message-bus-completion-integration.js.map +1 -0
  113. package/.claude-flow-novice/dist/src/coordination/v2/memory/dependency-storage.js +367 -0
  114. package/.claude-flow-novice/dist/src/coordination/v2/memory/dependency-storage.js.map +1 -0
  115. package/.claude-flow-novice/dist/src/coordination/v2/memory/index.js +1 -0
  116. package/.claude-flow-novice/dist/src/coordination/v2/memory/index.js.map +1 -1
  117. package/.claude-flow-novice/dist/src/coordination/v2/messaging/channel.js +371 -0
  118. package/.claude-flow-novice/dist/src/coordination/v2/messaging/channel.js.map +1 -0
  119. package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/dependency-channel.js +355 -0
  120. package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/dependency-channel.js.map +1 -0
  121. package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/help-channel.js +424 -0
  122. package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/help-channel.js.map +1 -0
  123. package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/index.js +16 -0
  124. package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/index.js.map +1 -0
  125. package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/state-channel.js +295 -0
  126. package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/state-channel.js.map +1 -0
  127. package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/task-channel.js +411 -0
  128. package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/task-channel.js.map +1 -0
  129. package/.claude-flow-novice/dist/src/coordination/v2/messaging/index.js +14 -0
  130. package/.claude-flow-novice/dist/src/coordination/v2/messaging/index.js.map +1 -0
  131. package/.claude-flow-novice/dist/src/coordination/v2/messaging/message-bus.js +387 -0
  132. package/.claude-flow-novice/dist/src/coordination/v2/messaging/message-bus.js.map +1 -0
  133. package/.claude-flow-novice/dist/src/coordination/v2/messaging/message-persistence.js +589 -0
  134. package/.claude-flow-novice/dist/src/coordination/v2/messaging/message-persistence.js.map +1 -0
  135. package/.claude-flow-novice/dist/src/coordination/v2/messaging/message-router.js +444 -0
  136. package/.claude-flow-novice/dist/src/coordination/v2/messaging/message-router.js.map +1 -0
  137. package/.claude-flow-novice/dist/src/coordination/v2/sdk/checkpoint-manager.js +29 -8
  138. package/.claude-flow-novice/dist/src/coordination/v2/sdk/checkpoint-manager.js.map +1 -1
  139. package/.claude-flow-novice/dist/src/coordination/v2/sdk/help-coordinator.js +470 -0
  140. package/.claude-flow-novice/dist/src/coordination/v2/sdk/help-coordinator.js.map +1 -0
  141. package/.claude-flow-novice/dist/src/coordination/v2/sdk/hierarchical-background-integration.js +450 -0
  142. package/.claude-flow-novice/dist/src/coordination/v2/sdk/hierarchical-background-integration.js.map +1 -0
  143. package/.claude-flow-novice/dist/src/coordination/v2/sdk/index.js +5 -0
  144. package/.claude-flow-novice/dist/src/coordination/v2/sdk/index.js.map +1 -1
  145. package/.claude-flow-novice/dist/src/coordination/v2/sdk/multi-level-control.js +545 -0
  146. package/.claude-flow-novice/dist/src/coordination/v2/sdk/multi-level-control.js.map +1 -0
  147. package/.claude-flow-novice/dist/src/coordination/v2/sdk/query-controller.js +44 -0
  148. package/.claude-flow-novice/dist/src/coordination/v2/sdk/query-controller.js.map +1 -1
  149. package/.claude-flow-novice/dist/src/coordination/v2/sdk/query-message-integration.js +415 -0
  150. package/.claude-flow-novice/dist/src/coordination/v2/sdk/query-message-integration.js.map +1 -0
  151. package/.claude-flow-novice/dist/src/coordination/v2/sdk/session-pool-optimizer.js +615 -0
  152. package/.claude-flow-novice/dist/src/coordination/v2/sdk/session-pool-optimizer.js.map +1 -0
  153. package/.claude-flow-novice/dist/src/coordination/v2/security/payload-validator.js +259 -0
  154. package/.claude-flow-novice/dist/src/coordination/v2/security/payload-validator.js.map +1 -0
  155. package/.claude-flow-novice/dist/src/coordination/v2/transparency/index.js +17 -0
  156. package/.claude-flow-novice/dist/src/coordination/v2/transparency/index.js.map +1 -0
  157. package/.claude-flow-novice/dist/src/coordination/v2/transparency/transparency-integration.js +357 -0
  158. package/.claude-flow-novice/dist/src/coordination/v2/transparency/transparency-integration.js.map +1 -0
  159. package/.claude-flow-novice/dist/src/coordination/v2/transparency/transparency-system.js +679 -0
  160. package/.claude-flow-novice/dist/src/coordination/v2/transparency/transparency-system.js.map +1 -0
  161. package/.claude-flow-novice/dist/src/core/agent-manager.js +30 -0
  162. package/.claude-flow-novice/dist/src/core/agent-manager.js.map +1 -1
  163. package/.claude-flow-novice/dist/src/mcp/server.js +21 -2
  164. package/.claude-flow-novice/dist/src/mcp/server.js.map +1 -1
  165. package/.claude-flow-novice/dist/src/monitoring/apm/apm-integration.js +719 -0
  166. package/.claude-flow-novice/dist/src/monitoring/apm/apm-integration.js.map +1 -0
  167. package/.claude-flow-novice/dist/src/monitoring/apm/datadog-collector.js +363 -0
  168. package/.claude-flow-novice/dist/src/monitoring/apm/datadog-collector.js.map +1 -0
  169. package/.claude-flow-novice/dist/src/monitoring/apm/index.js +97 -0
  170. package/.claude-flow-novice/dist/src/monitoring/apm/index.js.map +1 -0
  171. package/.claude-flow-novice/dist/src/monitoring/apm/newrelic-collector.js +384 -0
  172. package/.claude-flow-novice/dist/src/monitoring/apm/newrelic-collector.js.map +1 -0
  173. package/.claude-flow-novice/dist/src/monitoring/apm/performance-optimizer.js +612 -0
  174. package/.claude-flow-novice/dist/src/monitoring/apm/performance-optimizer.js.map +1 -0
  175. package/.claude-flow-novice/dist/src/monitoring/metrics-collector.js +282 -0
  176. package/.claude-flow-novice/dist/src/monitoring/metrics-collector.js.map +1 -0
  177. package/.claude-flow-novice/dist/src/observability/metrics-counter.js +268 -0
  178. package/.claude-flow-novice/dist/src/observability/metrics-counter.js.map +1 -0
  179. package/.claude-flow-novice/dist/src/observability/metrics-storage.js +265 -0
  180. package/.claude-flow-novice/dist/src/observability/metrics-storage.js.map +1 -0
  181. package/.claude-flow-novice/dist/src/observability/telemetry.js +26 -0
  182. package/.claude-flow-novice/dist/src/observability/telemetry.js.map +1 -1
  183. package/.claude-flow-novice/dist/src/providers/tiered-router.js +64 -10
  184. package/.claude-flow-novice/dist/src/providers/tiered-router.js.map +1 -1
  185. package/.claude-flow-novice/dist/src/providers/zai-provider.js +196 -97
  186. package/.claude-flow-novice/dist/src/providers/zai-provider.js.map +1 -1
  187. package/.claude-flow-novice/dist/src/slash-commands/cfn-claude-sync.js +533 -0
  188. package/.claude-flow-novice/dist/src/slash-commands/index.js +5 -0
  189. package/.claude-flow-novice/dist/src/slash-commands/metrics-summary-class.js +74 -0
  190. package/.claude-flow-novice/dist/src/slash-commands/metrics-summary.js +335 -0
  191. package/.claude-flow-novice/dist/src/slash-commands/register-all-commands.js +12 -0
  192. package/.claude-flow-novice/dist/src/verification/checkpoint-compression-demo.js +96 -0
  193. package/.claude-flow-novice/dist/src/verification/checkpoint-compression-demo.js.map +1 -0
  194. package/.claude-flow-novice/dist/src/verification/checkpoint-compression.js +406 -0
  195. package/.claude-flow-novice/dist/src/verification/checkpoint-compression.js.map +1 -0
  196. package/.claude-flow-novice/dist/src/verification/checkpoint-manager.js +35 -5
  197. package/.claude-flow-novice/dist/src/verification/checkpoint-manager.js.map +1 -1
  198. package/.claude-flow-novice/dist/src/web/api/apm-routes.js +355 -0
  199. package/.claude-flow-novice/dist/src/web/api/apm-routes.js.map +1 -0
  200. package/.claude-flow-novice/dist/src/web/api/config/api-config.js +186 -0
  201. package/.claude-flow-novice/dist/src/web/api/config/api-config.js.map +1 -0
  202. package/.claude-flow-novice/dist/src/web/api/middleware/auth.js +205 -0
  203. package/.claude-flow-novice/dist/src/web/api/middleware/auth.js.map +1 -0
  204. package/.claude-flow-novice/dist/src/web/api/middleware/cache.js +262 -0
  205. package/.claude-flow-novice/dist/src/web/api/middleware/cache.js.map +1 -0
  206. package/.claude-flow-novice/dist/src/web/api/middleware/error-handler.js +250 -0
  207. package/.claude-flow-novice/dist/src/web/api/middleware/error-handler.js.map +1 -0
  208. package/.claude-flow-novice/dist/src/web/api/middleware/request-logger.js +217 -0
  209. package/.claude-flow-novice/dist/src/web/api/middleware/request-logger.js.map +1 -0
  210. package/.claude-flow-novice/dist/src/web/api/middleware/validation.js +325 -0
  211. package/.claude-flow-novice/dist/src/web/api/middleware/validation.js.map +1 -0
  212. package/.claude-flow-novice/dist/src/web/api/routes/events.js +465 -0
  213. package/.claude-flow-novice/dist/src/web/api/routes/events.js.map +1 -0
  214. package/.claude-flow-novice/dist/src/web/api/routes/hierarchy.js +302 -0
  215. package/.claude-flow-novice/dist/src/web/api/routes/hierarchy.js.map +1 -0
  216. package/.claude-flow-novice/dist/src/web/api/routes/index.js +14 -0
  217. package/.claude-flow-novice/dist/src/web/api/routes/index.js.map +1 -0
  218. package/.claude-flow-novice/dist/src/web/api/routes/metrics.js +561 -0
  219. package/.claude-flow-novice/dist/src/web/api/routes/metrics.js.map +1 -0
  220. package/.claude-flow-novice/dist/src/web/api/routes/status.js +450 -0
  221. package/.claude-flow-novice/dist/src/web/api/routes/status.js.map +1 -0
  222. package/.claude-flow-novice/dist/src/web/api/server.js +451 -0
  223. package/.claude-flow-novice/dist/src/web/api/server.js.map +1 -0
  224. package/.claude-flow-novice/dist/src/web/dashboard/hooks/useWebSocket.js +385 -0
  225. package/.claude-flow-novice/dist/src/web/dashboard/hooks/useWebSocket.js.map +1 -0
  226. package/.claude-flow-novice/dist/src/web/dashboard/index.js +87 -0
  227. package/.claude-flow-novice/dist/src/web/dashboard/index.js.map +1 -0
  228. package/.claude-flow-novice/dist/src/web/dashboard/types.js +6 -0
  229. package/.claude-flow-novice/dist/src/web/dashboard/types.js.map +1 -0
  230. package/.claude-flow-novice/dist/src/web/frontend/src/utils/security.js +425 -0
  231. package/.claude-flow-novice/dist/src/web/frontend/src/utils/security.js.map +1 -0
  232. package/.claude-flow-novice/dist/src/web/security/security-middleware.js +379 -0
  233. package/.claude-flow-novice/dist/src/web/security/security-middleware.js.map +1 -0
  234. package/.claude-flow-novice/dist/src/web/websocket/apm-websocket-handler.js +441 -0
  235. package/.claude-flow-novice/dist/src/web/websocket/apm-websocket-handler.js.map +1 -0
  236. package/.claude-flow-novice/dist/src/web/websocket/websocket-manager.js +255 -1
  237. package/.claude-flow-novice/dist/src/web/websocket/websocket-manager.js.map +1 -1
  238. package/.claude-flow-novice/metrics.db +0 -0
  239. package/.claude-flow-novice/metrics.db-shm +0 -0
  240. package/.claude-flow-novice/metrics.db-wal +0 -0
  241. package/AGENT_PERFORMANCE_GUIDELINES.md +88 -0
  242. package/CLAUDE.md +60 -3
  243. package/MEMORY_LEAK_ROOT_CAUSE.md +149 -0
  244. package/README.md +27 -0
  245. package/config/hooks/post-edit-pipeline.js +36 -2
  246. package/examples/metrics-counter-demo.ts +106 -0
  247. package/examples/persistent-metrics-demo.ts +83 -0
  248. package/examples/phase-5-multi-level-control.ts +282 -0
  249. package/examples/session-pool-optimizer-example.ts +311 -0
  250. package/package.json +18 -4
  251. package/scripts/check-routing-stats.cjs +122 -0
  252. package/scripts/monitor-loop.sh +65 -0
  253. package/scripts/monitor-memory.sh +47 -0
  254. package/scripts/monitor.py +43 -0
  255. package/scripts/pre-publish-validation.cjs +212 -0
  256. package/scripts/test-provider-routing.cjs +228 -0
  257. package/scripts/test-routing-telemetry.cjs +147 -0
  258. package/scripts/test-zai-10k.cjs +81 -0
  259. package/scripts/test-zai-api.cjs +191 -0
  260. package/scripts/test-zai-diagnostic.cjs +151 -0
  261. package/scripts/test-zai-final.cjs +128 -0
  262. package/scripts/test-zai-with-env.cjs +85 -0
  263. package/scripts/validate-coordination-cli.js +69 -0
  264. package/scripts/validate-coordination-toggle-integration.cjs +501 -0
  265. package/src/cli/simple-commands/init/templates/CLAUDE.md +29 -0
  266. package/src/observability/metrics-counter.ts +347 -0
  267. package/src/observability/metrics-storage.ts +356 -0
  268. package/src/observability/telemetry.ts +658 -0
  269. package/src/slash-commands/cfn-claude-sync.js +533 -0
  270. package/src/slash-commands/index.js +5 -0
  271. package/src/slash-commands/metrics-summary-class.js +74 -0
  272. package/src/slash-commands/metrics-summary.js +335 -0
  273. package/src/slash-commands/register-all-commands.js +12 -0
@@ -12,8 +12,6 @@
12
12
  * @module coordination/role-assignment
13
13
  */ import { EventEmitter } from 'events';
14
14
  import { generateId } from '../utils/helpers.js';
15
- import * as jwt from 'jsonwebtoken';
16
- import * as crypto from 'crypto';
17
15
  /**
18
16
  * Dynamic Role Assignment System
19
17
  *
@@ -78,8 +76,6 @@ import * as crypto from 'crypto';
78
76
  acknowledgments;
79
77
  conflicts;
80
78
  isInitialized;
81
- agentTokens;
82
- jwtSecret;
83
79
  constructor(config, broker, logger){
84
80
  super(), this.config = config, this.broker = broker, this.logger = logger;
85
81
  this.agentCapabilities = new Map();
@@ -89,12 +85,6 @@ import * as crypto from 'crypto';
89
85
  this.acknowledgments = new Map();
90
86
  this.conflicts = new Map();
91
87
  this.isInitialized = false;
92
- this.agentTokens = new Map();
93
- // Initialize JWT secret from environment or generate secure random secret
94
- this.jwtSecret = process.env.JWT_SECRET || crypto.randomBytes(64).toString('hex');
95
- if (!process.env.JWT_SECRET) {
96
- this.logger.warn('JWT_SECRET not set in environment. Using generated secret (will not persist across restarts)');
97
- }
98
88
  }
99
89
  /**
100
90
  * Initialize role assignment system
@@ -124,76 +114,13 @@ import * as crypto from 'crypto';
124
114
  handler: this.handleAgentFailure.bind(this)
125
115
  });
126
116
  this.isInitialized = true;
127
- this.logger.info('RoleAssignmentSystem initialized with JWT authentication');
128
- }
129
- /**
130
- * Generate JWT token for agent authentication
131
- *
132
- * @param agentId - Unique agent identifier
133
- * @param agentType - Type of agent (e.g., 'backend-dev', 'security-specialist')
134
- * @returns JWT token string
135
- */ generateAgentToken(agentId, agentType) {
136
- const payload = {
137
- agentId,
138
- agentType,
139
- issuedAt: Date.now(),
140
- expiresAt: Date.now() + 24 * 60 * 60 * 1000 // 24 hours
141
- };
142
- const token = jwt.sign(payload, this.jwtSecret, {
143
- algorithm: 'HS256',
144
- expiresIn: '24h'
145
- });
146
- this.agentTokens.set(agentId, token);
147
- this.logger.info(`Generated JWT token for agent ${agentId}`);
148
- return token;
149
- }
150
- /**
151
- * Verify JWT token and extract agent identity
152
- *
153
- * @param token - JWT token to verify
154
- * @returns Verified agent payload or null if invalid
155
- */ verifyAgentToken(token) {
156
- try {
157
- const decoded = jwt.verify(token, this.jwtSecret, {
158
- algorithms: [
159
- 'HS256'
160
- ]
161
- });
162
- // Verify token hasn't expired
163
- if (decoded.expiresAt < Date.now()) {
164
- this.logger.warn(`Token expired for agent ${decoded.agentId}`);
165
- return null;
166
- }
167
- return decoded;
168
- } catch (error) {
169
- this.logger.error('JWT verification failed', {
170
- error: error.message
171
- });
172
- return null;
173
- }
117
+ this.logger.info('RoleAssignmentSystem initialized');
174
118
  }
175
119
  /**
176
120
  * Register agent capabilities (broadcast to peers)
177
121
  *
178
122
  * @param capabilities - Agent capabilities profile
179
- * @param authToken - JWT authentication token (REQUIRED for security)
180
- * @throws Error if authentication fails or token is invalid
181
- */ async registerAgentCapabilities(capabilities, authToken) {
182
- // CRITICAL-003 FIX: Verify JWT token before allowing capability registration
183
- const tokenPayload = this.verifyAgentToken(authToken);
184
- if (!tokenPayload) {
185
- this.logger.error(`Authentication failed for agent ${capabilities.agentId} - invalid token`);
186
- throw new Error(`Authentication failed: invalid or expired token for agent ${capabilities.agentId}`);
187
- }
188
- // Verify agentId in token matches capabilities.agentId
189
- if (tokenPayload.agentId !== capabilities.agentId) {
190
- this.logger.error(`Authentication failed: token agentId ${tokenPayload.agentId} does not match capabilities agentId ${capabilities.agentId}`);
191
- throw new Error(`Authentication failed: agentId mismatch (token: ${tokenPayload.agentId}, capabilities: ${capabilities.agentId})`);
192
- }
193
- // Verify agentType matches (optional but recommended)
194
- if (tokenPayload.agentType !== capabilities.agentType) {
195
- this.logger.warn(`AgentType mismatch: token=${tokenPayload.agentType}, capabilities=${capabilities.agentType}`);
196
- }
123
+ */ async registerAgentCapabilities(capabilities) {
197
124
  this.agentCapabilities.set(capabilities.agentId, capabilities);
198
125
  // Broadcast capabilities to all peers
199
126
  await this.broker.publish({
@@ -318,26 +245,8 @@ import * as crypto from 'crypto';
318
245
  *
319
246
  * @param agentId - Agent identifier claiming the role
320
247
  * @param role - Role being claimed
321
- * @param authToken - JWT authentication token (REQUIRED for security)
322
- * @throws Error if authentication fails, token invalid, or agent not qualified
323
- */ async claimRole(agentId, role, authToken) {
324
- // CRITICAL-003 FIX: Verify JWT token before allowing role claim
325
- const tokenPayload = this.verifyAgentToken(authToken);
326
- if (!tokenPayload) {
327
- this.logger.error(`Authentication failed for agent ${agentId} claiming role ${role.roleName} - invalid token`);
328
- throw new Error(`Authentication failed: invalid or expired token for agent ${agentId}`);
329
- }
330
- // Verify caller owns the agentId (prevent impersonation)
331
- if (tokenPayload.agentId !== agentId) {
332
- this.logger.error(`Authentication failed: token agentId ${tokenPayload.agentId} attempting to claim role as ${agentId}`);
333
- throw new Error(`Authentication failed: agentId mismatch (token: ${tokenPayload.agentId}, claim: ${agentId})`);
334
- }
335
- // Verify token is still stored (hasn't been revoked)
336
- const storedToken = this.agentTokens.get(agentId);
337
- if (!storedToken || storedToken !== authToken) {
338
- this.logger.error(`Authentication failed: token for agent ${agentId} not found or revoked`);
339
- throw new Error(`Authentication failed: token not found or revoked for agent ${agentId}`);
340
- }
248
+ * @throws Error if agent not qualified
249
+ */ async claimRole(agentId, role) {
341
250
  // Calculate capability score
342
251
  const score = this.calculateCapabilityScore(agentId, role);
343
252
  if (!score) {
@@ -371,7 +280,7 @@ import * as crypto from 'crypto';
371
280
  timestamp: new Date()
372
281
  }
373
282
  });
374
- this.logger.info(`Authenticated agent ${agentId} claimed role ${role.roleName}`, {
283
+ this.logger.info(`Agent ${agentId} claimed role ${role.roleName}`, {
375
284
  score: score.totalScore,
376
285
  claimId: claim.claimId
377
286
  });
@@ -385,18 +294,6 @@ import * as crypto from 'crypto';
385
294
  return claim;
386
295
  }
387
296
  /**
388
- * Revoke agent token (invalidates authentication)
389
- *
390
- * @param agentId - Agent whose token should be revoked
391
- */ revokeAgentToken(agentId) {
392
- if (this.agentTokens.delete(agentId)) {
393
- this.logger.info(`Revoked token for agent ${agentId}`);
394
- this.emit('token_revoked', {
395
- agentId
396
- });
397
- }
398
- }
399
- /**
400
297
  * Detect if multiple agents claimed same role
401
298
  */ async detectRoleConflict(taskId, roleName) {
402
299
  const claims = Array.from(this.roleClaims.values()).filter((c)=>c.taskId === taskId && c.roleName === roleName && c.status === 'pending');
@@ -673,8 +570,7 @@ import * as crypto from 'crypto';
673
570
  this.roleAssignments.clear();
674
571
  this.acknowledgments.clear();
675
572
  this.conflicts.clear();
676
- this.agentTokens.clear(); // Clear all stored tokens
677
- this.logger.info('RoleAssignmentSystem shutdown - all tokens revoked');
573
+ this.logger.info('RoleAssignmentSystem shutdown');
678
574
  }
679
575
  }
680
576
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/coordination/role-assignment.ts"],"names":["EventEmitter","generateId","jwt","crypto","RoleAssignmentSystem","agentCapabilities","activeRoles","roleClaims","roleAssignments","acknowledgments","conflicts","isInitialized","agentTokens","jwtSecret","config","broker","logger","Map","process","env","JWT_SECRET","randomBytes","toString","warn","initialize","subscribe","topic","handler","handleCapabilityBroadcast","bind","handleRoleClaimRequest","handlePeerAcknowledgment","handleAgentFailure","info","generateAgentToken","agentId","agentType","payload","issuedAt","Date","now","expiresAt","token","sign","algorithm","expiresIn","set","verifyAgentToken","decoded","verify","algorithms","error","message","registerAgentCapabilities","capabilities","authToken","tokenPayload","Error","publish","timestamp","skills","map","c","skill","level","specializations","emit","updateAgentLoad","load","get","currentLoad","calculateCapabilityScore","role","agent","skillScores","reasoning","totalScore","totalWeight","requirement","requirements","agentSkill","find","required","push","levelScores","beginner","intermediate","expert","master","agentLevelScore","minLevelScore","minLevel","skillScore","successRate","undefined","weight","toFixed","baseScore","loadPenalty","maxConcurrentRoles","availabilityBonus","availability","finalScore","Math","max","min","matchAgentsToRole","scores","Array","from","keys","score","scoreThreshold","sort","a","b","debug","length","roleName","topScores","slice","s","claimRole","storedToken","claim","claimId","taskId","status","detectRoleConflict","enablePeerVoting","resolveRoleClaim","revokeAgentToken","delete","claims","values","filter","conflict","conflictId","resolutionMethod","conflictResolutionMethod","claimants","resolveConflictByScore","submitPeerAcknowledgment","peerId","vote","ack","ackId","has","acks","approvalCount","minApprovalVotes","approvalVotes","rejectionVotes","totalVotes","assignment","assignmentId","assignedAgent","assignedAt","votes","rejectConflictingClaims","rejections","approvals","approvedClaimId","entries","sortedClaims","winningClaim","resolvedClaim","winner","autoReassignOnFailure","failedAssignments","reassignRole","reason","oldAssignment","matches","nextBestMatch","m","newAssignment","newAgent","oldAgent","reassignment","reassignmentId","originalAgent","to","getAgentAssignments","getRoleAssignment","shutdown","clear"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/coordination/role-assignment.ts"],"names":["EventEmitter","generateId","RoleAssignmentSystem","agentCapabilities","activeRoles","roleClaims","roleAssignments","acknowledgments","conflicts","isInitialized","config","broker","logger","Map","initialize","warn","subscribe","topic","handler","handleCapabilityBroadcast","bind","handleRoleClaimRequest","handlePeerAcknowledgment","handleAgentFailure","info","registerAgentCapabilities","capabilities","set","agentId","publish","payload","timestamp","Date","skills","map","c","skill","level","specializations","emit","updateAgentLoad","load","get","Error","currentLoad","calculateCapabilityScore","role","agent","skillScores","reasoning","totalScore","totalWeight","requirement","requirements","agentSkill","find","required","push","levelScores","beginner","intermediate","expert","master","agentLevelScore","minLevelScore","minLevel","skillScore","successRate","undefined","weight","toFixed","baseScore","loadPenalty","maxConcurrentRoles","availabilityBonus","availability","finalScore","Math","max","min","matchAgentsToRole","scores","Array","from","keys","score","scoreThreshold","sort","a","b","debug","length","roleName","topScores","slice","s","claimRole","claim","claimId","taskId","status","detectRoleConflict","enablePeerVoting","resolveRoleClaim","claims","values","filter","conflict","conflictId","resolutionMethod","conflictResolutionMethod","claimants","resolveConflictByScore","submitPeerAcknowledgment","peerId","vote","ack","ackId","has","acks","approvalCount","minApprovalVotes","approvalVotes","rejectionVotes","totalVotes","assignment","assignmentId","assignedAgent","assignedAt","votes","rejectConflictingClaims","rejections","approvals","approvedClaimId","entries","sortedClaims","winningClaim","resolvedClaim","winner","message","autoReassignOnFailure","failedAssignments","reassignRole","reason","oldAssignment","matches","nextBestMatch","m","newAssignment","newAgent","oldAgent","reassignment","reassignmentId","originalAgent","to","getAgentAssignments","getRoleAssignment","shutdown","clear"],"mappings":"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"}