@zintrust/core 0.1.49 → 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 (341) hide show
  1. package/package.json +1 -9
  2. package/src/config/index.d.ts +1 -1
  3. package/src/config/index.d.ts.map +1 -1
  4. package/src/config/index.js +30 -10
  5. package/src/index.d.ts +0 -2
  6. package/src/index.d.ts.map +1 -1
  7. package/src/index.js +3 -5
  8. package/src/proxy/d1/ZintrustD1Proxy.d.ts +2 -2
  9. package/src/proxy/d1/ZintrustD1Proxy.d.ts.map +1 -1
  10. package/src/proxy/d1/ZintrustD1Proxy.js +39 -2
  11. package/src/proxy/kv/ZintrustKvProxy.d.ts +2 -2
  12. package/src/proxy/kv/ZintrustKvProxy.d.ts.map +1 -1
  13. package/src/proxy/kv/ZintrustKvProxy.js +38 -2
  14. package/src/security/JwtManager.js +1 -1
  15. package/src/zintrust.comon.d.ts +9 -0
  16. package/src/zintrust.comon.d.ts.map +1 -0
  17. package/src/zintrust.comon.js +15 -0
  18. package/src/zintrust.plugins.d.ts +9 -3
  19. package/src/zintrust.plugins.d.ts.map +1 -1
  20. package/src/zintrust.plugins.js +10 -3
  21. package/src/zintrust.plugins.wg.d.ts +1 -0
  22. package/src/zintrust.plugins.wg.d.ts.map +1 -1
  23. package/src/zintrust.plugins.wg.js +1 -0
  24. package/app/Controllers/AuthController.d.ts +0 -10
  25. package/app/Controllers/AuthController.d.ts.map +0 -1
  26. package/app/Controllers/AuthController.js +0 -223
  27. package/app/Controllers/UserController.d.ts +0 -9
  28. package/app/Controllers/UserController.d.ts.map +0 -1
  29. package/app/Controllers/UserController.js +0 -8
  30. package/app/Controllers/UserQueryBuilderController.d.ts +0 -16
  31. package/app/Controllers/UserQueryBuilderController.d.ts.map +0 -1
  32. package/app/Controllers/UserQueryBuilderController.js +0 -404
  33. package/app/Middleware/ProfilerMiddleware.d.ts +0 -12
  34. package/app/Middleware/ProfilerMiddleware.d.ts.map +0 -1
  35. package/app/Middleware/ProfilerMiddleware.js +0 -47
  36. package/app/Middleware/index.d.ts +0 -59
  37. package/app/Middleware/index.d.ts.map +0 -1
  38. package/app/Middleware/index.js +0 -215
  39. package/app/Models/Post.d.ts +0 -14
  40. package/app/Models/Post.d.ts.map +0 -1
  41. package/app/Models/Post.js +0 -27
  42. package/app/Models/User.d.ts +0 -14
  43. package/app/Models/User.d.ts.map +0 -1
  44. package/app/Models/User.js +0 -44
  45. package/app/Schedules/JobTracking.d.ts +0 -3
  46. package/app/Schedules/JobTracking.d.ts.map +0 -1
  47. package/app/Schedules/JobTracking.js +0 -13
  48. package/app/Schedules/index.d.ts +0 -2
  49. package/app/Schedules/index.d.ts.map +0 -1
  50. package/app/Schedules/index.js +0 -1
  51. package/app/Toolkit/Broadcast/sendBroadcast.d.ts +0 -6
  52. package/app/Toolkit/Broadcast/sendBroadcast.d.ts.map +0 -1
  53. package/app/Toolkit/Broadcast/sendBroadcast.js +0 -5
  54. package/app/Toolkit/Mail/sendWelcomeEmail.d.ts +0 -6
  55. package/app/Toolkit/Mail/sendWelcomeEmail.d.ts.map +0 -1
  56. package/app/Toolkit/Mail/sendWelcomeEmail.js +0 -20
  57. package/app/Toolkit/Notification/sendSlackNotification.d.ts +0 -8
  58. package/app/Toolkit/Notification/sendSlackNotification.d.ts.map +0 -1
  59. package/app/Toolkit/Notification/sendSlackNotification.js +0 -5
  60. package/app/Toolkit/Notification/sendSms.d.ts +0 -6
  61. package/app/Toolkit/Notification/sendSms.d.ts.map +0 -1
  62. package/app/Toolkit/Notification/sendSms.js +0 -5
  63. package/app/Types/controller.d.ts +0 -44
  64. package/app/Types/controller.d.ts.map +0 -1
  65. package/app/Types/controller.js +0 -1
  66. package/config/broadcast.d.ts +0 -38
  67. package/config/broadcast.d.ts.map +0 -1
  68. package/config/broadcast.js +0 -37
  69. package/config/cache.d.ts +0 -40
  70. package/config/cache.d.ts.map +0 -1
  71. package/config/cache.js +0 -39
  72. package/config/database.d.ts +0 -58
  73. package/config/database.d.ts.map +0 -1
  74. package/config/database.js +0 -65
  75. package/config/mail.d.ts +0 -51
  76. package/config/mail.d.ts.map +0 -1
  77. package/config/mail.js +0 -69
  78. package/config/middleware.d.ts +0 -11
  79. package/config/middleware.d.ts.map +0 -1
  80. package/config/middleware.js +0 -30
  81. package/config/notification.d.ts +0 -33
  82. package/config/notification.d.ts.map +0 -1
  83. package/config/notification.js +0 -33
  84. package/config/queue.d.ts +0 -55
  85. package/config/queue.d.ts.map +0 -1
  86. package/config/queue.js +0 -87
  87. package/config/storage.d.ts +0 -59
  88. package/config/storage.d.ts.map +0 -1
  89. package/config/storage.js +0 -59
  90. package/config/workers.d.ts +0 -54
  91. package/config/workers.d.ts.map +0 -1
  92. package/config/workers.js +0 -83
  93. package/packages/cloudflare-d1-proxy/src/index.d.ts +0 -48
  94. package/packages/cloudflare-d1-proxy/src/index.d.ts.map +0 -1
  95. package/packages/cloudflare-d1-proxy/src/index.js +0 -387
  96. package/packages/cloudflare-kv-proxy/src/index.d.ts +0 -44
  97. package/packages/cloudflare-kv-proxy/src/index.d.ts.map +0 -1
  98. package/packages/cloudflare-kv-proxy/src/index.js +0 -325
  99. package/packages/queue-monitor/src/QueueMonitoringService.d.ts +0 -35
  100. package/packages/queue-monitor/src/QueueMonitoringService.d.ts.map +0 -1
  101. package/packages/queue-monitor/src/QueueMonitoringService.js +0 -194
  102. package/packages/queue-monitor/src/connection.d.ts +0 -3
  103. package/packages/queue-monitor/src/connection.d.ts.map +0 -1
  104. package/packages/queue-monitor/src/connection.js +0 -1
  105. package/packages/queue-monitor/src/dashboard-ui.d.ts +0 -7
  106. package/packages/queue-monitor/src/dashboard-ui.d.ts.map +0 -1
  107. package/packages/queue-monitor/src/dashboard-ui.js +0 -997
  108. package/packages/queue-monitor/src/driver.d.ts +0 -15
  109. package/packages/queue-monitor/src/driver.d.ts.map +0 -1
  110. package/packages/queue-monitor/src/driver.js +0 -115
  111. package/packages/queue-monitor/src/index.d.ts +0 -71
  112. package/packages/queue-monitor/src/index.d.ts.map +0 -1
  113. package/packages/queue-monitor/src/index.js +0 -296
  114. package/packages/queue-monitor/src/metrics.d.ts +0 -27
  115. package/packages/queue-monitor/src/metrics.d.ts.map +0 -1
  116. package/packages/queue-monitor/src/metrics.js +0 -92
  117. package/packages/queue-monitor/src/worker.d.ts +0 -8
  118. package/packages/queue-monitor/src/worker.d.ts.map +0 -1
  119. package/packages/queue-monitor/src/worker.js +0 -35
  120. package/packages/queue-redis/src/BullMQRedisQueue.d.ts +0 -26
  121. package/packages/queue-redis/src/BullMQRedisQueue.d.ts.map +0 -1
  122. package/packages/queue-redis/src/BullMQRedisQueue.js +0 -463
  123. package/packages/queue-redis/src/HttpQueueDriver.d.ts +0 -18
  124. package/packages/queue-redis/src/HttpQueueDriver.d.ts.map +0 -1
  125. package/packages/queue-redis/src/HttpQueueDriver.js +0 -249
  126. package/packages/queue-redis/src/QueueHttpGateway.d.ts +0 -16
  127. package/packages/queue-redis/src/QueueHttpGateway.d.ts.map +0 -1
  128. package/packages/queue-redis/src/QueueHttpGateway.js +0 -217
  129. package/packages/queue-redis/src/RedisPublishClient.d.ts +0 -14
  130. package/packages/queue-redis/src/RedisPublishClient.d.ts.map +0 -1
  131. package/packages/queue-redis/src/RedisPublishClient.js +0 -251
  132. package/packages/queue-redis/src/index.d.ts +0 -12
  133. package/packages/queue-redis/src/index.d.ts.map +0 -1
  134. package/packages/queue-redis/src/index.js +0 -10
  135. package/packages/queue-redis/src/register.d.ts +0 -6
  136. package/packages/queue-redis/src/register.d.ts.map +0 -1
  137. package/packages/queue-redis/src/register.js +0 -21
  138. package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.d.ts +0 -11
  139. package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.d.ts.map +0 -1
  140. package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.js +0 -32
  141. package/packages/workers/migrations/20260123180000_create_queue_jobs_table.d.ts +0 -11
  142. package/packages/workers/migrations/20260123180000_create_queue_jobs_table.d.ts.map +0 -1
  143. package/packages/workers/migrations/20260123180000_create_queue_jobs_table.js +0 -46
  144. package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.d.ts +0 -7
  145. package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.d.ts.map +0 -1
  146. package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.js +0 -44
  147. package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.d.ts +0 -7
  148. package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.d.ts.map +0 -1
  149. package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.js +0 -104
  150. package/packages/workers/src/AnomalyDetection.d.ts +0 -107
  151. package/packages/workers/src/AnomalyDetection.d.ts.map +0 -1
  152. package/packages/workers/src/AnomalyDetection.js +0 -329
  153. package/packages/workers/src/AutoScaler.d.ts +0 -128
  154. package/packages/workers/src/AutoScaler.d.ts.map +0 -1
  155. package/packages/workers/src/AutoScaler.js +0 -425
  156. package/packages/workers/src/BroadcastWorker.d.ts +0 -24
  157. package/packages/workers/src/BroadcastWorker.d.ts.map +0 -1
  158. package/packages/workers/src/BroadcastWorker.js +0 -24
  159. package/packages/workers/src/CanaryController.d.ts +0 -104
  160. package/packages/workers/src/CanaryController.d.ts.map +0 -1
  161. package/packages/workers/src/CanaryController.js +0 -424
  162. package/packages/workers/src/ChaosEngineering.d.ts +0 -80
  163. package/packages/workers/src/ChaosEngineering.d.ts.map +0 -1
  164. package/packages/workers/src/ChaosEngineering.js +0 -229
  165. package/packages/workers/src/CircuitBreaker.d.ts +0 -107
  166. package/packages/workers/src/CircuitBreaker.d.ts.map +0 -1
  167. package/packages/workers/src/CircuitBreaker.js +0 -374
  168. package/packages/workers/src/ClusterLock.d.ts +0 -91
  169. package/packages/workers/src/ClusterLock.d.ts.map +0 -1
  170. package/packages/workers/src/ClusterLock.js +0 -397
  171. package/packages/workers/src/ComplianceManager.d.ts +0 -178
  172. package/packages/workers/src/ComplianceManager.d.ts.map +0 -1
  173. package/packages/workers/src/ComplianceManager.js +0 -556
  174. package/packages/workers/src/DatacenterOrchestrator.d.ts +0 -134
  175. package/packages/workers/src/DatacenterOrchestrator.d.ts.map +0 -1
  176. package/packages/workers/src/DatacenterOrchestrator.js +0 -404
  177. package/packages/workers/src/DeadLetterQueue.d.ts +0 -123
  178. package/packages/workers/src/DeadLetterQueue.d.ts.map +0 -1
  179. package/packages/workers/src/DeadLetterQueue.js +0 -544
  180. package/packages/workers/src/HealthMonitor.d.ts +0 -43
  181. package/packages/workers/src/HealthMonitor.d.ts.map +0 -1
  182. package/packages/workers/src/HealthMonitor.js +0 -312
  183. package/packages/workers/src/MultiQueueWorker.d.ts +0 -90
  184. package/packages/workers/src/MultiQueueWorker.d.ts.map +0 -1
  185. package/packages/workers/src/MultiQueueWorker.js +0 -282
  186. package/packages/workers/src/NotificationWorker.d.ts +0 -24
  187. package/packages/workers/src/NotificationWorker.d.ts.map +0 -1
  188. package/packages/workers/src/NotificationWorker.js +0 -23
  189. package/packages/workers/src/Observability.d.ts +0 -154
  190. package/packages/workers/src/Observability.d.ts.map +0 -1
  191. package/packages/workers/src/Observability.js +0 -538
  192. package/packages/workers/src/PluginManager.d.ts +0 -124
  193. package/packages/workers/src/PluginManager.d.ts.map +0 -1
  194. package/packages/workers/src/PluginManager.js +0 -392
  195. package/packages/workers/src/PriorityQueue.d.ts +0 -118
  196. package/packages/workers/src/PriorityQueue.d.ts.map +0 -1
  197. package/packages/workers/src/PriorityQueue.js +0 -276
  198. package/packages/workers/src/ResourceMonitor.d.ts +0 -165
  199. package/packages/workers/src/ResourceMonitor.d.ts.map +0 -1
  200. package/packages/workers/src/ResourceMonitor.js +0 -632
  201. package/packages/workers/src/SLAMonitor.d.ts +0 -111
  202. package/packages/workers/src/SLAMonitor.d.ts.map +0 -1
  203. package/packages/workers/src/SLAMonitor.js +0 -274
  204. package/packages/workers/src/WorkerFactory.d.ts +0 -218
  205. package/packages/workers/src/WorkerFactory.d.ts.map +0 -1
  206. package/packages/workers/src/WorkerFactory.js +0 -2253
  207. package/packages/workers/src/WorkerInit.d.ts +0 -86
  208. package/packages/workers/src/WorkerInit.d.ts.map +0 -1
  209. package/packages/workers/src/WorkerInit.js +0 -307
  210. package/packages/workers/src/WorkerMetrics.d.ts +0 -116
  211. package/packages/workers/src/WorkerMetrics.d.ts.map +0 -1
  212. package/packages/workers/src/WorkerMetrics.js +0 -570
  213. package/packages/workers/src/WorkerRegistry.d.ts +0 -152
  214. package/packages/workers/src/WorkerRegistry.d.ts.map +0 -1
  215. package/packages/workers/src/WorkerRegistry.js +0 -396
  216. package/packages/workers/src/WorkerShutdown.d.ts +0 -70
  217. package/packages/workers/src/WorkerShutdown.d.ts.map +0 -1
  218. package/packages/workers/src/WorkerShutdown.js +0 -185
  219. package/packages/workers/src/WorkerVersioning.d.ts +0 -108
  220. package/packages/workers/src/WorkerVersioning.d.ts.map +0 -1
  221. package/packages/workers/src/WorkerVersioning.js +0 -300
  222. package/packages/workers/src/config/workerConfig.d.ts +0 -5
  223. package/packages/workers/src/config/workerConfig.d.ts.map +0 -1
  224. package/packages/workers/src/config/workerConfig.js +0 -25
  225. package/packages/workers/src/createQueueWorker.d.ts +0 -26
  226. package/packages/workers/src/createQueueWorker.d.ts.map +0 -1
  227. package/packages/workers/src/createQueueWorker.js +0 -367
  228. package/packages/workers/src/dashboard/index.d.ts +0 -2
  229. package/packages/workers/src/dashboard/index.d.ts.map +0 -1
  230. package/packages/workers/src/dashboard/index.js +0 -1
  231. package/packages/workers/src/dashboard/types.d.ts +0 -123
  232. package/packages/workers/src/dashboard/types.d.ts.map +0 -1
  233. package/packages/workers/src/dashboard/types.js +0 -1
  234. package/packages/workers/src/dashboard/workers-api.d.ts +0 -5
  235. package/packages/workers/src/dashboard/workers-api.d.ts.map +0 -1
  236. package/packages/workers/src/dashboard/workers-api.js +0 -738
  237. package/packages/workers/src/helper/index.d.ts +0 -6
  238. package/packages/workers/src/helper/index.d.ts.map +0 -1
  239. package/packages/workers/src/helper/index.js +0 -10
  240. package/packages/workers/src/http/WorkerApiController.d.ts +0 -39
  241. package/packages/workers/src/http/WorkerApiController.d.ts.map +0 -1
  242. package/packages/workers/src/http/WorkerApiController.js +0 -313
  243. package/packages/workers/src/http/WorkerController.d.ts +0 -375
  244. package/packages/workers/src/http/WorkerController.d.ts.map +0 -1
  245. package/packages/workers/src/http/WorkerController.js +0 -1454
  246. package/packages/workers/src/http/WorkerMonitoringService.d.ts +0 -12
  247. package/packages/workers/src/http/WorkerMonitoringService.d.ts.map +0 -1
  248. package/packages/workers/src/http/WorkerMonitoringService.js +0 -89
  249. package/packages/workers/src/http/middleware/CustomValidation.d.ts +0 -93
  250. package/packages/workers/src/http/middleware/CustomValidation.d.ts.map +0 -1
  251. package/packages/workers/src/http/middleware/CustomValidation.js +0 -270
  252. package/packages/workers/src/http/middleware/DatacenterValidator.d.ts +0 -4
  253. package/packages/workers/src/http/middleware/DatacenterValidator.d.ts.map +0 -1
  254. package/packages/workers/src/http/middleware/DatacenterValidator.js +0 -94
  255. package/packages/workers/src/http/middleware/EditWorkerValidation.d.ts +0 -8
  256. package/packages/workers/src/http/middleware/EditWorkerValidation.d.ts.map +0 -1
  257. package/packages/workers/src/http/middleware/EditWorkerValidation.js +0 -56
  258. package/packages/workers/src/http/middleware/FeaturesValidator.d.ts +0 -4
  259. package/packages/workers/src/http/middleware/FeaturesValidator.d.ts.map +0 -1
  260. package/packages/workers/src/http/middleware/FeaturesValidator.js +0 -61
  261. package/packages/workers/src/http/middleware/InfrastructureValidator.d.ts +0 -32
  262. package/packages/workers/src/http/middleware/InfrastructureValidator.d.ts.map +0 -1
  263. package/packages/workers/src/http/middleware/InfrastructureValidator.js +0 -226
  264. package/packages/workers/src/http/middleware/OptionsValidator.d.ts +0 -4
  265. package/packages/workers/src/http/middleware/OptionsValidator.d.ts.map +0 -1
  266. package/packages/workers/src/http/middleware/OptionsValidator.js +0 -112
  267. package/packages/workers/src/http/middleware/PayloadSanitizer.d.ts +0 -8
  268. package/packages/workers/src/http/middleware/PayloadSanitizer.d.ts.map +0 -1
  269. package/packages/workers/src/http/middleware/PayloadSanitizer.js +0 -42
  270. package/packages/workers/src/http/middleware/ProcessorPathSanitizer.d.ts +0 -4
  271. package/packages/workers/src/http/middleware/ProcessorPathSanitizer.d.ts.map +0 -1
  272. package/packages/workers/src/http/middleware/ProcessorPathSanitizer.js +0 -140
  273. package/packages/workers/src/http/middleware/QueueNameSanitizer.d.ts +0 -4
  274. package/packages/workers/src/http/middleware/QueueNameSanitizer.d.ts.map +0 -1
  275. package/packages/workers/src/http/middleware/QueueNameSanitizer.js +0 -45
  276. package/packages/workers/src/http/middleware/ValidateDriver.d.ts +0 -8
  277. package/packages/workers/src/http/middleware/ValidateDriver.d.ts.map +0 -1
  278. package/packages/workers/src/http/middleware/ValidateDriver.js +0 -20
  279. package/packages/workers/src/http/middleware/VersionSanitizer.d.ts +0 -4
  280. package/packages/workers/src/http/middleware/VersionSanitizer.d.ts.map +0 -1
  281. package/packages/workers/src/http/middleware/VersionSanitizer.js +0 -25
  282. package/packages/workers/src/http/middleware/WorkerNameSanitizer.d.ts +0 -4
  283. package/packages/workers/src/http/middleware/WorkerNameSanitizer.d.ts.map +0 -1
  284. package/packages/workers/src/http/middleware/WorkerNameSanitizer.js +0 -46
  285. package/packages/workers/src/http/middleware/WorkerValidationChain.d.ts +0 -28
  286. package/packages/workers/src/http/middleware/WorkerValidationChain.d.ts.map +0 -1
  287. package/packages/workers/src/http/middleware/WorkerValidationChain.js +0 -186
  288. package/packages/workers/src/index.d.ts +0 -47
  289. package/packages/workers/src/index.d.ts.map +0 -1
  290. package/packages/workers/src/index.js +0 -48
  291. package/packages/workers/src/routes/workers.d.ts +0 -13
  292. package/packages/workers/src/routes/workers.d.ts.map +0 -1
  293. package/packages/workers/src/routes/workers.js +0 -126
  294. package/packages/workers/src/storage/WorkerStore.d.ts +0 -52
  295. package/packages/workers/src/storage/WorkerStore.d.ts.map +0 -1
  296. package/packages/workers/src/storage/WorkerStore.js +0 -259
  297. package/packages/workers/src/telemetry/api/TelemetryAPI.d.ts +0 -47
  298. package/packages/workers/src/telemetry/api/TelemetryAPI.d.ts.map +0 -1
  299. package/packages/workers/src/telemetry/api/TelemetryAPI.js +0 -219
  300. package/packages/workers/src/telemetry/api/TelemetryMonitoringService.d.ts +0 -18
  301. package/packages/workers/src/telemetry/api/TelemetryMonitoringService.d.ts.map +0 -1
  302. package/packages/workers/src/telemetry/api/TelemetryMonitoringService.js +0 -140
  303. package/packages/workers/src/telemetry/components/AlertPanel.d.ts +0 -2
  304. package/packages/workers/src/telemetry/components/AlertPanel.d.ts.map +0 -1
  305. package/packages/workers/src/telemetry/components/AlertPanel.js +0 -13
  306. package/packages/workers/src/telemetry/components/CostTracking.d.ts +0 -2
  307. package/packages/workers/src/telemetry/components/CostTracking.d.ts.map +0 -1
  308. package/packages/workers/src/telemetry/components/CostTracking.js +0 -14
  309. package/packages/workers/src/telemetry/components/ResourceUsageChart.d.ts +0 -2
  310. package/packages/workers/src/telemetry/components/ResourceUsageChart.d.ts.map +0 -1
  311. package/packages/workers/src/telemetry/components/ResourceUsageChart.js +0 -11
  312. package/packages/workers/src/telemetry/components/WorkerHealthChart.d.ts +0 -2
  313. package/packages/workers/src/telemetry/components/WorkerHealthChart.d.ts.map +0 -1
  314. package/packages/workers/src/telemetry/components/WorkerHealthChart.js +0 -11
  315. package/packages/workers/src/telemetry/index.d.ts +0 -16
  316. package/packages/workers/src/telemetry/index.d.ts.map +0 -1
  317. package/packages/workers/src/telemetry/index.js +0 -60
  318. package/packages/workers/src/telemetry/routes/dashboard.d.ts +0 -7
  319. package/packages/workers/src/telemetry/routes/dashboard.d.ts.map +0 -1
  320. package/packages/workers/src/telemetry/routes/dashboard.js +0 -608
  321. package/packages/workers/src/type.d.ts +0 -77
  322. package/packages/workers/src/type.d.ts.map +0 -1
  323. package/packages/workers/src/type.js +0 -1
  324. package/packages/workers/src/ui/router/EmbeddedAssets.d.ts +0 -5
  325. package/packages/workers/src/ui/router/EmbeddedAssets.d.ts.map +0 -1
  326. package/packages/workers/src/ui/router/EmbeddedAssets.js +0 -13
  327. package/packages/workers/src/ui/router/ui.d.ts +0 -4
  328. package/packages/workers/src/ui/router/ui.d.ts.map +0 -1
  329. package/packages/workers/src/ui/router/ui.js +0 -208
  330. package/packages/workers/src/ui/types/worker-ui.d.ts +0 -230
  331. package/packages/workers/src/ui/types/worker-ui.d.ts.map +0 -1
  332. package/packages/workers/src/ui/types/worker-ui.js +0 -5
  333. package/routes/api.d.ts +0 -7
  334. package/routes/api.d.ts.map +0 -1
  335. package/routes/api.js +0 -136
  336. package/routes/broadcast.d.ts +0 -9
  337. package/routes/broadcast.d.ts.map +0 -1
  338. package/routes/broadcast.js +0 -27
  339. package/routes/storage.d.ts +0 -4
  340. package/routes/storage.d.ts.map +0 -1
  341. package/routes/storage.js +0 -35
