@zintrust/core 0.1.48 → 0.1.50

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 (403) hide show
  1. package/README.md +1 -1
  2. package/package.json +1 -9
  3. package/src/cli/CLI.d.ts.map +1 -1
  4. package/src/cli/CLI.js +2 -0
  5. package/src/cli/commands/AddCommand.js +2 -2
  6. package/src/cli/commands/BulletproofKeyGenerateCommand.d.ts +10 -0
  7. package/src/cli/commands/BulletproofKeyGenerateCommand.d.ts.map +1 -0
  8. package/src/cli/commands/BulletproofKeyGenerateCommand.js +139 -0
  9. package/src/cli/commands/JwtDevCommand.d.ts.map +1 -1
  10. package/src/cli/commands/JwtDevCommand.js +51 -32
  11. package/src/cli/scaffolding/ControllerGenerator.d.ts +1 -1
  12. package/src/cli/scaffolding/ControllerGenerator.d.ts.map +1 -1
  13. package/src/cli/scaffolding/ControllerGenerator.js +8 -79
  14. package/src/config/SecretsManager.d.ts +0 -1
  15. package/src/config/SecretsManager.d.ts.map +1 -1
  16. package/src/config/SecretsManager.js +0 -1
  17. package/src/config/index.d.ts +1 -1
  18. package/src/config/index.d.ts.map +1 -1
  19. package/src/config/index.js +30 -10
  20. package/src/config/middleware.d.ts +1 -0
  21. package/src/config/middleware.d.ts.map +1 -1
  22. package/src/config/middleware.js +3 -0
  23. package/src/http/error-pages/ErrorPageRenderer.js +7 -1
  24. package/src/index.d.ts +1 -2
  25. package/src/index.d.ts.map +1 -1
  26. package/src/index.js +4 -5
  27. package/src/middleware/BulletproofAuthMiddleware.d.ts +92 -0
  28. package/src/middleware/BulletproofAuthMiddleware.d.ts.map +1 -0
  29. package/src/middleware/BulletproofAuthMiddleware.js +421 -0
  30. package/src/middleware/CsrfMiddleware.d.ts +0 -1
  31. package/src/middleware/CsrfMiddleware.d.ts.map +1 -1
  32. package/src/middleware/CsrfMiddleware.js +8 -1
  33. package/src/middleware/JwtAuthMiddleware.d.ts.map +1 -1
  34. package/src/middleware/JwtAuthMiddleware.js +11 -5
  35. package/src/orm/Database.d.ts.map +1 -1
  36. package/src/orm/Database.js +48 -39
  37. package/src/orm/adapters/MySQLProxyAdapter.d.ts.map +1 -1
  38. package/src/orm/adapters/MySQLProxyAdapter.js +54 -35
  39. package/src/orm/adapters/PostgreSQLProxyAdapter.d.ts.map +1 -1
  40. package/src/orm/adapters/PostgreSQLProxyAdapter.js +126 -103
  41. package/src/orm/adapters/SqlProxyHttpAdapterShared.d.ts +30 -0
  42. package/src/orm/adapters/SqlProxyHttpAdapterShared.d.ts.map +1 -0
  43. package/src/orm/adapters/SqlProxyHttpAdapterShared.js +64 -0
  44. package/src/orm/adapters/SqlServerProxyAdapter.d.ts.map +1 -1
  45. package/src/orm/adapters/SqlServerProxyAdapter.js +54 -37
  46. package/src/orm/migrations/MigrationStore.d.ts.map +1 -1
  47. package/src/orm/migrations/MigrationStore.js +22 -1
  48. package/src/proxy/d1/ZintrustD1Proxy.d.ts +2 -2
  49. package/src/proxy/d1/ZintrustD1Proxy.d.ts.map +1 -1
  50. package/src/proxy/d1/ZintrustD1Proxy.js +39 -2
  51. package/src/proxy/kv/ZintrustKvProxy.d.ts +2 -2
  52. package/src/proxy/kv/ZintrustKvProxy.d.ts.map +1 -1
  53. package/src/proxy/kv/ZintrustKvProxy.js +38 -2
  54. package/src/routes/doc.js +1 -1
  55. package/src/routes/errorPages.d.ts.map +1 -1
  56. package/src/routes/errorPages.js +9 -2
  57. package/src/security/CsrfTokenManager.d.ts.map +1 -1
  58. package/src/security/CsrfTokenManager.js +57 -23
  59. package/src/security/JwtManager.d.ts +4 -1
  60. package/src/security/JwtManager.d.ts.map +1 -1
  61. package/src/security/JwtManager.js +25 -11
  62. package/src/security/JwtSessions.d.ts +12 -0
  63. package/src/security/JwtSessions.d.ts.map +1 -0
  64. package/src/security/JwtSessions.js +556 -0
  65. package/src/security/NonceReplay.d.ts +24 -0
  66. package/src/security/NonceReplay.d.ts.map +1 -0
  67. package/src/security/NonceReplay.js +42 -0
  68. package/src/security/TokenRevocation.d.ts.map +1 -1
  69. package/src/security/TokenRevocation.js +1 -0
  70. package/src/tools/http/Http.d.ts +5 -0
  71. package/src/tools/http/Http.d.ts.map +1 -1
  72. package/src/tools/http/Http.js +25 -9
  73. package/src/tools/queue/QueueReliabilityOrchestrator.d.ts.map +1 -1
  74. package/src/tools/queue/QueueReliabilityOrchestrator.js +18 -6
  75. package/src/validation/Validator.d.ts.map +1 -1
  76. package/src/validation/Validator.js +4 -2
  77. package/src/zintrust.comon.d.ts +9 -0
  78. package/src/zintrust.comon.d.ts.map +1 -0
  79. package/src/zintrust.comon.js +15 -0
  80. package/src/zintrust.plugins.d.ts +9 -3
  81. package/src/zintrust.plugins.d.ts.map +1 -1
  82. package/src/zintrust.plugins.js +10 -3
  83. package/src/zintrust.plugins.wg.d.ts +1 -0
  84. package/src/zintrust.plugins.wg.d.ts.map +1 -1
  85. package/src/zintrust.plugins.wg.js +1 -0
  86. package/app/Controllers/AuthController.d.ts +0 -10
  87. package/app/Controllers/AuthController.d.ts.map +0 -1
  88. package/app/Controllers/AuthController.js +0 -201
  89. package/app/Controllers/UserController.d.ts +0 -9
  90. package/app/Controllers/UserController.d.ts.map +0 -1
  91. package/app/Controllers/UserController.js +0 -8
  92. package/app/Controllers/UserQueryBuilderController.d.ts +0 -16
  93. package/app/Controllers/UserQueryBuilderController.d.ts.map +0 -1
  94. package/app/Controllers/UserQueryBuilderController.js +0 -404
  95. package/app/Middleware/ProfilerMiddleware.d.ts +0 -12
  96. package/app/Middleware/ProfilerMiddleware.d.ts.map +0 -1
  97. package/app/Middleware/ProfilerMiddleware.js +0 -47
  98. package/app/Middleware/index.d.ts +0 -59
  99. package/app/Middleware/index.d.ts.map +0 -1
  100. package/app/Middleware/index.js +0 -215
  101. package/app/Models/Post.d.ts +0 -14
  102. package/app/Models/Post.d.ts.map +0 -1
  103. package/app/Models/Post.js +0 -27
  104. package/app/Models/User.d.ts +0 -14
  105. package/app/Models/User.d.ts.map +0 -1
  106. package/app/Models/User.js +0 -44
  107. package/app/Schedules/JobTracking.d.ts +0 -3
  108. package/app/Schedules/JobTracking.d.ts.map +0 -1
  109. package/app/Schedules/JobTracking.js +0 -13
  110. package/app/Schedules/index.d.ts +0 -2
  111. package/app/Schedules/index.d.ts.map +0 -1
  112. package/app/Schedules/index.js +0 -1
  113. package/app/Toolkit/Broadcast/sendBroadcast.d.ts +0 -6
  114. package/app/Toolkit/Broadcast/sendBroadcast.d.ts.map +0 -1
  115. package/app/Toolkit/Broadcast/sendBroadcast.js +0 -5
  116. package/app/Toolkit/Mail/sendWelcomeEmail.d.ts +0 -6
  117. package/app/Toolkit/Mail/sendWelcomeEmail.d.ts.map +0 -1
  118. package/app/Toolkit/Mail/sendWelcomeEmail.js +0 -20
  119. package/app/Toolkit/Notification/sendSlackNotification.d.ts +0 -8
  120. package/app/Toolkit/Notification/sendSlackNotification.d.ts.map +0 -1
  121. package/app/Toolkit/Notification/sendSlackNotification.js +0 -5
  122. package/app/Toolkit/Notification/sendSms.d.ts +0 -6
  123. package/app/Toolkit/Notification/sendSms.d.ts.map +0 -1
  124. package/app/Toolkit/Notification/sendSms.js +0 -5
  125. package/app/Types/controller.d.ts +0 -42
  126. package/app/Types/controller.d.ts.map +0 -1
  127. package/app/Types/controller.js +0 -1
  128. package/config/broadcast.d.ts +0 -38
  129. package/config/broadcast.d.ts.map +0 -1
  130. package/config/broadcast.js +0 -37
  131. package/config/cache.d.ts +0 -40
  132. package/config/cache.d.ts.map +0 -1
  133. package/config/cache.js +0 -39
  134. package/config/database.d.ts +0 -58
  135. package/config/database.d.ts.map +0 -1
  136. package/config/database.js +0 -65
  137. package/config/mail.d.ts +0 -51
  138. package/config/mail.d.ts.map +0 -1
  139. package/config/mail.js +0 -69
  140. package/config/middleware.d.ts +0 -11
  141. package/config/middleware.d.ts.map +0 -1
  142. package/config/middleware.js +0 -30
  143. package/config/notification.d.ts +0 -33
  144. package/config/notification.d.ts.map +0 -1
  145. package/config/notification.js +0 -33
  146. package/config/queue.d.ts +0 -55
  147. package/config/queue.d.ts.map +0 -1
  148. package/config/queue.js +0 -87
  149. package/config/storage.d.ts +0 -59
  150. package/config/storage.d.ts.map +0 -1
  151. package/config/storage.js +0 -59
  152. package/config/workers.d.ts +0 -54
  153. package/config/workers.d.ts.map +0 -1
  154. package/config/workers.js +0 -83
  155. package/packages/cloudflare-d1-proxy/src/index.d.ts +0 -48
  156. package/packages/cloudflare-d1-proxy/src/index.d.ts.map +0 -1
  157. package/packages/cloudflare-d1-proxy/src/index.js +0 -387
  158. package/packages/cloudflare-kv-proxy/src/index.d.ts +0 -44
  159. package/packages/cloudflare-kv-proxy/src/index.d.ts.map +0 -1
  160. package/packages/cloudflare-kv-proxy/src/index.js +0 -325
  161. package/packages/queue-monitor/src/QueueMonitoringService.d.ts +0 -35
  162. package/packages/queue-monitor/src/QueueMonitoringService.d.ts.map +0 -1
  163. package/packages/queue-monitor/src/QueueMonitoringService.js +0 -194
  164. package/packages/queue-monitor/src/connection.d.ts +0 -3
  165. package/packages/queue-monitor/src/connection.d.ts.map +0 -1
  166. package/packages/queue-monitor/src/connection.js +0 -1
  167. package/packages/queue-monitor/src/dashboard-ui.d.ts +0 -7
  168. package/packages/queue-monitor/src/dashboard-ui.d.ts.map +0 -1
  169. package/packages/queue-monitor/src/dashboard-ui.js +0 -997
  170. package/packages/queue-monitor/src/driver.d.ts +0 -15
  171. package/packages/queue-monitor/src/driver.d.ts.map +0 -1
  172. package/packages/queue-monitor/src/driver.js +0 -115
  173. package/packages/queue-monitor/src/index.d.ts +0 -71
  174. package/packages/queue-monitor/src/index.d.ts.map +0 -1
  175. package/packages/queue-monitor/src/index.js +0 -296
  176. package/packages/queue-monitor/src/metrics.d.ts +0 -27
  177. package/packages/queue-monitor/src/metrics.d.ts.map +0 -1
  178. package/packages/queue-monitor/src/metrics.js +0 -92
  179. package/packages/queue-monitor/src/worker.d.ts +0 -8
  180. package/packages/queue-monitor/src/worker.d.ts.map +0 -1
  181. package/packages/queue-monitor/src/worker.js +0 -35
  182. package/packages/queue-redis/src/BullMQRedisQueue.d.ts +0 -26
  183. package/packages/queue-redis/src/BullMQRedisQueue.d.ts.map +0 -1
  184. package/packages/queue-redis/src/BullMQRedisQueue.js +0 -463
  185. package/packages/queue-redis/src/HttpQueueDriver.d.ts +0 -18
  186. package/packages/queue-redis/src/HttpQueueDriver.d.ts.map +0 -1
  187. package/packages/queue-redis/src/HttpQueueDriver.js +0 -249
  188. package/packages/queue-redis/src/QueueHttpGateway.d.ts +0 -16
  189. package/packages/queue-redis/src/QueueHttpGateway.d.ts.map +0 -1
  190. package/packages/queue-redis/src/QueueHttpGateway.js +0 -217
  191. package/packages/queue-redis/src/RedisPublishClient.d.ts +0 -14
  192. package/packages/queue-redis/src/RedisPublishClient.d.ts.map +0 -1
  193. package/packages/queue-redis/src/RedisPublishClient.js +0 -251
  194. package/packages/queue-redis/src/index.d.ts +0 -12
  195. package/packages/queue-redis/src/index.d.ts.map +0 -1
  196. package/packages/queue-redis/src/index.js +0 -10
  197. package/packages/queue-redis/src/register.d.ts +0 -6
  198. package/packages/queue-redis/src/register.d.ts.map +0 -1
  199. package/packages/queue-redis/src/register.js +0 -21
  200. package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.d.ts +0 -11
  201. package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.d.ts.map +0 -1
  202. package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.js +0 -32
  203. package/packages/workers/migrations/20260123180000_create_queue_jobs_table.d.ts +0 -11
  204. package/packages/workers/migrations/20260123180000_create_queue_jobs_table.d.ts.map +0 -1
  205. package/packages/workers/migrations/20260123180000_create_queue_jobs_table.js +0 -46
  206. package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.d.ts +0 -7
  207. package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.d.ts.map +0 -1
  208. package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.js +0 -44
  209. package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.d.ts +0 -7
  210. package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.d.ts.map +0 -1
  211. package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.js +0 -104
  212. package/packages/workers/src/AnomalyDetection.d.ts +0 -107
  213. package/packages/workers/src/AnomalyDetection.d.ts.map +0 -1
  214. package/packages/workers/src/AnomalyDetection.js +0 -329
  215. package/packages/workers/src/AutoScaler.d.ts +0 -128
  216. package/packages/workers/src/AutoScaler.d.ts.map +0 -1
  217. package/packages/workers/src/AutoScaler.js +0 -425
  218. package/packages/workers/src/BroadcastWorker.d.ts +0 -24
  219. package/packages/workers/src/BroadcastWorker.d.ts.map +0 -1
  220. package/packages/workers/src/BroadcastWorker.js +0 -24
  221. package/packages/workers/src/CanaryController.d.ts +0 -104
  222. package/packages/workers/src/CanaryController.d.ts.map +0 -1
  223. package/packages/workers/src/CanaryController.js +0 -424
  224. package/packages/workers/src/ChaosEngineering.d.ts +0 -80
  225. package/packages/workers/src/ChaosEngineering.d.ts.map +0 -1
  226. package/packages/workers/src/ChaosEngineering.js +0 -229
  227. package/packages/workers/src/CircuitBreaker.d.ts +0 -107
  228. package/packages/workers/src/CircuitBreaker.d.ts.map +0 -1
  229. package/packages/workers/src/CircuitBreaker.js +0 -374
  230. package/packages/workers/src/ClusterLock.d.ts +0 -91
  231. package/packages/workers/src/ClusterLock.d.ts.map +0 -1
  232. package/packages/workers/src/ClusterLock.js +0 -397
  233. package/packages/workers/src/ComplianceManager.d.ts +0 -178
  234. package/packages/workers/src/ComplianceManager.d.ts.map +0 -1
  235. package/packages/workers/src/ComplianceManager.js +0 -556
  236. package/packages/workers/src/DatacenterOrchestrator.d.ts +0 -134
  237. package/packages/workers/src/DatacenterOrchestrator.d.ts.map +0 -1
  238. package/packages/workers/src/DatacenterOrchestrator.js +0 -404
  239. package/packages/workers/src/DeadLetterQueue.d.ts +0 -123
  240. package/packages/workers/src/DeadLetterQueue.d.ts.map +0 -1
  241. package/packages/workers/src/DeadLetterQueue.js +0 -544
  242. package/packages/workers/src/HealthMonitor.d.ts +0 -43
  243. package/packages/workers/src/HealthMonitor.d.ts.map +0 -1
  244. package/packages/workers/src/HealthMonitor.js +0 -312
  245. package/packages/workers/src/MultiQueueWorker.d.ts +0 -90
  246. package/packages/workers/src/MultiQueueWorker.d.ts.map +0 -1
  247. package/packages/workers/src/MultiQueueWorker.js +0 -282
  248. package/packages/workers/src/NotificationWorker.d.ts +0 -24
  249. package/packages/workers/src/NotificationWorker.d.ts.map +0 -1
  250. package/packages/workers/src/NotificationWorker.js +0 -23
  251. package/packages/workers/src/Observability.d.ts +0 -154
  252. package/packages/workers/src/Observability.d.ts.map +0 -1
  253. package/packages/workers/src/Observability.js +0 -538
  254. package/packages/workers/src/PluginManager.d.ts +0 -124
  255. package/packages/workers/src/PluginManager.d.ts.map +0 -1
  256. package/packages/workers/src/PluginManager.js +0 -392
  257. package/packages/workers/src/PriorityQueue.d.ts +0 -118
  258. package/packages/workers/src/PriorityQueue.d.ts.map +0 -1
  259. package/packages/workers/src/PriorityQueue.js +0 -276
  260. package/packages/workers/src/ResourceMonitor.d.ts +0 -165
  261. package/packages/workers/src/ResourceMonitor.d.ts.map +0 -1
  262. package/packages/workers/src/ResourceMonitor.js +0 -632
  263. package/packages/workers/src/SLAMonitor.d.ts +0 -111
  264. package/packages/workers/src/SLAMonitor.d.ts.map +0 -1
  265. package/packages/workers/src/SLAMonitor.js +0 -274
  266. package/packages/workers/src/WorkerFactory.d.ts +0 -218
  267. package/packages/workers/src/WorkerFactory.d.ts.map +0 -1
  268. package/packages/workers/src/WorkerFactory.js +0 -2253
  269. package/packages/workers/src/WorkerInit.d.ts +0 -86
  270. package/packages/workers/src/WorkerInit.d.ts.map +0 -1
  271. package/packages/workers/src/WorkerInit.js +0 -307
  272. package/packages/workers/src/WorkerMetrics.d.ts +0 -116
  273. package/packages/workers/src/WorkerMetrics.d.ts.map +0 -1
  274. package/packages/workers/src/WorkerMetrics.js +0 -570
  275. package/packages/workers/src/WorkerRegistry.d.ts +0 -152
  276. package/packages/workers/src/WorkerRegistry.d.ts.map +0 -1
  277. package/packages/workers/src/WorkerRegistry.js +0 -396
  278. package/packages/workers/src/WorkerShutdown.d.ts +0 -70
  279. package/packages/workers/src/WorkerShutdown.d.ts.map +0 -1
  280. package/packages/workers/src/WorkerShutdown.js +0 -185
  281. package/packages/workers/src/WorkerVersioning.d.ts +0 -108
  282. package/packages/workers/src/WorkerVersioning.d.ts.map +0 -1
  283. package/packages/workers/src/WorkerVersioning.js +0 -300
  284. package/packages/workers/src/config/workerConfig.d.ts +0 -5
  285. package/packages/workers/src/config/workerConfig.d.ts.map +0 -1
  286. package/packages/workers/src/config/workerConfig.js +0 -25
  287. package/packages/workers/src/createQueueWorker.d.ts +0 -26
  288. package/packages/workers/src/createQueueWorker.d.ts.map +0 -1
  289. package/packages/workers/src/createQueueWorker.js +0 -367
  290. package/packages/workers/src/dashboard/index.d.ts +0 -2
  291. package/packages/workers/src/dashboard/index.d.ts.map +0 -1
  292. package/packages/workers/src/dashboard/index.js +0 -1
  293. package/packages/workers/src/dashboard/types.d.ts +0 -123
  294. package/packages/workers/src/dashboard/types.d.ts.map +0 -1
  295. package/packages/workers/src/dashboard/types.js +0 -1
  296. package/packages/workers/src/dashboard/workers-api.d.ts +0 -5
  297. package/packages/workers/src/dashboard/workers-api.d.ts.map +0 -1
  298. package/packages/workers/src/dashboard/workers-api.js +0 -738
  299. package/packages/workers/src/helper/index.d.ts +0 -6
  300. package/packages/workers/src/helper/index.d.ts.map +0 -1
  301. package/packages/workers/src/helper/index.js +0 -10
  302. package/packages/workers/src/http/WorkerApiController.d.ts +0 -39
  303. package/packages/workers/src/http/WorkerApiController.d.ts.map +0 -1
  304. package/packages/workers/src/http/WorkerApiController.js +0 -313
  305. package/packages/workers/src/http/WorkerController.d.ts +0 -375
  306. package/packages/workers/src/http/WorkerController.d.ts.map +0 -1
  307. package/packages/workers/src/http/WorkerController.js +0 -1454
  308. package/packages/workers/src/http/WorkerMonitoringService.d.ts +0 -12
  309. package/packages/workers/src/http/WorkerMonitoringService.d.ts.map +0 -1
  310. package/packages/workers/src/http/WorkerMonitoringService.js +0 -89
  311. package/packages/workers/src/http/middleware/CustomValidation.d.ts +0 -93
  312. package/packages/workers/src/http/middleware/CustomValidation.d.ts.map +0 -1
  313. package/packages/workers/src/http/middleware/CustomValidation.js +0 -270
  314. package/packages/workers/src/http/middleware/DatacenterValidator.d.ts +0 -4
  315. package/packages/workers/src/http/middleware/DatacenterValidator.d.ts.map +0 -1
  316. package/packages/workers/src/http/middleware/DatacenterValidator.js +0 -94
  317. package/packages/workers/src/http/middleware/EditWorkerValidation.d.ts +0 -8
  318. package/packages/workers/src/http/middleware/EditWorkerValidation.d.ts.map +0 -1
  319. package/packages/workers/src/http/middleware/EditWorkerValidation.js +0 -56
  320. package/packages/workers/src/http/middleware/FeaturesValidator.d.ts +0 -4
  321. package/packages/workers/src/http/middleware/FeaturesValidator.d.ts.map +0 -1
  322. package/packages/workers/src/http/middleware/FeaturesValidator.js +0 -61
  323. package/packages/workers/src/http/middleware/InfrastructureValidator.d.ts +0 -32
  324. package/packages/workers/src/http/middleware/InfrastructureValidator.d.ts.map +0 -1
  325. package/packages/workers/src/http/middleware/InfrastructureValidator.js +0 -226
  326. package/packages/workers/src/http/middleware/OptionsValidator.d.ts +0 -4
  327. package/packages/workers/src/http/middleware/OptionsValidator.d.ts.map +0 -1
  328. package/packages/workers/src/http/middleware/OptionsValidator.js +0 -112
  329. package/packages/workers/src/http/middleware/PayloadSanitizer.d.ts +0 -8
  330. package/packages/workers/src/http/middleware/PayloadSanitizer.d.ts.map +0 -1
  331. package/packages/workers/src/http/middleware/PayloadSanitizer.js +0 -42
  332. package/packages/workers/src/http/middleware/ProcessorPathSanitizer.d.ts +0 -4
  333. package/packages/workers/src/http/middleware/ProcessorPathSanitizer.d.ts.map +0 -1
  334. package/packages/workers/src/http/middleware/ProcessorPathSanitizer.js +0 -140
  335. package/packages/workers/src/http/middleware/QueueNameSanitizer.d.ts +0 -4
  336. package/packages/workers/src/http/middleware/QueueNameSanitizer.d.ts.map +0 -1
  337. package/packages/workers/src/http/middleware/QueueNameSanitizer.js +0 -45
  338. package/packages/workers/src/http/middleware/ValidateDriver.d.ts +0 -8
  339. package/packages/workers/src/http/middleware/ValidateDriver.d.ts.map +0 -1
  340. package/packages/workers/src/http/middleware/ValidateDriver.js +0 -20
  341. package/packages/workers/src/http/middleware/VersionSanitizer.d.ts +0 -4
  342. package/packages/workers/src/http/middleware/VersionSanitizer.d.ts.map +0 -1
  343. package/packages/workers/src/http/middleware/VersionSanitizer.js +0 -25
  344. package/packages/workers/src/http/middleware/WorkerNameSanitizer.d.ts +0 -4
  345. package/packages/workers/src/http/middleware/WorkerNameSanitizer.d.ts.map +0 -1
  346. package/packages/workers/src/http/middleware/WorkerNameSanitizer.js +0 -46
  347. package/packages/workers/src/http/middleware/WorkerValidationChain.d.ts +0 -28
  348. package/packages/workers/src/http/middleware/WorkerValidationChain.d.ts.map +0 -1
  349. package/packages/workers/src/http/middleware/WorkerValidationChain.js +0 -186
  350. package/packages/workers/src/index.d.ts +0 -47
  351. package/packages/workers/src/index.d.ts.map +0 -1
  352. package/packages/workers/src/index.js +0 -48
  353. package/packages/workers/src/routes/workers.d.ts +0 -13
  354. package/packages/workers/src/routes/workers.d.ts.map +0 -1
  355. package/packages/workers/src/routes/workers.js +0 -126
  356. package/packages/workers/src/storage/WorkerStore.d.ts +0 -52
  357. package/packages/workers/src/storage/WorkerStore.d.ts.map +0 -1
  358. package/packages/workers/src/storage/WorkerStore.js +0 -259
  359. package/packages/workers/src/telemetry/api/TelemetryAPI.d.ts +0 -47
  360. package/packages/workers/src/telemetry/api/TelemetryAPI.d.ts.map +0 -1
  361. package/packages/workers/src/telemetry/api/TelemetryAPI.js +0 -219
  362. package/packages/workers/src/telemetry/api/TelemetryMonitoringService.d.ts +0 -18
  363. package/packages/workers/src/telemetry/api/TelemetryMonitoringService.d.ts.map +0 -1
  364. package/packages/workers/src/telemetry/api/TelemetryMonitoringService.js +0 -140
  365. package/packages/workers/src/telemetry/components/AlertPanel.d.ts +0 -2
  366. package/packages/workers/src/telemetry/components/AlertPanel.d.ts.map +0 -1
  367. package/packages/workers/src/telemetry/components/AlertPanel.js +0 -13
  368. package/packages/workers/src/telemetry/components/CostTracking.d.ts +0 -2
  369. package/packages/workers/src/telemetry/components/CostTracking.d.ts.map +0 -1
  370. package/packages/workers/src/telemetry/components/CostTracking.js +0 -14
  371. package/packages/workers/src/telemetry/components/ResourceUsageChart.d.ts +0 -2
  372. package/packages/workers/src/telemetry/components/ResourceUsageChart.d.ts.map +0 -1
  373. package/packages/workers/src/telemetry/components/ResourceUsageChart.js +0 -11
  374. package/packages/workers/src/telemetry/components/WorkerHealthChart.d.ts +0 -2
  375. package/packages/workers/src/telemetry/components/WorkerHealthChart.d.ts.map +0 -1
  376. package/packages/workers/src/telemetry/components/WorkerHealthChart.js +0 -11
  377. package/packages/workers/src/telemetry/index.d.ts +0 -16
  378. package/packages/workers/src/telemetry/index.d.ts.map +0 -1
  379. package/packages/workers/src/telemetry/index.js +0 -60
  380. package/packages/workers/src/telemetry/routes/dashboard.d.ts +0 -7
  381. package/packages/workers/src/telemetry/routes/dashboard.d.ts.map +0 -1
  382. package/packages/workers/src/telemetry/routes/dashboard.js +0 -608
  383. package/packages/workers/src/type.d.ts +0 -77
  384. package/packages/workers/src/type.d.ts.map +0 -1
  385. package/packages/workers/src/type.js +0 -1
  386. package/packages/workers/src/ui/router/EmbeddedAssets.d.ts +0 -5
  387. package/packages/workers/src/ui/router/EmbeddedAssets.d.ts.map +0 -1
  388. package/packages/workers/src/ui/router/EmbeddedAssets.js +0 -13
  389. package/packages/workers/src/ui/router/ui.d.ts +0 -4
  390. package/packages/workers/src/ui/router/ui.d.ts.map +0 -1
  391. package/packages/workers/src/ui/router/ui.js +0 -208
  392. package/packages/workers/src/ui/types/worker-ui.d.ts +0 -230
  393. package/packages/workers/src/ui/types/worker-ui.d.ts.map +0 -1
  394. package/packages/workers/src/ui/types/worker-ui.js +0 -5
  395. package/routes/api.d.ts +0 -7
  396. package/routes/api.d.ts.map +0 -1
  397. package/routes/api.js +0 -129
  398. package/routes/broadcast.d.ts +0 -9
  399. package/routes/broadcast.d.ts.map +0 -1
  400. package/routes/broadcast.js +0 -27
  401. package/routes/storage.d.ts +0 -4
  402. package/routes/storage.d.ts.map +0 -1
  403. package/routes/storage.js +0 -35
