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
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/coordination/v2/sdk/checkpoint-manager.ts"],"names":["createHash","timingSafeEqual","promises","fs","path","msgpack","AgentState","CheckpointManager","MAX_IN_MEMORY_CHECKPOINTS","checkpoints","Map","sessions","agentSessions","sessionCheckpoints","messageUUIDIndex","storagePath","metrics","restoreLatencies","autoCheckpointEnabled","initialized","storeMetrics","initTime","Date","now","cleanupInterval","retentionHours","restoredCheckpoints","Set","maxCheckpointAge","totalCheckpoints","totalRestores","averageCreateTimeMs","averageRestoreTimeMs","p95RestoreTimeMs","p99RestoreTimeMs","compressionRatio","totalStorageMb","totalSessions","averageCompressionRatio","averageReadLatencyMs","averageWriteLatencyMs","totalReads","totalWrites","totalDeletions","uptimeMs","ensureStorageDirectory","setInterval","cleanExpiredCheckpoints","catch","error","console","createCheckpoint","sessionId","agentId","messageUUID","state","stateSnapshot","metadata","startTime","performance","checkpointId","generateCheckpointId","timestamp","uncompressedData","JSON","stringify","uncompressedSize","Buffer","byteLength","compressedBuffer","encode","compressedSize","length","checksum","calculateChecksum","checkpoint","id","reason","autoCheckpoint","pendingDependencies","context","size","oldest","Array","from","entries","sort","a","b","oldestId","evictedCheckpoint","delete","get","index","indexOf","splice","log","deleteCheckpointFile","warn","set","has","push","persistCheckpoint","createTime","toFixed","restoreCheckpoint","Error","age","currentChecksum","add","restoredState","latencyMs","updatePercentileMetrics","success","restoreFromMessageUUID","autoCheckpointOnTransition","fromState","toState","criticalTransitions","WORKING","WAITING","BLOCKED","COMPLETED","transition","includes","getLatestCheckpointData","checkpointIds","map","filter","Boolean","deleteCheckpoint","filePath","getCheckpointFilePath","unlink","cleanup","maxCheckpointsPerSession","cutoffTime","deletedCount","toDelete","slice","retentionMs","getCheckpointMetrics","setAutoCheckpointEnabled","enabled","loadFromDisk","files","readdir","checkpointFiles","f","endsWith","loadedCount","file","join","buffer","readFile","decode","checkpointBuffer","writeFile","stats","stat","hash","update","digest","substring","data","dataString","Object","keys","sorted","p95Index","Math","floor","p99Index","access","mkdir","recursive","storeSession","session","sessionPath","dirname","writeTime","getSession","readTime","getSessionByAgentId","updateSession","updates","updatedSession","deleteSession","querySessions","values","s","isPaused","undefined","priorityMin","priority","priorityMax","offset","limit","listSessions","storeCheckpoint","checkpointData","getTime","getCheckpoint","getCheckpointByMessageUUID","getLatestCheckpoint","listCheckpoints","queryCheckpoints","c","createdAfter","createdBefore","verifyCheckpointIntegrity","currentBuf","storedBuf","compact","sessionsToCompact","getMetrics","healthCheck","errors","testPath","healthy","initialize","close","clearInterval","shutdown","getMemoryStats","oldestAge","max","checkpointCount","memoryUsageMB","process","memoryUsage","heapUsed","oldestCheckpointAge","isReady"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../src/coordination/v2/sdk/checkpoint-manager.ts"],"names":["createHash","timingSafeEqual","promises","fs","path","msgpack","AgentState","CheckpointCompressor","CheckpointManager","MAX_IN_MEMORY_CHECKPOINTS","checkpoints","Map","sessions","agentSessions","sessionCheckpoints","messageUUIDIndex","storagePath","metrics","restoreLatencies","autoCheckpointEnabled","initialized","storeMetrics","initTime","Date","now","cleanupInterval","retentionHours","restoredCheckpoints","Set","maxCheckpointAge","compressor","totalCheckpoints","totalRestores","averageCreateTimeMs","averageRestoreTimeMs","p95RestoreTimeMs","p99RestoreTimeMs","compressionRatio","totalStorageMb","totalSessions","averageCompressionRatio","averageReadLatencyMs","averageWriteLatencyMs","totalReads","totalWrites","totalDeletions","uptimeMs","ensureStorageDirectory","setInterval","cleanExpiredCheckpoints","catch","error","console","createCheckpoint","sessionId","agentId","messageUUID","state","stateSnapshot","metadata","startTime","performance","checkpointId","generateCheckpointId","timestamp","previousCheckpointData","getLatestCheckpointData","previousCheckpointId","id","compressionResult","compress","compressedBuffer","compressedSize","uncompressedSize","checksum","calculateChecksum","checkpoint","reason","autoCheckpoint","pendingDependencies","context","size","oldest","Array","from","entries","sort","a","b","oldestId","evictedCheckpoint","delete","get","index","indexOf","splice","log","deleteCheckpointFile","warn","set","has","push","persistCheckpoint","createTime","toFixed","restoreCheckpoint","Error","age","currentChecksum","add","restoredState","latencyMs","updatePercentileMetrics","success","restoreFromMessageUUID","autoCheckpointOnTransition","fromState","toState","criticalTransitions","WORKING","WAITING","BLOCKED","COMPLETED","transition","includes","checkpointIds","map","filter","Boolean","length","deleteCheckpoint","filePath","getCheckpointFilePath","unlink","cleanup","maxCheckpointsPerSession","cutoffTime","deletedCount","toDelete","slice","retentionMs","getCheckpointMetrics","getCheckpointCompressionDetails","setAutoCheckpointEnabled","enabled","loadFromDisk","files","readdir","checkpointFiles","f","endsWith","loadedCount","file","join","buffer","readFile","decode","checkpointBuffer","encode","writeFile","stats","stat","hash","update","digest","substring","data","dataString","JSON","stringify","Object","keys","sorted","p95Index","Math","floor","p99Index","access","mkdir","recursive","storeSession","session","sessionPath","dirname","writeTime","getSession","readTime","getSessionByAgentId","updateSession","updates","updatedSession","deleteSession","querySessions","values","s","isPaused","undefined","priorityMin","priority","priorityMax","offset","limit","listSessions","storeCheckpoint","checkpointData","getTime","uncompressedData","Buffer","byteLength","getCheckpoint","getCheckpointByMessageUUID","getLatestCheckpoint","listCheckpoints","queryCheckpoints","c","createdAfter","createdBefore","verifyCheckpointIntegrity","currentBuf","storedBuf","compact","sessionsToCompact","getMetrics","healthCheck","errors","testPath","healthy","initialize","close","clearInterval","shutdown","getMemoryStats","oldestAge","max","checkpointCount","memoryUsageMB","process","memoryUsage","heapUsed","oldestCheckpointAge","isReady"],"mappings":"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"}
@@ -0,0 +1,470 @@
1
+ /**
2
+ * Agent Coordination V2 - Help Coordinator
3
+ *
4
+ * Manages helper agent pool with WAITING state pause, zero-cost pooling, and event-driven resume.
5
+ *
6
+ * Features:
7
+ * - Pause helper agents in WAITING state (zero token consumption)
8
+ * - Event-driven resume on help request arrival (<50ms)
9
+ * - Checkpoint recovery for helper state (<500ms p99)
10
+ * - Support 50+ paused agents simultaneously
11
+ * - Integration with QueryController for agent lifecycle
12
+ *
13
+ * @module coordination/v2/sdk/help-coordinator
14
+ */ import { EventEmitter } from 'node:events';
15
+ import { Logger } from '../../../core/logger.js';
16
+ import { generateId } from '../../../utils/helpers.js';
17
+ import { AgentState } from '../core/agent-state.js';
18
+ /**
19
+ * HelpCoordinator - Manages helper agent pool with zero-cost WAITING state pause
20
+ *
21
+ * Workflow:
22
+ * 1. Helper agents register with pool
23
+ * 2. Idle helpers auto-pause after maxIdleTimeMs (zero token cost)
24
+ * 3. Help request arrives → find best helper → resume in <50ms
25
+ * 4. Helper completes task → return to pool → auto-pause if idle
26
+ */ export class HelpCoordinator extends EventEmitter {
27
+ logger;
28
+ config;
29
+ queryController;
30
+ helpers;
31
+ helpRequests;
32
+ assignments;
33
+ metrics;
34
+ autoPauseTimer;
35
+ // Performance tracking for p99 metrics
36
+ resumeLatencies = [];
37
+ checkpointRecoveryLatencies = [];
38
+ MAX_LATENCY_SAMPLES = 1000;
39
+ constructor(queryController, config = {}){
40
+ super();
41
+ this.logger = new Logger({
42
+ level: 'info',
43
+ format: 'text',
44
+ destination: 'console'
45
+ });
46
+ this.config = {
47
+ maxPausedAgents: config.maxPausedAgents ?? 50,
48
+ maxIdleTimeMs: config.maxIdleTimeMs ?? 30000,
49
+ enableAutoPause: config.enableAutoPause ?? true,
50
+ resumeTimeoutMs: config.resumeTimeoutMs ?? 50,
51
+ checkpointRecoveryTimeoutMs: config.checkpointRecoveryTimeoutMs ?? 500
52
+ };
53
+ this.queryController = queryController;
54
+ this.helpers = new Map();
55
+ this.helpRequests = new Map();
56
+ this.assignments = new Map();
57
+ this.metrics = this.initializeMetrics();
58
+ // Start auto-pause monitoring if enabled
59
+ if (this.config.enableAutoPause) {
60
+ this.startAutoPauseMonitoring();
61
+ }
62
+ this.logger.info('HelpCoordinator initialized', {
63
+ maxPausedAgents: this.config.maxPausedAgents,
64
+ maxIdleTimeMs: this.config.maxIdleTimeMs,
65
+ enableAutoPause: this.config.enableAutoPause
66
+ });
67
+ }
68
+ /**
69
+ * Register helper agent with pool
70
+ */ async registerHelper(agentId, type, specializations, priority = 5, metadata = {}) {
71
+ const sessionId = generateId('helper-session');
72
+ // Register session with QueryController
73
+ const session = this.queryController.registerSession(agentId, sessionId, priority);
74
+ const helper = {
75
+ agentId,
76
+ sessionId,
77
+ type,
78
+ state: AgentState.IDLE,
79
+ isPaused: false,
80
+ priority,
81
+ specializations,
82
+ workload: 0.0,
83
+ lastActiveAt: Date.now(),
84
+ metadata
85
+ };
86
+ this.helpers.set(agentId, helper);
87
+ this.metrics.totalHelpers++;
88
+ this.metrics.idleHelpers++;
89
+ this.logger.info('Helper registered', {
90
+ agentId,
91
+ type,
92
+ specializations,
93
+ priority
94
+ });
95
+ this.emit('helper:registered', helper);
96
+ return helper;
97
+ }
98
+ /**
99
+ * Submit help request and assign available helper
100
+ */ async requestHelp(requesterId, helpType, requiredSpecializations = [], priority = 5, context = {}) {
101
+ const requestId = generateId('help-req');
102
+ const request = {
103
+ requestId,
104
+ requesterId,
105
+ helpType,
106
+ requiredSpecializations,
107
+ priority,
108
+ context,
109
+ timestamp: Date.now()
110
+ };
111
+ this.helpRequests.set(requestId, request);
112
+ this.metrics.totalRequests++;
113
+ this.logger.debug('Help request received', {
114
+ requestId,
115
+ requesterId,
116
+ helpType,
117
+ requiredSpecializations,
118
+ priority
119
+ });
120
+ // Find best available helper
121
+ const helper = await this.findBestHelper(requiredSpecializations, priority);
122
+ if (!helper) {
123
+ this.metrics.failedAssignments++;
124
+ this.logger.warn('No available helper for request', {
125
+ requestId,
126
+ requiredSpecializations
127
+ });
128
+ this.emit('help:request-failed', {
129
+ request,
130
+ reason: 'No available helper'
131
+ });
132
+ return null;
133
+ }
134
+ // Resume helper if paused (event-driven resume)
135
+ const resumeStartTime = Date.now();
136
+ let resumeLatencyMs = 0;
137
+ if (helper.isPaused) {
138
+ const resumeTrigger = {
139
+ type: 'help_request',
140
+ agentId: helper.agentId,
141
+ metadata: {
142
+ requestId,
143
+ requesterId,
144
+ helpType
145
+ }
146
+ };
147
+ const resumeResult = await this.queryController.handleResumeTrigger(resumeTrigger);
148
+ if (resumeResult && resumeResult.success) {
149
+ resumeLatencyMs = Date.now() - resumeStartTime;
150
+ this.trackResumeLatency(resumeLatencyMs);
151
+ this.logger.info('Helper resumed for help request', {
152
+ agentId: helper.agentId,
153
+ resumeLatencyMs,
154
+ requestId
155
+ });
156
+ } else {
157
+ this.logger.error('Failed to resume helper', {
158
+ agentId: helper.agentId,
159
+ requestId
160
+ });
161
+ this.metrics.failedAssignments++;
162
+ return null;
163
+ }
164
+ }
165
+ // Update metrics BEFORE state change
166
+ const previousState = helper.state;
167
+ const wasPaused = helper.isPaused;
168
+ if (previousState === AgentState.IDLE && !wasPaused) {
169
+ this.metrics.idleHelpers--;
170
+ } else if (wasPaused) {
171
+ this.metrics.pausedHelpers--;
172
+ }
173
+ // Update helper state
174
+ helper.state = AgentState.HELPING;
175
+ helper.isPaused = false;
176
+ helper.workload = 1.0;
177
+ helper.lastActiveAt = Date.now();
178
+ delete helper.waitingSince;
179
+ this.metrics.activeHelpers++;
180
+ // Create assignment
181
+ const assignmentId = generateId('help-assign');
182
+ const assignment = {
183
+ assignmentId,
184
+ request,
185
+ helper,
186
+ resumeLatencyMs,
187
+ timestamp: Date.now()
188
+ };
189
+ this.assignments.set(assignmentId, assignment);
190
+ this.metrics.totalAssignments++;
191
+ this.logger.info('Helper assigned', {
192
+ assignmentId,
193
+ helperId: helper.agentId,
194
+ requestId,
195
+ resumeLatencyMs
196
+ });
197
+ this.emit('help:assigned', assignment);
198
+ return assignment;
199
+ }
200
+ /**
201
+ * Release helper back to pool after task completion
202
+ */ async releaseHelper(agentId, pauseImmediately = false) {
203
+ const helper = this.helpers.get(agentId);
204
+ if (!helper) {
205
+ throw new Error(`Helper ${agentId} not found`);
206
+ }
207
+ // Update metrics BEFORE state change
208
+ if (helper.state === AgentState.HELPING) {
209
+ this.metrics.activeHelpers--;
210
+ }
211
+ // Update helper state
212
+ helper.state = AgentState.IDLE;
213
+ helper.workload = 0.0;
214
+ helper.lastActiveAt = Date.now();
215
+ delete helper.waitingSince;
216
+ this.metrics.idleHelpers++;
217
+ this.logger.debug('Helper released to pool', {
218
+ agentId,
219
+ pauseImmediately
220
+ });
221
+ // Pause immediately if requested (zero-cost pooling)
222
+ if (pauseImmediately && this.config.enableAutoPause) {
223
+ await this.pauseHelper(agentId, 'Released to pool');
224
+ }
225
+ this.emit('helper:released', helper);
226
+ }
227
+ /**
228
+ * Pause helper agent (zero token cost)
229
+ */ async pauseHelper(agentId, reason = 'Auto-pause idle helper') {
230
+ const helper = this.helpers.get(agentId);
231
+ if (!helper) {
232
+ throw new Error(`Helper ${agentId} not found`);
233
+ }
234
+ if (helper.isPaused) {
235
+ this.logger.warn('Helper already paused', {
236
+ agentId
237
+ });
238
+ return;
239
+ }
240
+ // Check pool capacity
241
+ if (this.metrics.pausedHelpers >= this.config.maxPausedAgents) {
242
+ this.logger.warn('Max paused agents reached, not pausing', {
243
+ agentId,
244
+ maxPausedAgents: this.config.maxPausedAgents
245
+ });
246
+ return;
247
+ }
248
+ // Pause via QueryController
249
+ const pauseResult = await this.queryController.interrupt(helper.sessionId, reason);
250
+ if (pauseResult.success) {
251
+ // Update metrics BEFORE state change
252
+ if (helper.state === AgentState.IDLE) {
253
+ this.metrics.idleHelpers--;
254
+ }
255
+ helper.isPaused = true;
256
+ helper.state = AgentState.WAITING;
257
+ helper.waitingSince = Date.now();
258
+ this.metrics.pausedHelpers++;
259
+ // Estimate tokens saved (based on default budget)
260
+ const allocation = this.queryController.getResourceAllocation(agentId);
261
+ if (allocation) {
262
+ this.metrics.tokensSaved += allocation.tokenBudget - allocation.currentUsage;
263
+ }
264
+ this.logger.debug('Helper paused', {
265
+ agentId,
266
+ pauseLatencyMs: pauseResult.latencyMs,
267
+ checkpointId: pauseResult.checkpoint.id
268
+ });
269
+ this.emit('helper:paused', {
270
+ helper,
271
+ pauseResult
272
+ });
273
+ }
274
+ }
275
+ /**
276
+ * Resume helper from checkpoint
277
+ */ async resumeHelper(agentId, messageUUID, reason = 'Manual resume') {
278
+ const helper = this.helpers.get(agentId);
279
+ if (!helper) {
280
+ throw new Error(`Helper ${agentId} not found`);
281
+ }
282
+ if (!helper.isPaused) {
283
+ this.logger.warn('Helper not paused', {
284
+ agentId
285
+ });
286
+ return;
287
+ }
288
+ const checkpointStartTime = Date.now();
289
+ // Resume via QueryController
290
+ const resumeResult = await this.queryController.resumeSessionAt(helper.sessionId, messageUUID, reason);
291
+ if (resumeResult.success) {
292
+ const checkpointRecoveryMs = Math.max(Date.now() - checkpointStartTime, 0.001);
293
+ this.trackCheckpointRecovery(checkpointRecoveryMs);
294
+ // Update metrics BEFORE state change
295
+ if (helper.isPaused) {
296
+ this.metrics.pausedHelpers--;
297
+ }
298
+ helper.isPaused = false;
299
+ helper.state = AgentState.IDLE;
300
+ helper.lastActiveAt = Date.now();
301
+ delete helper.waitingSince;
302
+ this.metrics.idleHelpers++;
303
+ this.logger.info('Helper resumed from checkpoint', {
304
+ agentId,
305
+ checkpointRecoveryMs,
306
+ resumeLatencyMs: resumeResult.latencyMs
307
+ });
308
+ this.emit('helper:resumed', {
309
+ helper,
310
+ resumeResult,
311
+ checkpointRecoveryMs
312
+ });
313
+ }
314
+ }
315
+ /**
316
+ * Find best available helper for request
317
+ * Scoring: specialization match > priority > workload > lastActiveAt
318
+ */ async findBestHelper(requiredSpecializations, requestPriority) {
319
+ const availableHelpers = Array.from(this.helpers.values()).filter((h)=>h.state === AgentState.IDLE || h.isPaused && h.state === AgentState.WAITING);
320
+ if (availableHelpers.length === 0) {
321
+ return null;
322
+ }
323
+ // Score helpers
324
+ const scoredHelpers = availableHelpers.map((helper)=>{
325
+ let score = 0;
326
+ // Specialization match (most important)
327
+ if (requiredSpecializations.length > 0) {
328
+ const matchCount = requiredSpecializations.filter((req)=>helper.specializations.includes(req)).length;
329
+ score += matchCount / requiredSpecializations.length * 100;
330
+ } else {
331
+ score += 50; // Neutral if no specializations required
332
+ }
333
+ // Priority match (prefer similar priority)
334
+ const priorityDiff = Math.abs(helper.priority - requestPriority);
335
+ score += (10 - priorityDiff) * 5;
336
+ // Prefer idle over paused (avoid resume latency if possible)
337
+ if (helper.state === AgentState.IDLE) {
338
+ score += 20;
339
+ }
340
+ // Workload (prefer less busy)
341
+ score += (1.0 - helper.workload) * 10;
342
+ // Recently active (prefer warm helpers)
343
+ const idleTime = Date.now() - helper.lastActiveAt;
344
+ const idleScore = Math.max(0, 10 - idleTime / 1000);
345
+ score += idleScore;
346
+ return {
347
+ helper,
348
+ score
349
+ };
350
+ });
351
+ // Sort by score descending
352
+ scoredHelpers.sort((a, b)=>b.score - a.score);
353
+ return scoredHelpers[0]?.helper ?? null;
354
+ }
355
+ /**
356
+ * Auto-pause idle helpers to save tokens
357
+ */ startAutoPauseMonitoring() {
358
+ this.autoPauseTimer = setInterval(async ()=>{
359
+ const now = Date.now();
360
+ for (const helper of this.helpers.values()){
361
+ if (helper.state === AgentState.IDLE && !helper.isPaused && now - helper.lastActiveAt > this.config.maxIdleTimeMs) {
362
+ try {
363
+ await this.pauseHelper(helper.agentId, 'Auto-pause after idle timeout');
364
+ } catch (error) {
365
+ this.logger.error('Auto-pause failed', {
366
+ agentId: helper.agentId,
367
+ error: error instanceof Error ? error.message : String(error)
368
+ });
369
+ }
370
+ }
371
+ }
372
+ }, this.config.maxIdleTimeMs / 2); // Check at half the idle timeout
373
+ }
374
+ /**
375
+ * Track resume latency for p99 calculation
376
+ */ trackResumeLatency(latencyMs) {
377
+ this.resumeLatencies.push(latencyMs);
378
+ // Keep last N samples
379
+ if (this.resumeLatencies.length > this.MAX_LATENCY_SAMPLES) {
380
+ this.resumeLatencies.shift();
381
+ }
382
+ // Update average
383
+ const sum = this.resumeLatencies.reduce((a, b)=>a + b, 0);
384
+ this.metrics.averageResumeLatencyMs = sum / this.resumeLatencies.length;
385
+ // Update p99
386
+ const sorted = [
387
+ ...this.resumeLatencies
388
+ ].sort((a, b)=>a - b);
389
+ const p99Index = Math.floor(sorted.length * 0.99);
390
+ this.metrics.p99ResumeLatencyMs = sorted[p99Index] ?? latencyMs;
391
+ }
392
+ /**
393
+ * Track checkpoint recovery latency for p99 calculation
394
+ */ trackCheckpointRecovery(latencyMs) {
395
+ this.checkpointRecoveryLatencies.push(latencyMs);
396
+ // Keep last N samples
397
+ if (this.checkpointRecoveryLatencies.length > this.MAX_LATENCY_SAMPLES) {
398
+ this.checkpointRecoveryLatencies.shift();
399
+ }
400
+ // Update average
401
+ const sum = this.checkpointRecoveryLatencies.reduce((a, b)=>a + b, 0);
402
+ this.metrics.averageCheckpointRecoveryMs = sum / this.checkpointRecoveryLatencies.length;
403
+ // Update p99
404
+ const sorted = [
405
+ ...this.checkpointRecoveryLatencies
406
+ ].sort((a, b)=>a - b);
407
+ const p99Index = Math.floor(sorted.length * 0.99);
408
+ this.metrics.p99CheckpointRecoveryMs = sorted[p99Index] ?? latencyMs;
409
+ }
410
+ /**
411
+ * Get help coordinator metrics
412
+ */ getMetrics() {
413
+ return {
414
+ ...this.metrics
415
+ };
416
+ }
417
+ /**
418
+ * Get all helpers in pool
419
+ */ getHelpers() {
420
+ return Array.from(this.helpers.values());
421
+ }
422
+ /**
423
+ * Get paused helpers
424
+ */ getPausedHelpers() {
425
+ return Array.from(this.helpers.values()).filter((h)=>h.isPaused);
426
+ }
427
+ /**
428
+ * Get active helpers
429
+ */ getActiveHelpers() {
430
+ return Array.from(this.helpers.values()).filter((h)=>h.state === AgentState.HELPING);
431
+ }
432
+ /**
433
+ * Get idle helpers
434
+ */ getIdleHelpers() {
435
+ return Array.from(this.helpers.values()).filter((h)=>h.state === AgentState.IDLE && !h.isPaused);
436
+ }
437
+ /**
438
+ * Cleanup coordinator
439
+ */ async cleanup() {
440
+ this.logger.info('Cleaning up help coordinator', {
441
+ totalHelpers: this.helpers.size,
442
+ pausedHelpers: this.metrics.pausedHelpers
443
+ });
444
+ if (this.autoPauseTimer) {
445
+ clearInterval(this.autoPauseTimer);
446
+ }
447
+ this.helpers.clear();
448
+ this.helpRequests.clear();
449
+ this.assignments.clear();
450
+ this.removeAllListeners();
451
+ }
452
+ initializeMetrics() {
453
+ return {
454
+ totalRequests: 0,
455
+ totalAssignments: 0,
456
+ totalHelpers: 0,
457
+ pausedHelpers: 0,
458
+ activeHelpers: 0,
459
+ idleHelpers: 0,
460
+ averageResumeLatencyMs: 0,
461
+ p99ResumeLatencyMs: 0,
462
+ averageCheckpointRecoveryMs: 0,
463
+ p99CheckpointRecoveryMs: 0,
464
+ tokensSaved: 0,
465
+ failedAssignments: 0
466
+ };
467
+ }
468
+ }
469
+
470
+ //# sourceMappingURL=help-coordinator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/coordination/v2/sdk/help-coordinator.ts"],"names":["EventEmitter","Logger","generateId","AgentState","HelpCoordinator","logger","config","queryController","helpers","helpRequests","assignments","metrics","autoPauseTimer","resumeLatencies","checkpointRecoveryLatencies","MAX_LATENCY_SAMPLES","level","format","destination","maxPausedAgents","maxIdleTimeMs","enableAutoPause","resumeTimeoutMs","checkpointRecoveryTimeoutMs","Map","initializeMetrics","startAutoPauseMonitoring","info","registerHelper","agentId","type","specializations","priority","metadata","sessionId","session","registerSession","helper","state","IDLE","isPaused","workload","lastActiveAt","Date","now","set","totalHelpers","idleHelpers","emit","requestHelp","requesterId","helpType","requiredSpecializations","context","requestId","request","timestamp","totalRequests","debug","findBestHelper","failedAssignments","warn","reason","resumeStartTime","resumeLatencyMs","resumeTrigger","resumeResult","handleResumeTrigger","success","trackResumeLatency","error","previousState","wasPaused","pausedHelpers","HELPING","waitingSince","activeHelpers","assignmentId","assignment","totalAssignments","helperId","releaseHelper","pauseImmediately","get","Error","pauseHelper","pauseResult","interrupt","WAITING","allocation","getResourceAllocation","tokensSaved","tokenBudget","currentUsage","pauseLatencyMs","latencyMs","checkpointId","checkpoint","id","resumeHelper","messageUUID","checkpointStartTime","resumeSessionAt","checkpointRecoveryMs","Math","max","trackCheckpointRecovery","requestPriority","availableHelpers","Array","from","values","filter","h","length","scoredHelpers","map","score","matchCount","req","includes","priorityDiff","abs","idleTime","idleScore","sort","a","b","setInterval","message","String","push","shift","sum","reduce","averageResumeLatencyMs","sorted","p99Index","floor","p99ResumeLatencyMs","averageCheckpointRecoveryMs","p99CheckpointRecoveryMs","getMetrics","getHelpers","getPausedHelpers","getActiveHelpers","getIdleHelpers","cleanup","size","clearInterval","clear","removeAllListeners"],"mappings":"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"}