@@ -1,152 +0,0 @@
1
- /**
2
- * Worker Registry
3
- * Central registry for all background workers with lifecycle management
4
- * Sealed namespace for immutability
5
- */
6
- import { type WorkerConfig, type WorkerStatus } from '../../../src/index.js';
7
- export type WorkerMetadata = {
8
- name: string;
9
- status: WorkerStatus;
10
- version: string;
11
- region: string;
12
- queueName: string;
13
- concurrency: number;
14
- activeStatus?: boolean;
15
- startedAt: Date | null;
16
- stoppedAt: Date | null;
17
- lastProcessedAt: Date | null;
18
- restartCount: number;
19
- processedCount: number;
20
- errorCount: number;
21
- lockKey: string | null;
22
- priority: number;
23
- memoryUsage: number;
24
- cpuUsage: number;
25
- circuitState: 'closed' | 'open' | 'half-open';
26
- queues: ReadonlyArray<string>;
27
- plugins: ReadonlyArray<string>;
28
- datacenter: string;
29
- canaryPercentage: number;
30
- config: Partial<WorkerConfig>;
31
- };
32
- export type WorkerInstance = {
33
- metadata: WorkerMetadata;
34
- instance: unknown;
35
- start: () => void;
36
- stop: () => Promise<void>;
37
- drain: () => Promise<void>;
38
- sleep: () => Promise<void>;
39
- wakeup: () => void;
40
- getStatus: () => WorkerStatus;
41
- getHealth: () => 'green' | 'yellow' | 'red';
42
- };
43
- export type RegisterWorkerOptions = {
44
- name: string;
45
- config: Partial<WorkerConfig>;
46
- activeStatus?: boolean;
47
- version?: string;
48
- region?: string;
49
- queues?: ReadonlyArray<string>;
50
- factory: () => Promise<WorkerInstance>;
51
- };
52
- export type WorkerRegistrySnapshot = {
53
- timestamp: Date;
54
- totalWorkers: number;
55
- runningWorkers: number;
56
- stoppedWorkers: number;
57
- sleepingWorkers: number;
58
- unhealthyWorkers: number;
59
- workers: ReadonlyArray<{
60
- name: string;
61
- status: WorkerStatus;
62
- health: 'green' | 'yellow' | 'red';
63
- uptime: number | null;
64
- processedCount: number;
65
- errorCount: number;
66
- }>;
67
- };
68
- /**
69
- * Worker Registry - Sealed namespace
70
- */
71
- export declare const WorkerRegistry: Readonly<{
72
- /**
73
- * Register a worker with the registry
74
- */
75
- register(options: RegisterWorkerOptions): void;
76
- /**
77
- * Start a worker
78
- */
79
- start(name: string, version?: string): Promise<void>;
80
- /**
81
- * Stop a worker
82
- */
83
- stop(name: string): Promise<void>;
84
- /**
85
- * Restart a worker (stop + start)
86
- */
87
- restart(name: string): Promise<void>;
88
- /**
89
- * Sleep a worker (pause processing but keep lock)
90
- */
91
- sleep(name: string): Promise<void>;
92
- /**
93
- * Wakeup a worker (resume from sleep)
94
- */
95
- wakeup(name: string): Promise<void>;
96
- /**
97
- * Get worker status
98
- */
99
- status(name: string): WorkerMetadata | null;
100
- /**
101
- * List all registered workers
102
- */
103
- list(): ReadonlyArray<string>;
104
- /**
105
- * Update active status for a registered worker
106
- */
107
- setActiveStatus(name: string, activeStatus: boolean): void;
108
- /**
109
- * List all running workers
110
- */
111
- listRunning(): ReadonlyArray<string>;
112
- /**
113
- * Stop all running workers
114
- */
115
- stopAll(): Promise<void>;
116
- /**
117
- * Get worker metrics
118
- */
119
- getMetrics(name: string): Pick<WorkerMetadata, "processedCount" | "errorCount" | "memoryUsage" | "cpuUsage"> | null;
120
- /**
121
- * Get worker health status
122
- */
123
- getHealth(name: string): "green" | "yellow" | "red" | null;
124
- /**
125
- * Get registry snapshot
126
- */
127
- getSnapshot(): WorkerRegistrySnapshot;
128
- /**
129
- * Get worker topology (cluster view)
130
- */
131
- getTopology(): Record<string, {
132
- workers: string[];
133
- count: number;
134
- }>;
135
- /**
136
- * Unregister a worker and clear its instance
137
- */
138
- unregister(name: string): void;
139
- /**
140
- * Check if worker is registered
141
- */
142
- isRegistered(name: string): boolean;
143
- /**
144
- * Check if worker is running
145
- */
146
- isRunning(name: string): boolean;
147
- /**
148
- * Get worker instance (internal use)
149
- */
150
- getInstance(name: string): WorkerInstance | null;
151
- }>;
152
- //# sourceMappingURL=WorkerRegistry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WorkerRegistry.d.ts","sourceRoot":"","sources":["../../../../packages/workers/src/WorkerRegistry.ts"],"names":[],"mappings":"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"}
@@ -1,396 +0,0 @@
1
- /**
2
- * Worker Registry
3
- * Central registry for all background workers with lifecycle management
4
- * Sealed namespace for immutability
5
- */
6
- import { ErrorFactory, Logger } from '../../../src/index.js';
7
- import { AnomalyDetection } from './AnomalyDetection.js';
8
- // Internal storage
9
- const workers = new Map();
10
- const registrations = new Map();
11
- // Cleanup configuration
12
- const STOPPED_WORKER_CLEANUP_DELAY = 5 * 60 * 1000; // 5 minutes
13
- const cleanupTimers = new Map();
14
- const isUnrefableTimer = (value) => {
15
- if (typeof value !== 'object' || value === null)
16
- return false;
17
- return 'unref' in value && typeof value.unref === 'function';
18
- };
19
- /**
20
- * Helper: Schedule cleanup of stopped worker
21
- */
22
- const scheduleStoppedWorkerCleanup = (name) => {
23
- // Clear existing timer if any
24
- const existingTimer = cleanupTimers.get(name);
25
- if (existingTimer) {
26
- clearTimeout(existingTimer);
27
- }
28
- // Schedule new cleanup with proper cleanup handling
29
- // eslint-disable-next-line no-restricted-syntax
30
- const timer = setTimeout(() => {
31
- try {
32
- const instance = workers.get(name);
33
- if (instance && instance.metadata.status === 'stopped') {
34
- Logger.info(`Auto-cleaning up stopped worker: ${name}`);
35
- workers.delete(name);
36
- registrations.delete(name);
37
- }
38
- }
39
- catch (error) {
40
- Logger.error(`Error during auto-cleanup of worker ${name}`, error);
41
- }
42
- finally {
43
- cleanupTimers.delete(name);
44
- }
45
- }, STOPPED_WORKER_CLEANUP_DELAY);
46
- if (isUnrefableTimer(timer)) {
47
- timer.unref();
48
- }
49
- cleanupTimers.set(name, timer);
50
- };
51
- /**
52
- * Helper: Cancel cleanup timer
53
- */
54
- const cancelCleanupTimer = (name) => {
55
- const timer = cleanupTimers.get(name);
56
- if (timer) {
57
- clearTimeout(timer);
58
- cleanupTimers.delete(name);
59
- }
60
- };
61
- /**
62
- * Helper: Calculate uptime in seconds
63
- */
64
- const calculateUptime = (startedAt) => {
65
- if (!startedAt)
66
- return null;
67
- return Math.floor((Date.now() - startedAt.getTime()) / 1000);
68
- };
69
- /**
70
- * Helper: Validate worker name
71
- */
72
- const validateWorkerName = (name) => {
73
- if (!name || typeof name !== 'string') {
74
- throw ErrorFactory.createWorkerError('Worker name must be a non-empty string');
75
- }
76
- if (!/^[a-z0-9-]+$/.test(name)) {
77
- throw ErrorFactory.createWorkerError('Worker name must contain only lowercase letters, numbers, and hyphens');
78
- }
79
- };
80
- /**
81
- * Worker Registry - Sealed namespace
82
- */
83
- export const WorkerRegistry = Object.freeze({
84
- /**
85
- * Register a worker with the registry
86
- */
87
- register(options) {
88
- validateWorkerName(options.name);
89
- if (registrations.has(options.name)) {
90
- Logger.warn(`Worker "${options.name}" is already registered. Skipping.`);
91
- return;
92
- }
93
- registrations.set(options.name, options);
94
- Logger.info(`Worker "${options.name}" registered successfully`);
95
- },
96
- /**
97
- * Start a worker
98
- */
99
- async start(name, version) {
100
- validateWorkerName(name);
101
- const registration = registrations.get(name);
102
- if (!registration) {
103
- throw ErrorFactory.createWorkerError(`Worker "${name}" is not registered`);
104
- }
105
- if (registration.activeStatus === false) {
106
- throw ErrorFactory.createWorkerError(`Worker "${name}" is inactive`);
107
- }
108
- if (workers.has(name)) {
109
- const existing = workers.get(name);
110
- if (existing?.metadata.status === 'running') {
111
- Logger.warn(`Worker "${name}" is already running`);
112
- return;
113
- }
114
- }
115
- const versionSuffix = version === undefined ? '' : ` version ${version}`;
116
- Logger.info(`Starting worker "${name}"${versionSuffix}...`);
117
- try {
118
- const instance = await registration.factory();
119
- instance.metadata.status = 'starting';
120
- instance.metadata.version = version ?? '1.0.0';
121
- // Cancel any pending cleanup timer when worker restarts
122
- cancelCleanupTimer(name);
123
- workers.set(name, instance);
124
- instance.start();
125
- instance.metadata.status = 'running';
126
- instance.metadata.startedAt = new Date();
127
- instance.metadata.stoppedAt = null;
128
- Logger.info(`Worker "${name}" started successfully`);
129
- }
130
- catch (error) {
131
- Logger.error(`Failed to start worker "${name}"`, error);
132
- throw error;
133
- }
134
- },
135
- /**
136
- * Stop a worker
137
- */
138
- async stop(name) {
139
- validateWorkerName(name);
140
- const instance = workers.get(name);
141
- if (!instance) {
142
- Logger.warn(`Worker "${name}" is not running`);
143
- return;
144
- }
145
- if (instance.metadata.status === 'stopped') {
146
- Logger.warn(`Worker "${name}" is already stopped`);
147
- return;
148
- }
149
- Logger.info(`Stopping worker "${name}"...`);
150
- try {
151
- instance.metadata.status = 'stopping';
152
- await instance.stop();
153
- instance.metadata.status = 'stopped';
154
- instance.metadata.stoppedAt = new Date();
155
- AnomalyDetection.cleanup(name);
156
- // Schedule automatic cleanup for stopped worker
157
- scheduleStoppedWorkerCleanup(name);
158
- Logger.info(`Worker "${name}" stopped successfully`);
159
- }
160
- catch (error) {
161
- Logger.error(`Failed to stop worker "${name}"`, error);
162
- throw error;
163
- }
164
- },
165
- /**
166
- * Restart a worker (stop + start)
167
- */
168
- async restart(name) {
169
- validateWorkerName(name);
170
- const instance = workers.get(name);
171
- if (instance) {
172
- await WorkerRegistry.stop(name);
173
- instance.metadata.restartCount += 1;
174
- }
175
- await WorkerRegistry.start(name);
176
- Logger.info(`Worker "${name}" restarted successfully`);
177
- },
178
- /**
179
- * Sleep a worker (pause processing but keep lock)
180
- */
181
- async sleep(name) {
182
- validateWorkerName(name);
183
- const instance = workers.get(name);
184
- if (!instance) {
185
- throw ErrorFactory.createWorkerError(`Worker "${name}" is not running`);
186
- }
187
- if (instance.metadata.status === 'sleeping') {
188
- Logger.warn(`Worker "${name}" is already sleeping`);
189
- return;
190
- }
191
- Logger.info(`Putting worker "${name}" to sleep...`);
192
- try {
193
- await instance.sleep();
194
- instance.metadata.status = 'sleeping';
195
- Logger.info(`Worker "${name}" is now sleeping`);
196
- }
197
- catch (error) {
198
- Logger.error(`Failed to sleep worker "${name}"`, error);
199
- throw error;
200
- }
201
- },
202
- /**
203
- * Wakeup a worker (resume from sleep)
204
- */
205
- async wakeup(name) {
206
- validateWorkerName(name);
207
- const instance = workers.get(name);
208
- if (!instance) {
209
- throw ErrorFactory.createWorkerError(`Worker "${name}" is not found`);
210
- }
211
- if (instance.metadata.status !== 'sleeping') {
212
- Logger.warn(`Worker "${name}" is not sleeping (status: ${instance.metadata.status})`);
213
- return;
214
- }
215
- Logger.info(`Waking up worker "${name}"...`);
216
- try {
217
- instance.wakeup();
218
- instance.metadata.status = 'running';
219
- Logger.info(`Worker "${name}" is now awake and running`);
220
- }
221
- catch (error) {
222
- Logger.error(`Failed to wake up worker "${name}"`, error);
223
- throw error;
224
- }
225
- },
226
- /**
227
- * Get worker status
228
- */
229
- status(name) {
230
- validateWorkerName(name);
231
- const instance = workers.get(name);
232
- if (!instance) {
233
- return null;
234
- }
235
- return { ...instance.metadata };
236
- },
237
- /**
238
- * List all registered workers
239
- */
240
- list() {
241
- const names = [];
242
- for (const [name, registration] of registrations.entries()) {
243
- if (registration.activeStatus === false)
244
- continue;
245
- names.push(name);
246
- }
247
- return names;
248
- },
249
- /**
250
- * Update active status for a registered worker
251
- */
252
- setActiveStatus(name, activeStatus) {
253
- const registration = registrations.get(name);
254
- if (!registration)
255
- return;
256
- registrations.set(name, { ...registration, activeStatus });
257
- },
258
- /**
259
- * List all running workers
260
- */
261
- listRunning() {
262
- const running = [];
263
- for (const [name, instance] of workers.entries()) {
264
- if (instance.metadata.status === 'running') {
265
- running.push(name);
266
- }
267
- }
268
- return running;
269
- },
270
- /**
271
- * Stop all running workers
272
- */
273
- async stopAll() {
274
- Logger.info('Stopping all running workers...');
275
- const running = WorkerRegistry.listRunning();
276
- const tasks = running.map(async (name) => WorkerRegistry.stop(name));
277
- try {
278
- await Promise.all(tasks);
279
- Logger.info(`Stopped ${running.length} workers successfully`);
280
- }
281
- catch (error) {
282
- Logger.error('Failed to stop some workers', error);
283
- throw error;
284
- }
285
- },
286
- /**
287
- * Get worker metrics
288
- */
289
- getMetrics(name) {
290
- validateWorkerName(name);
291
- const instance = workers.get(name);
292
- if (!instance) {
293
- return null;
294
- }
295
- return {
296
- processedCount: instance.metadata.processedCount,
297
- errorCount: instance.metadata.errorCount,
298
- memoryUsage: instance.metadata.memoryUsage,
299
- cpuUsage: instance.metadata.cpuUsage,
300
- };
301
- },
302
- /**
303
- * Get worker health status
304
- */
305
- getHealth(name) {
306
- validateWorkerName(name);
307
- const instance = workers.get(name);
308
- if (!instance) {
309
- return null;
310
- }
311
- return instance.getHealth();
312
- },
313
- /**
314
- * Get registry snapshot
315
- */
316
- getSnapshot() {
317
- const allWorkers = Array.from(workers.entries()).map(([name, instance]) => ({
318
- name,
319
- status: instance.metadata.status,
320
- health: instance.getHealth(),
321
- uptime: calculateUptime(instance.metadata.startedAt),
322
- processedCount: instance.metadata.processedCount,
323
- errorCount: instance.metadata.errorCount,
324
- }));
325
- const statusCounts = allWorkers.reduce((acc, w) => {
326
- if (w.status === 'running')
327
- acc.running++;
328
- else if (w.status === 'stopped')
329
- acc.stopped++;
330
- else if (w.status === 'sleeping')
331
- acc.sleeping++;
332
- if (w.health === 'red')
333
- acc.unhealthy++;
334
- return acc;
335
- }, { running: 0, stopped: 0, sleeping: 0, unhealthy: 0 });
336
- return {
337
- timestamp: new Date(),
338
- totalWorkers: registrations.size,
339
- runningWorkers: statusCounts.running,
340
- stoppedWorkers: statusCounts.stopped,
341
- sleepingWorkers: statusCounts.sleeping,
342
- unhealthyWorkers: statusCounts.unhealthy,
343
- workers: allWorkers,
344
- };
345
- },
346
- /**
347
- * Get worker topology (cluster view)
348
- */
349
- getTopology() {
350
- const topology = {};
351
- for (const [name, instance] of workers.entries()) {
352
- const region = instance.metadata.region;
353
- if (topology[region].count <= 0) {
354
- topology[region] = { workers: [], count: 0 };
355
- }
356
- topology[region].workers.push(name);
357
- topology[region].count++;
358
- }
359
- return topology;
360
- },
361
- /**
362
- * Unregister a worker and clear its instance
363
- */
364
- unregister(name) {
365
- validateWorkerName(name);
366
- const instance = workers.get(name);
367
- if (instance?.metadata.status === 'running') {
368
- Logger.warn(`Worker "${name}" is still running during unregister`);
369
- }
370
- // Cancel any pending cleanup timer
371
- cancelCleanupTimer(name);
372
- workers.delete(name);
373
- registrations.delete(name);
374
- AnomalyDetection.cleanup(name);
375
- Logger.info(`Worker "${name}" unregistered`);
376
- },
377
- /**
378
- * Check if worker is registered
379
- */
380
- isRegistered(name) {
381
- return registrations.has(name);
382
- },
383
- /**
384
- * Check if worker is running
385
- */
386
- isRunning(name) {
387
- const instance = workers.get(name);
388
- return instance?.metadata.status === 'running';
389
- },
390
- /**
391
- * Get worker instance (internal use)
392
- */
393
- getInstance(name) {
394
- return workers.get(name) ?? null;
395
- },
396
- });
@@ -1,70 +0,0 @@
1
- /**
2
- * Worker Shutdown Coordinator
3
- *
4
- * Centralized graceful shutdown handling for the worker management system.
5
- * Coordinates orderly shutdown of all worker modules and the WorkerFactory.
6
- */
7
- export interface IShutdownOptions {
8
- /**
9
- * Timeout for graceful shutdown in milliseconds
10
- */
11
- timeout?: number;
12
- /**
13
- * Whether to force exit after timeout
14
- */
15
- forceExit?: boolean;
16
- /**
17
- * Signal that triggered shutdown (SIGTERM, SIGINT, etc.)
18
- */
19
- signal?: string;
20
- }
21
- interface IShutdownState {
22
- isShuttingDown: boolean;
23
- completedAt: Date | null;
24
- startedAt: Date | null;
25
- reason: string | null;
26
- }
27
- /**
28
- * Perform graceful shutdown of all worker modules
29
- */
30
- declare function shutdown(options?: IShutdownOptions): Promise<void>;
31
- /**
32
- * Register process signal handlers for graceful shutdown
33
- */
34
- declare function registerShutdownHandlers(): void;
35
- /**
36
- * Unregister process signal handlers (for hot reload/testing)
37
- */
38
- declare function unregisterShutdownHandlers(): void;
39
- /**
40
- * Check if system is currently shutting down
41
- */
42
- declare function isShuttingDown(): boolean;
43
- /**
44
- * Get current shutdown state
45
- */
46
- declare function getShutdownState(): Readonly<IShutdownState>;
47
- export declare const WorkerShutdown: Readonly<{
48
- /**
49
- * Perform graceful shutdown of all worker modules
50
- */
51
- shutdown: typeof shutdown;
52
- /**
53
- * Register process signal handlers for graceful shutdown
54
- */
55
- registerShutdownHandlers: typeof registerShutdownHandlers;
56
- /**
57
- * Unregister process signal handlers (for hot reload/testing)
58
- */
59
- unregisterShutdownHandlers: typeof unregisterShutdownHandlers;
60
- /**
61
- * Check if system is currently shutting down
62
- */
63
- isShuttingDown: typeof isShuttingDown;
64
- /**
65
- * Get current shutdown state
66
- */
67
- getShutdownState: typeof getShutdownState;
68
- }>;
69
- export {};
70
- //# sourceMappingURL=WorkerShutdown.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WorkerShutdown.d.ts","sourceRoot":"","sources":["../../../../packages/workers/src/WorkerShutdown.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,cAAc;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAsBD;;GAEG;AACH,iBAAe,QAAQ,CAAC,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiDrE;AAED;;GAEG;AACH,iBAAS,wBAAwB,IAAI,IAAI,CA8DxC;AAED;;GAEG;AACH,iBAAS,0BAA0B,IAAI,IAAI,CAiB1C;AAED;;GAEG;AACH,iBAAS,cAAc,IAAI,OAAO,CAEjC;AAED;;GAEG;AACH,iBAAS,gBAAgB,IAAI,QAAQ,CAAC,cAAc,CAAC,CAEpD;AAMD,eAAO,MAAM,cAAc;IACzB;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;EAEH,CAAC"}