@@ -1,52 +0,0 @@
1
- /**
2
- * Worker Store
3
- * Persistence layer for workers (memory, redis, db)
4
- */
5
- import type { createRedisConnection } from '../../../../src/index.js';
6
- import { type IDatabase } from '../../../../src/index.js';
7
- type RedisConnection = ReturnType<typeof createRedisConnection>;
8
- export type WorkerRecord = {
9
- name: string;
10
- queueName: string;
11
- version: string | null;
12
- status: string;
13
- autoStart: boolean;
14
- concurrency: number;
15
- region: string | null;
16
- processorSpec?: string | null;
17
- activeStatus?: boolean;
18
- features?: Record<string, unknown> | null;
19
- infrastructure?: Record<string, unknown> | null;
20
- datacenter?: Record<string, unknown> | null;
21
- createdAt: Date;
22
- updatedAt: Date;
23
- lastHealthCheck?: Date;
24
- lastError?: string;
25
- connectionState?: 'disconnected' | 'connecting' | 'connected' | 'error';
26
- };
27
- export type WorkerStore = {
28
- init(): Promise<void>;
29
- list(options?: {
30
- offset?: number;
31
- limit?: number;
32
- search?: string;
33
- includeInactive?: boolean;
34
- }): Promise<WorkerRecord[]>;
35
- get(name: string): Promise<WorkerRecord | null>;
36
- save(record: WorkerRecord): Promise<void>;
37
- update(name: string, patch: Partial<WorkerRecord>): Promise<void>;
38
- updateMany?: (names: string[], patch: Partial<WorkerRecord>) => Promise<void>;
39
- remove(name: string): Promise<void>;
40
- close?(): Promise<void>;
41
- };
42
- export declare const InMemoryWorkerStore: Readonly<{
43
- create(): WorkerStore;
44
- }>;
45
- export declare const RedisWorkerStore: Readonly<{
46
- create(client: RedisConnection, keyPrefix?: string): WorkerStore;
47
- }>;
48
- export declare const DbWorkerStore: Readonly<{
49
- create(db: IDatabase, table?: string): WorkerStore;
50
- }>;
51
- export {};
52
- //# sourceMappingURL=WorkerStore.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WorkerStore.d.ts","sourceRoot":"","sources":["../../../../../packages/workers/src/storage/WorkerStore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,KAAK,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEhE,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5C,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,eAAe,CAAC,EAAE,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,cAAc,GAAG,YAAY,GAAG,WAAW,GAAG,OAAO,CAAC;CACzE,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,IAAI,CAAC,OAAO,CAAC,EAAE;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC5B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAChD,IAAI,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9E,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB,CAAC;AAgFF,eAAO,MAAM,mBAAmB;cACpB,WAAW;EA0CrB,CAAC;AAEH,eAAO,MAAM,gBAAgB;mBACZ,eAAe,uBAAmC,WAAW;EA2E5E,CAAC;AAEH,eAAO,MAAM,aAAa;eACb,SAAS,mBAA+B,WAAW;EA2D9D,CAAC"}
@@ -1,259 +0,0 @@
1
- /**
2
- * Worker Store
3
- * Persistence layer for workers (memory, redis, db)
4
- */
5
- const now = () => new Date();
6
- const mergeRecord = (current, patch) => ({
7
- ...current,
8
- ...patch,
9
- updatedAt: patch.updatedAt ?? now(),
10
- });
11
- const toSqlDateTime = (value) => {
12
- if (!value)
13
- return null;
14
- // Use UTC and drop timezone for SQL DATETIME compatibility
15
- return value.toISOString().slice(0, 19).replace('T', ' ');
16
- };
17
- const serializeDbWorker = (record) => ({
18
- name: record.name,
19
- queue_name: record.queueName,
20
- version: record.version,
21
- status: record.status,
22
- auto_start: record.autoStart,
23
- concurrency: record.concurrency,
24
- region: record.region,
25
- processor_spec: record.processorSpec ?? null,
26
- active_status: record.activeStatus ?? true,
27
- features: record.features ? JSON.stringify(record.features) : null,
28
- infrastructure: record.infrastructure ? JSON.stringify(record.infrastructure) : null,
29
- datacenter: record.datacenter ? JSON.stringify(record.datacenter) : null,
30
- created_at: toSqlDateTime(record.createdAt),
31
- updated_at: toSqlDateTime(record.updatedAt),
32
- last_health_check: toSqlDateTime(record.lastHealthCheck ?? null),
33
- last_error: record.lastError ?? null,
34
- connection_state: record.connectionState ?? null,
35
- });
36
- const getHealthCheck = (row) => {
37
- if (!row['last_health_check']) {
38
- return undefined;
39
- }
40
- return row['last_health_check'] instanceof Date
41
- ? row['last_health_check']
42
- : new Date(String(row['last_health_check']));
43
- };
44
- const deserializeDbWorker = (row) => {
45
- const parseJson = (value) => {
46
- if (typeof value !== 'string' || value.trim() === '')
47
- return null;
48
- try {
49
- return JSON.parse(value);
50
- }
51
- catch {
52
- return null;
53
- }
54
- };
55
- return {
56
- name: String(row['name'] ?? ''),
57
- queueName: String(row['queue_name'] ?? ''),
58
- version: row['version'] ? String(row['version']) : null,
59
- status: String(row['status'] ?? 'unknown'),
60
- autoStart: Boolean(row['auto_start'] ?? false),
61
- concurrency: Number(row['concurrency'] ?? 0),
62
- region: row['region'] ? String(row['region']) : null,
63
- processorSpec: String(row['processor_spec']),
64
- activeStatus: row['active_status'] === undefined ? true : Boolean(row['active_status']),
65
- features: parseJson(row['features']),
66
- infrastructure: parseJson(row['infrastructure']),
67
- datacenter: parseJson(row['datacenter']),
68
- createdAt: row['created_at'] instanceof Date ? row['created_at'] : new Date(String(row['created_at'])),
69
- updatedAt: row['updated_at'] instanceof Date ? row['updated_at'] : new Date(String(row['updated_at'])),
70
- lastHealthCheck: getHealthCheck(row),
71
- lastError: row['last_error'] ? String(row['last_error']) : undefined,
72
- connectionState: row['connection_state']
73
- ? String(row['connection_state'])
74
- : undefined,
75
- };
76
- };
77
- export const InMemoryWorkerStore = Object.freeze({
78
- create() {
79
- const store = new Map();
80
- return {
81
- async init() {
82
- return undefined;
83
- },
84
- async list(options) {
85
- let values = Array.from(store.values());
86
- if (options) {
87
- const start = options.offset || 0;
88
- const end = options.limit ? start + options.limit : undefined;
89
- values = values.slice(start, end);
90
- }
91
- return values;
92
- },
93
- async get(name) {
94
- return store.get(name) ?? null;
95
- },
96
- async save(record) {
97
- store.set(record.name, record);
98
- },
99
- async update(name, patch) {
100
- const current = store.get(name);
101
- if (!current)
102
- return;
103
- store.set(name, mergeRecord(current, patch));
104
- },
105
- async updateMany(names, patch) {
106
- for (const name of names) {
107
- const current = store.get(name);
108
- if (!current)
109
- continue;
110
- store.set(name, mergeRecord(current, patch));
111
- }
112
- },
113
- async remove(name) {
114
- store.delete(name);
115
- },
116
- async close() {
117
- // No-op for memory store
118
- },
119
- };
120
- },
121
- });
122
- export const RedisWorkerStore = Object.freeze({
123
- create(client, keyPrefix = 'workers:registry') {
124
- const key = keyPrefix;
125
- const serialize = (record) => JSON.stringify({
126
- ...record,
127
- createdAt: record.createdAt.toISOString(),
128
- updatedAt: record.updatedAt.toISOString(),
129
- });
130
- const deserialize = (raw) => {
131
- const parsed = JSON.parse(raw);
132
- return {
133
- ...parsed,
134
- createdAt: new Date(parsed.createdAt),
135
- updatedAt: new Date(parsed.updatedAt),
136
- };
137
- };
138
- return {
139
- async init() {
140
- return undefined;
141
- },
142
- async list(options) {
143
- const all = await client.hgetall(key);
144
- let values = Object.values(all).map((element) => deserialize(element));
145
- values.sort((a, b) => a.name.localeCompare(b.name));
146
- if (options) {
147
- const start = options.offset || 0;
148
- const end = options.limit ? start + options.limit : undefined;
149
- values = values.slice(start, end);
150
- }
151
- return values;
152
- },
153
- async get(name) {
154
- const raw = await client.hget(key, name);
155
- return raw ? deserialize(raw) : null;
156
- },
157
- async save(record) {
158
- await client.hset(key, record.name, serialize(record));
159
- },
160
- async update(name, patch) {
161
- const current = await this.get(name);
162
- if (!current)
163
- return;
164
- await client.hset(key, name, serialize(mergeRecord(current, patch)));
165
- },
166
- async updateMany(names, patch) {
167
- if (names.length === 0)
168
- return;
169
- const entries = await client.hmget(key, ...names);
170
- const updates = [];
171
- entries.forEach((raw, index) => {
172
- if (!raw)
173
- return;
174
- const current = deserialize(raw);
175
- const updated = mergeRecord(current, patch);
176
- updates.push(names[index], serialize(updated));
177
- });
178
- if (updates.length === 0)
179
- return;
180
- await client.hset(key, ...updates);
181
- },
182
- async close() {
183
- try {
184
- // Force disconnect in Cloudflare env to avoid hanging on quit()
185
- client.disconnect();
186
- }
187
- catch {
188
- // Ignore connection errors during cleanup
189
- }
190
- },
191
- async remove(name) {
192
- await client.hdel(key, name);
193
- },
194
- };
195
- },
196
- });
197
- export const DbWorkerStore = Object.freeze({
198
- create(db, table = 'zintrust_workers') {
199
- return {
200
- async init() {
201
- return undefined;
202
- },
203
- async list(options) {
204
- const query = db.table(table);
205
- if (options?.limit)
206
- query.limit(options.limit);
207
- if (options?.offset)
208
- query.offset(options.offset);
209
- const rows = await query.get();
210
- return rows.map((element) => deserializeDbWorker(element));
211
- },
212
- async get(name) {
213
- const row = await db.table(table).where('name', '=', name).first();
214
- return row ? deserializeDbWorker(row) : null;
215
- },
216
- async save(record) {
217
- const existing = await db
218
- .table(table)
219
- .where('name', '=', record.name)
220
- .first();
221
- if (existing) {
222
- await db.table(table).where('name', '=', record.name).update(serializeDbWorker(record));
223
- return;
224
- }
225
- await db.table(table).insert(serializeDbWorker(record));
226
- },
227
- async update(name, patch) {
228
- const current = await this.get(name);
229
- if (!current)
230
- return;
231
- const updated = mergeRecord(current, patch);
232
- await db.table(table).where('name', '=', name).update(serializeDbWorker(updated));
233
- },
234
- async updateMany(names, patch) {
235
- if (names.length === 0)
236
- return;
237
- const update = {
238
- updated_at: toSqlDateTime(patch.updatedAt ?? now()),
239
- };
240
- if (patch.status !== undefined)
241
- update['status'] = patch.status;
242
- if (patch.lastError !== undefined)
243
- update['last_error'] = patch.lastError ?? null;
244
- if (patch.lastHealthCheck !== undefined)
245
- update['last_health_check'] = toSqlDateTime(patch.lastHealthCheck ?? null);
246
- if (patch.connectionState !== undefined)
247
- update['connection_state'] = patch.connectionState ?? null;
248
- await db.table(table).whereIn('name', names).update(update);
249
- },
250
- async remove(name) {
251
- await db.table(table).where('name', '=', name).delete();
252
- },
253
- async close() {
254
- // Database clients often managed by pool, but if needed:
255
- // await db.destroy?.();
256
- },
257
- };
258
- },
259
- });
@@ -1,47 +0,0 @@
1
- export type TelemetrySettings = {
2
- enabled: boolean;
3
- basePath: string;
4
- middleware: ReadonlyArray<string>;
5
- autoRefresh: boolean;
6
- refreshIntervalMs: number;
7
- };
8
- export type ResourceCurrentResponse = {
9
- ok: boolean;
10
- usage?: unknown;
11
- };
12
- export type SystemSummaryResponse = {
13
- ok: boolean;
14
- summary?: unknown;
15
- };
16
- export type ApiResponse<T> = {
17
- ok: boolean;
18
- error?: string;
19
- } & T;
20
- export type AlertRep = {
21
- type: string;
22
- severity: string;
23
- message: string;
24
- timestamp: string;
25
- recommendation?: string;
26
- };
27
- export declare const TelemetryAPI: Readonly<{
28
- getSystemSummary(): Promise<ApiResponse<{
29
- summary: unknown;
30
- }>>;
31
- getMonitoringSummary(): Promise<ApiResponse<{
32
- summary: unknown;
33
- }>>;
34
- getResourceCurrent(): Promise<ApiResponse<{
35
- usage: unknown;
36
- }>>;
37
- getResourceTrends(): Promise<ApiResponse<{
38
- trends: unknown;
39
- }>>;
40
- }>;
41
- export declare function createSnapshotBuilder(): () => Promise<{
42
- ok: boolean;
43
- summary: unknown;
44
- resources: unknown;
45
- cost: unknown;
46
- }>;
47
- //# sourceMappingURL=TelemetryAPI.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TelemetryAPI.d.ts","sourceRoot":"","sources":["../../../../../../packages/workers/src/telemetry/api/TelemetryAPI.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAClC,WAAW,EAAE,OAAO,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AACvE,MAAM,MAAM,qBAAqB,GAAG;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAQvE,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,CAAC,CAAC;AACjE,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AA+IF,eAAO,MAAM,YAAY;wBACG,OAAO,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;4BAuCtC,OAAO,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;0BAc5C,OAAO,CAAC,WAAW,CAAC;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;yBAczC,OAAO,CAAC,WAAW,CAAC;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;EAapE,CAAC;AAEH,wBAAgB,qBAAqB,UAClB,OAAO,CAAC;IACvB,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;CACf,CAAC,CA4BH"}
@@ -1,219 +0,0 @@
1
- import { Logger } from '../../../../../src/index.js';
2
- import { getWorkers } from '../../dashboard/workers-api.js';
3
- import { HealthMonitor } from '../../HealthMonitor.js';
4
- import { ResourceMonitor } from '../../ResourceMonitor.js';
5
- const isOkWithUsage = (value) => value.ok === true && 'usage' in value;
6
- const isOkWithSummary = (value) => value.ok === true && 'summary' in value;
7
- // Helper function to create stopped worker alert
8
- const createStoppedWorkerAlert = (worker) => ({
9
- type: 'worker-stopped',
10
- severity: 'warning',
11
- message: `Worker ${worker.name} is stopped`,
12
- timestamp: worker.health?.lastCheck || new Date().toISOString(),
13
- });
14
- // Helper function to create health check alert
15
- const createHealthCheckAlert = (worker) => {
16
- const check = worker.health?.checks?.[0];
17
- if (!check)
18
- return null;
19
- return {
20
- type: 'health-check-failed',
21
- severity: check.status === 'fail' ? 'critical' : 'warning',
22
- message: check.message || `Health check failed: ${check.name}`,
23
- timestamp: worker.health?.lastCheck || new Date().toISOString(),
24
- };
25
- };
26
- // Helper function to generate worker alerts
27
- const generateWorkerAlerts = (workers) => {
28
- return workers
29
- .filter((w) => {
30
- return (w.status !== 'running' ||
31
- w.health?.status !== 'healthy' ||
32
- (w.health?.checks && w.health.checks.length > 0));
33
- })
34
- .map((w) => {
35
- const workerData = {
36
- workerName: w.name,
37
- status: w.status,
38
- healthStatus: w.health?.status || 'unknown',
39
- lastCheck: w.health?.lastCheck || new Date().toISOString(),
40
- checks: w.health?.checks || [],
41
- };
42
- let alert = null;
43
- if (w.status === 'stopped') {
44
- alert = createStoppedWorkerAlert(w);
45
- }
46
- else if (w.health?.checks && w.health.checks.length > 0) {
47
- alert = createHealthCheckAlert(w);
48
- }
49
- return {
50
- ...workerData,
51
- alert,
52
- };
53
- })
54
- .filter((w) => w.alert !== null);
55
- };
56
- // Helper function to generate resource alerts
57
- const generateResourceAlerts = (resourceUsage) => {
58
- const resourceAlerts = [];
59
- const cpuUsage = resourceUsage.resourceSnapshot?.cpu?.usage || 0;
60
- const memoryUsage = resourceUsage.resourceSnapshot?.memory?.usage || 0;
61
- if (cpuUsage > 90) {
62
- resourceAlerts.push({
63
- type: 'cpu-high',
64
- severity: 'critical',
65
- message: `Critical CPU usage: ${cpuUsage.toFixed(1)}%`,
66
- timestamp: new Date().toISOString(),
67
- recommendation: 'Consider scaling up or optimizing worker code',
68
- });
69
- }
70
- else if (cpuUsage > 80) {
71
- resourceAlerts.push({
72
- type: 'cpu-high',
73
- severity: 'warning',
74
- message: `High CPU usage: ${cpuUsage.toFixed(1)}%`,
75
- timestamp: new Date().toISOString(),
76
- recommendation: 'Monitor closely and consider scaling',
77
- });
78
- }
79
- if (memoryUsage > 95) {
80
- resourceAlerts.push({
81
- type: 'memory-high',
82
- severity: 'critical',
83
- message: `Critical memory usage: ${memoryUsage.toFixed(1)}%`,
84
- timestamp: new Date().toISOString(),
85
- recommendation: 'Increase memory allocation or optimize memory usage',
86
- });
87
- }
88
- else if (memoryUsage > 85) {
89
- resourceAlerts.push({
90
- type: 'memory-high',
91
- severity: 'warning',
92
- message: `High memory usage: ${memoryUsage.toFixed(1)}%`,
93
- timestamp: new Date().toISOString(),
94
- recommendation: 'Monitor memory usage closely',
95
- });
96
- }
97
- return resourceAlerts;
98
- };
99
- // Helper function to calculate monitoring summary
100
- const calculateMonitoringSummary = (runningWorkers) => {
101
- const healthyCount = runningWorkers.filter((w) => w.health?.status === 'healthy').length;
102
- const degradedCount = runningWorkers.filter((w) => w.health?.status === 'warning').length;
103
- const criticalCount = runningWorkers.filter((w) => w.health?.status === 'unhealthy').length;
104
- return {
105
- total: runningWorkers.length,
106
- healthy: healthyCount,
107
- degraded: degradedCount,
108
- critical: criticalCount,
109
- details: runningWorkers.map((w) => ({
110
- workerName: w.name,
111
- status: w.health?.status || 'unknown',
112
- lastCheck: w.health?.lastCheck || new Date().toISOString(),
113
- checks: w.health?.checks || [],
114
- })),
115
- };
116
- };
117
- export const TelemetryAPI = Object.freeze({
118
- async getSystemSummary() {
119
- try {
120
- // Get all workers (both running and stopped) for complete alert visibility
121
- const workersResult = await getWorkers({});
122
- const runningWorkers = workersResult.workers.filter((w) => w.status === 'running');
123
- // Calculate monitoring summary from running workers only
124
- const monitoringSummary = calculateMonitoringSummary(runningWorkers);
125
- // Generate alerts from workers and resources
126
- const workerAlerts = generateWorkerAlerts(workersResult.workers);
127
- const resourceUsage = ResourceMonitor.getCurrentUsage('system');
128
- const resourceAlerts = generateResourceAlerts(resourceUsage);
129
- // Combine all alerts
130
- const allAlerts = [...workerAlerts, ...resourceAlerts];
131
- return {
132
- ok: true,
133
- summary: {
134
- workers: runningWorkers.length,
135
- monitoring: {
136
- ...monitoringSummary,
137
- alerts: allAlerts, // Include all alerts (workers + resources)
138
- },
139
- resources: resourceUsage,
140
- alerts: allAlerts, // Top-level alerts for easy access
141
- },
142
- };
143
- }
144
- catch (error) {
145
- Logger.error('Failed to get system summary', error);
146
- return {
147
- ok: false,
148
- error: error instanceof Error ? error.message : 'Unknown error',
149
- summary: {},
150
- };
151
- }
152
- },
153
- async getMonitoringSummary() {
154
- try {
155
- const summary = await HealthMonitor.getSummary();
156
- return { ok: true, summary };
157
- }
158
- catch (error) {
159
- Logger.error('Failed to get monitoring summary', error);
160
- return {
161
- ok: false,
162
- error: error instanceof Error ? error.message : 'Unknown error',
163
- summary: {},
164
- };
165
- }
166
- },
167
- async getResourceCurrent() {
168
- try {
169
- const usage = ResourceMonitor.getCurrentUsage('system');
170
- return { ok: true, usage };
171
- }
172
- catch (error) {
173
- Logger.error('Failed to get resource usage', error);
174
- return {
175
- ok: false,
176
- error: error instanceof Error ? error.message : 'Unknown error',
177
- usage: null,
178
- };
179
- }
180
- },
181
- async getResourceTrends() {
182
- try {
183
- const trends = ResourceMonitor.getAllTrends('system', 'day');
184
- return { ok: true, trends };
185
- }
186
- catch (error) {
187
- Logger.error('Failed to get resource trends', error);
188
- return {
189
- ok: false,
190
- error: error instanceof Error ? error.message : 'Unknown error',
191
- trends: null,
192
- };
193
- }
194
- },
195
- });
196
- export function createSnapshotBuilder() {
197
- return async () => {
198
- const [systemSummaryResult, resourceCurrentResult] = await Promise.allSettled([
199
- TelemetryAPI.getSystemSummary(),
200
- TelemetryAPI.getResourceCurrent(),
201
- ]);
202
- if (systemSummaryResult.status === 'rejected') {
203
- Logger.error('Telemetry dashboard summary failed', systemSummaryResult.reason);
204
- }
205
- if (resourceCurrentResult.status === 'rejected') {
206
- Logger.error('Telemetry resource summary failed', resourceCurrentResult.reason);
207
- }
208
- const systemSummary = systemSummaryResult.status === 'fulfilled' ? systemSummaryResult.value : { ok: false };
209
- const resourceCurrent = resourceCurrentResult.status === 'fulfilled'
210
- ? resourceCurrentResult.value
211
- : { ok: false };
212
- return {
213
- ok: systemSummary.ok ?? false,
214
- summary: isOkWithSummary(systemSummary) ? systemSummary.summary : {},
215
- resources: isOkWithUsage(resourceCurrent) ? resourceCurrent.usage : null,
216
- cost: null,
217
- };
218
- };
219
- }
@@ -1,18 +0,0 @@
1
- import type { IResponse } from '../../../../../src/index.js';
2
- import type { createSnapshotBuilder, TelemetrySettings } from './TelemetryAPI';
3
- export type TelemetrySnapshotData = {
4
- type: string;
5
- ts: string;
6
- ok: boolean;
7
- summary: unknown;
8
- resources: unknown;
9
- cost: unknown;
10
- };
11
- export declare const TelemetryMonitoringService: Readonly<{
12
- subscribe(callback: (data: TelemetrySnapshotData) => void): void;
13
- unsubscribe(callback: (data: TelemetrySnapshotData) => void): void;
14
- startMonitoring(settings: TelemetrySettings, buildSnapshot: ReturnType<typeof createSnapshotBuilder>): void;
15
- stopMonitoring(): void;
16
- }>;
17
- export declare const teleStream: (res: IResponse, settings: TelemetrySettings, buildSnapshot: ReturnType<typeof createSnapshotBuilder>) => Promise<void>;
18
- //# sourceMappingURL=TelemetryMonitoringService.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TelemetryMonitoringService.d.ts","sourceRoot":"","sources":["../../../../../../packages/workers/src/telemetry/api/TelemetryMonitoringService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAE/E,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAkFF,eAAO,MAAM,0BAA0B;wBACjB,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,GAAG,IAAI;0BAQ1C,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,GAAG,IAAI;8BAWtD,iBAAiB,iBACZ,UAAU,CAAC,OAAO,qBAAqB,CAAC,GACtD,IAAI;sBAOW,IAAI;EAOtB,CAAC;AAEH,eAAO,MAAM,UAAU,GACrB,KAAK,SAAS,EACd,UAAU,iBAAiB,EAC3B,eAAe,UAAU,CAAC,OAAO,qBAAqB,CAAC,KACtD,OAAO,CAAC,IAAI,CA8Cd,CAAC"}