@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,538 +0,0 @@
1
- /**
2
- * Observability Manager
3
- * Integrations for Prometheus, OpenTelemetry, and Datadog
4
- * Sealed namespace for immutability
5
- */
6
- import { ErrorFactory, Logger, generateUuid } from '../../../src/index.js';
7
- // Internal state
8
- let config = null;
9
- // Prometheus state
10
- let promClient = null;
11
- let promRegistry = null;
12
- const promMetrics = new Map();
13
- // OpenTelemetry state
14
- let otelTracer = null;
15
- const activeSpans = new Map();
16
- let spanSweepInterval = null;
17
- const MAX_ACTIVE_SPANS = 1000;
18
- const SPAN_TTL_MS = 5 * 60 * 1000;
19
- const isUnrefableTimer = (value) => {
20
- if (typeof value !== 'object' || value === null)
21
- return false;
22
- return 'unref' in value && typeof value.unref === 'function';
23
- };
24
- const cleanupStaleSpans = () => {
25
- const now = Date.now();
26
- for (const [spanId, entry] of activeSpans.entries()) {
27
- if (now - entry.startedAt > SPAN_TTL_MS) {
28
- entry.span.end();
29
- activeSpans.delete(spanId);
30
- }
31
- }
32
- };
33
- const evictOldestSpan = () => {
34
- if (activeSpans.size < MAX_ACTIVE_SPANS)
35
- return;
36
- let oldestId = null;
37
- let oldestTime = Number.POSITIVE_INFINITY;
38
- for (const [spanId, entry] of activeSpans.entries()) {
39
- if (entry.startedAt < oldestTime) {
40
- oldestTime = entry.startedAt;
41
- oldestId = spanId;
42
- }
43
- }
44
- if (oldestId !== null) {
45
- const entry = activeSpans.get(oldestId);
46
- if (entry) {
47
- entry.span.end();
48
- }
49
- activeSpans.delete(oldestId);
50
- }
51
- };
52
- // Datadog state
53
- let datadogClient = null;
54
- /**
55
- * Helper: Lazy load Prometheus client
56
- */
57
- const getPrometheusClient = async () => {
58
- promClient ??= await import('prom-client');
59
- return promClient;
60
- };
61
- /**
62
- * Helper: Lazy load OpenTelemetry API
63
- */
64
- const getOpenTelemetryApi = async () => {
65
- return import('@opentelemetry/api');
66
- };
67
- /**
68
- * Helper: Initialize Prometheus
69
- */
70
- const initPrometheus = async (promConfig) => {
71
- if (!promConfig.enabled)
72
- return;
73
- try {
74
- const client = await getPrometheusClient();
75
- promRegistry = new client.Registry();
76
- // Set default labels if provided
77
- if (promConfig.defaultLabels) {
78
- promRegistry.setDefaultLabels(promConfig.defaultLabels);
79
- }
80
- // Enable default metrics (process, Node.js metrics)
81
- client.collectDefaultMetrics({ register: promRegistry });
82
- Logger.info('Prometheus metrics initialized', {
83
- port: promConfig.port,
84
- path: promConfig.path ?? '/metrics',
85
- });
86
- }
87
- catch (error) {
88
- Logger.error('Failed to initialize Prometheus', error);
89
- throw error;
90
- }
91
- };
92
- /**
93
- * Helper: Initialize OpenTelemetry
94
- */
95
- const initOpenTelemetry = async (otelConfig) => {
96
- if (!otelConfig.enabled)
97
- return;
98
- try {
99
- const api = await getOpenTelemetryApi();
100
- otelTracer = api.trace.getTracer(otelConfig.serviceName);
101
- Logger.info('OpenTelemetry tracing initialized', {
102
- serviceName: otelConfig.serviceName,
103
- sampleRate: otelConfig.sampleRate ?? 1,
104
- });
105
- }
106
- catch (error) {
107
- Logger.error('Failed to initialize OpenTelemetry', error);
108
- // Don't throw - allow app to continue without tracing
109
- }
110
- };
111
- /**
112
- * Helper: Initialize Datadog
113
- */
114
- const initDatadog = async (ddConfig) => {
115
- if (!ddConfig.enabled)
116
- return;
117
- try {
118
- const module = (await import('hot-shots'));
119
- const StatsDClass = module.StatsD;
120
- if (!StatsDClass) {
121
- Logger.warn('Datadog StatsD client unavailable');
122
- return;
123
- }
124
- datadogClient = new StatsDClass({
125
- host: ddConfig.host ?? 'localhost',
126
- port: ddConfig.port ?? 8125,
127
- prefix: ddConfig.prefix ?? 'worker.',
128
- globalTags: ddConfig.tags ?? [],
129
- });
130
- Logger.info('Datadog StatsD initialized', {
131
- host: ddConfig.host ?? 'localhost',
132
- port: ddConfig.port ?? 8125,
133
- });
134
- }
135
- catch (error) {
136
- Logger.error('Failed to initialize Datadog', error);
137
- // Don't throw - allow app to continue without Datadog
138
- }
139
- };
140
- /**
141
- * Observability Manager - Sealed namespace
142
- */
143
- export const Observability = Object.freeze({
144
- /**
145
- * Initialize observability with configuration
146
- */
147
- async initialize(observabilityConfig) {
148
- if (config) {
149
- Logger.warn('Observability already initialized');
150
- return;
151
- }
152
- config = observabilityConfig;
153
- // Initialize all enabled platforms
154
- await Promise.all([
155
- initPrometheus(config.prometheus),
156
- initOpenTelemetry(config.openTelemetry),
157
- initDatadog(config.datadog),
158
- ]);
159
- if (config.openTelemetry.enabled === true && spanSweepInterval === null) {
160
- spanSweepInterval = setInterval(() => {
161
- cleanupStaleSpans();
162
- }, SPAN_TTL_MS);
163
- if (isUnrefableTimer(spanSweepInterval)) {
164
- spanSweepInterval.unref();
165
- }
166
- }
167
- Logger.info('Observability initialized', {
168
- prometheus: config.prometheus.enabled,
169
- openTelemetry: config.openTelemetry.enabled,
170
- datadog: config.datadog.enabled,
171
- });
172
- },
173
- /**
174
- * Register a metric
175
- */
176
- async registerMetric(definition) {
177
- if (config?.prometheus.enabled !== true || !promRegistry) {
178
- return;
179
- }
180
- if (promMetrics.has(definition.name)) {
181
- Logger.debug(`Metric already registered: ${definition.name}`);
182
- return;
183
- }
184
- const client = await getPrometheusClient();
185
- let metric;
186
- switch (definition.type) {
187
- case 'counter':
188
- metric = new client.Counter({
189
- name: definition.name,
190
- help: definition.help,
191
- labelNames: definition.labels ?? [],
192
- registers: [promRegistry],
193
- });
194
- break;
195
- case 'gauge':
196
- metric = new client.Gauge({
197
- name: definition.name,
198
- help: definition.help,
199
- labelNames: definition.labels ?? [],
200
- registers: [promRegistry],
201
- });
202
- break;
203
- case 'histogram':
204
- metric = new client.Histogram({
205
- name: definition.name,
206
- help: definition.help,
207
- labelNames: definition.labels ?? [],
208
- registers: [promRegistry],
209
- });
210
- break;
211
- case 'summary':
212
- metric = new client.Summary({
213
- name: definition.name,
214
- help: definition.help,
215
- labelNames: definition.labels ?? [],
216
- registers: [promRegistry],
217
- });
218
- break;
219
- }
220
- promMetrics.set(definition.name, metric);
221
- Logger.debug(`Metric registered: ${definition.name} (${definition.type})`);
222
- },
223
- /**
224
- * Increment a counter
225
- */
226
- incrementCounter(name, value = 1, labels) {
227
- // Prometheus
228
- if (config?.prometheus.enabled === true && promMetrics.has(name)) {
229
- const metric = promMetrics.get(name);
230
- if (labels) {
231
- metric.inc(labels, value);
232
- }
233
- else {
234
- metric.inc(value);
235
- }
236
- }
237
- // Datadog
238
- if (config?.datadog.enabled === true && datadogClient !== null) {
239
- const tags = labels ? Object.entries(labels).map(([k, v]) => `${k}:${v}`) : [];
240
- datadogClient.increment(name, value, tags);
241
- }
242
- },
243
- /**
244
- * Set a gauge value
245
- */
246
- setGauge(name, value, labels) {
247
- // Prometheus
248
- if (config?.prometheus.enabled === true && promMetrics.has(name)) {
249
- const metric = promMetrics.get(name);
250
- if (labels) {
251
- metric.set(labels, value);
252
- }
253
- else {
254
- metric.set(value);
255
- }
256
- }
257
- // Datadog
258
- if (config?.datadog.enabled === true && datadogClient !== null) {
259
- const tags = labels ? Object.entries(labels).map(([k, v]) => `${k}:${v}`) : [];
260
- datadogClient.gauge(name, value, tags);
261
- }
262
- },
263
- /**
264
- * Record a histogram observation
265
- */
266
- recordHistogram(name, value, labels) {
267
- // Prometheus
268
- if (config?.prometheus.enabled === true && promMetrics.has(name)) {
269
- const metric = promMetrics.get(name);
270
- if (labels) {
271
- metric.observe(labels, value);
272
- }
273
- else {
274
- metric.observe(value);
275
- }
276
- }
277
- // Datadog
278
- if (config?.datadog.enabled === true && datadogClient !== null) {
279
- const tags = labels ? Object.entries(labels).map(([k, v]) => `${k}:${v}`) : [];
280
- datadogClient.histogram(name, value, tags);
281
- }
282
- },
283
- /**
284
- * Record timing (histogram for duration)
285
- */
286
- recordTiming(name, durationMs, labels) {
287
- // Prometheus (convert to seconds)
288
- if (config?.prometheus.enabled === true && promMetrics.has(name)) {
289
- const metric = promMetrics.get(name);
290
- if (labels) {
291
- metric.observe(labels, durationMs / 1000);
292
- }
293
- else {
294
- metric.observe(durationMs / 1000);
295
- }
296
- }
297
- // Datadog (milliseconds)
298
- if (config?.datadog.enabled === true && datadogClient !== null) {
299
- const tags = labels ? Object.entries(labels).map(([k, v]) => `${k}:${v}`) : [];
300
- datadogClient.timing(name, durationMs, tags);
301
- }
302
- },
303
- /**
304
- * Start a span (OpenTelemetry)
305
- */
306
- startSpan(name, options) {
307
- if (config?.openTelemetry.enabled !== true || otelTracer === null) {
308
- return null;
309
- }
310
- try {
311
- const spanOptions = {
312
- attributes: options?.attributes ?? {},
313
- };
314
- const span = otelTracer.startSpan(name, spanOptions);
315
- const spanId = `${name}-${Date.now()}-${generateUuid()}`;
316
- evictOldestSpan();
317
- activeSpans.set(spanId, { span, startedAt: Date.now() });
318
- Logger.debug(`Span started: ${name}`, { spanId });
319
- return spanId;
320
- }
321
- catch (error) {
322
- Logger.error('Failed to start span', error);
323
- return null;
324
- }
325
- },
326
- /**
327
- * End a span
328
- */
329
- endSpan(spanId, attributes) {
330
- if (config?.openTelemetry.enabled !== true) {
331
- return;
332
- }
333
- try {
334
- const entry = activeSpans.get(spanId);
335
- if (!entry)
336
- return;
337
- if (attributes) {
338
- entry.span.setAttributes(attributes);
339
- }
340
- entry.span.end();
341
- activeSpans.delete(spanId);
342
- Logger.debug(`Span ended: ${spanId}`);
343
- }
344
- catch (error) {
345
- Logger.error('Failed to end span', error);
346
- }
347
- },
348
- /**
349
- * Record an error on a span
350
- */
351
- recordSpanError(spanId, error) {
352
- if (config?.openTelemetry.enabled !== true) {
353
- return;
354
- }
355
- try {
356
- const entry = activeSpans.get(spanId);
357
- if (!entry)
358
- return;
359
- entry.span.recordException(error);
360
- entry.span.setStatus({ code: 2, message: error.message }); // ERROR status
361
- Logger.debug(`Span error recorded: ${spanId}`, { error: error.message });
362
- }
363
- catch (err) {
364
- Logger.error('Failed to record span error', err);
365
- }
366
- },
367
- /**
368
- * Add event to span
369
- */
370
- addSpanEvent(spanId, name, attributes) {
371
- if (config?.openTelemetry.enabled !== true) {
372
- return;
373
- }
374
- try {
375
- const entry = activeSpans.get(spanId);
376
- if (!entry)
377
- return;
378
- entry.span.addEvent(name, attributes);
379
- Logger.debug(`Span event added: ${spanId}/${name}`);
380
- }
381
- catch (error) {
382
- Logger.error('Failed to add span event', error);
383
- }
384
- },
385
- /**
386
- * Get Prometheus metrics (for HTTP endpoint)
387
- */
388
- async getPrometheusMetrics() {
389
- if (config?.prometheus.enabled !== true || !promRegistry) {
390
- throw ErrorFactory.createGeneralError('Prometheus metrics not enabled');
391
- }
392
- return promRegistry.metrics();
393
- },
394
- /**
395
- * Get Prometheus registry (for advanced usage)
396
- */
397
- getPrometheusRegistry() {
398
- return promRegistry;
399
- },
400
- /**
401
- * Get Datadog client (for advanced usage)
402
- */
403
- getDatadogClient() {
404
- return datadogClient;
405
- },
406
- /**
407
- * Get OpenTelemetry tracer (for advanced usage)
408
- */
409
- getTracer() {
410
- return otelTracer;
411
- },
412
- /**
413
- * Record worker job metrics
414
- */
415
- recordJobMetrics(workerName, jobName, metrics) {
416
- const labels = { worker: workerName, job: jobName };
417
- if (metrics.processed !== undefined) {
418
- Observability.incrementCounter('worker_jobs_processed_total', metrics.processed, labels);
419
- }
420
- if (metrics.failed !== undefined) {
421
- Observability.incrementCounter('worker_jobs_failed_total', metrics.failed, labels);
422
- }
423
- if (metrics.durationMs !== undefined) {
424
- Observability.recordTiming('worker_job_duration_seconds', metrics.durationMs, labels);
425
- }
426
- if (metrics.queueSize !== undefined) {
427
- Observability.setGauge('worker_queue_size', metrics.queueSize, labels);
428
- }
429
- },
430
- /**
431
- * Record worker resource metrics
432
- */
433
- recordResourceMetrics(workerName, resources) {
434
- const labels = { worker: workerName };
435
- if (resources.cpuUsage !== undefined) {
436
- Observability.setGauge('worker_cpu_usage_percent', resources.cpuUsage, labels);
437
- }
438
- if (resources.memoryUsage !== undefined) {
439
- Observability.setGauge('worker_memory_usage_bytes', resources.memoryUsage, labels);
440
- }
441
- if (resources.activeJobs !== undefined) {
442
- Observability.setGauge('worker_active_jobs', resources.activeJobs, labels);
443
- }
444
- },
445
- /**
446
- * Create a traced function wrapper
447
- */
448
- traced(name, fn, options) {
449
- return (async (...args) => {
450
- const spanId = Observability.startSpan(name, options);
451
- try {
452
- const result = await fn(...args);
453
- if (spanId !== null) {
454
- Observability.endSpan(spanId, { success: true });
455
- }
456
- return result;
457
- }
458
- catch (error) {
459
- if (spanId !== null) {
460
- Observability.recordSpanError(spanId, error);
461
- Observability.endSpan(spanId, { success: false });
462
- }
463
- throw error;
464
- }
465
- });
466
- },
467
- /**
468
- * Get configuration
469
- */
470
- getConfig() {
471
- return config ? { ...config } : null;
472
- },
473
- /**
474
- * Check if observability is enabled
475
- */
476
- isEnabled() {
477
- return (config !== null &&
478
- (config.prometheus.enabled || config.openTelemetry.enabled || config.datadog.enabled));
479
- },
480
- /**
481
- * Clear metrics for a specific worker
482
- */
483
- async clearWorkerMetrics(workerName) {
484
- if (config?.prometheus.enabled !== true) {
485
- return;
486
- }
487
- const metrics = Array.from(promMetrics.values());
488
- await Promise.all(metrics.map(async (metric) => {
489
- try {
490
- // Access internal values to find matching labels
491
- // This relies on prom-client get() method returning values with labels
492
- const item = await metric.get();
493
- const values = item.values ?? [];
494
- for (const val of values) {
495
- const labels = val.labels;
496
- if (labels?.['worker'] === workerName) {
497
- metric.remove(labels);
498
- }
499
- }
500
- }
501
- catch (err) {
502
- Logger.debug('Failed to clear worker metric labels', err);
503
- }
504
- }));
505
- Logger.debug(`Cleared metrics for worker: ${workerName}`);
506
- },
507
- /**
508
- * Shutdown
509
- */
510
- shutdown() {
511
- Logger.info('Observability shutting down...');
512
- // Close Datadog client
513
- if (datadogClient !== null) {
514
- datadogClient.close(() => {
515
- Logger.debug('Datadog client closed');
516
- });
517
- datadogClient = null;
518
- }
519
- // End all active spans
520
- for (const [spanId, entry] of activeSpans.entries()) {
521
- entry.span.end();
522
- Logger.debug(`Span force-ended: ${spanId}`);
523
- }
524
- activeSpans.clear();
525
- if (spanSweepInterval) {
526
- clearInterval(spanSweepInterval);
527
- spanSweepInterval = null;
528
- }
529
- // Clear metrics
530
- promMetrics.clear();
531
- promRegistry = null;
532
- promClient = null;
533
- otelTracer = null;
534
- config = null;
535
- Logger.info('Observability shutdown complete');
536
- },
537
- });
538
- // Graceful shutdown handled by WorkerShutdown
@@ -1,124 +0,0 @@
1
- /**
2
- * Plugin Manager
3
- * Extensible plugin system with lifecycle hooks
4
- * Sealed namespace for immutability
5
- */
6
- export type PluginHook = 'beforeStart' | 'afterStart' | 'beforeProcess' | 'afterProcess' | 'beforeStop' | 'afterStop' | 'onError' | 'onComplete' | 'onRetry' | 'onCircuitOpen' | 'onCircuitClose' | 'onScaleUp' | 'onScaleDown';
7
- export type HookContext = {
8
- workerName: string;
9
- jobId?: string;
10
- version?: string;
11
- jobData?: unknown;
12
- error?: Error;
13
- metadata?: Record<string, unknown>;
14
- timestamp: Date;
15
- };
16
- export type HookResult = {
17
- modified?: boolean;
18
- jobData?: unknown;
19
- stop?: boolean;
20
- error?: Error;
21
- };
22
- export type PluginMetadata = {
23
- name: string;
24
- version: string;
25
- author?: string;
26
- description?: string;
27
- dependencies?: string[];
28
- };
29
- export type Plugin = {
30
- metadata: PluginMetadata;
31
- hooks: Partial<Record<PluginHook, PluginHookHandler>>;
32
- onEnable?: () => void | Promise<void>;
33
- onDisable?: () => void | Promise<void>;
34
- };
35
- export type PluginHookHandler = (context: HookContext) => HookResult | Promise<HookResult> | undefined | Promise<HookResult | undefined>;
36
- export type RegisteredPlugin = {
37
- plugin: Plugin;
38
- enabled: boolean;
39
- registeredAt: Date;
40
- priority: number;
41
- };
42
- export type HookExecutionResult = {
43
- data: unknown;
44
- hook: PluginHook;
45
- executionTime: number;
46
- pluginsExecuted: number;
47
- errors: Array<{
48
- pluginName: string;
49
- error: Error;
50
- }>;
51
- context: HookContext;
52
- modified: boolean;
53
- stopped: boolean;
54
- };
55
- /**
56
- * Plugin Manager - Sealed namespace
57
- */
58
- export declare const PluginManager: Readonly<{
59
- /**
60
- * Register a plugin
61
- */
62
- register(plugin: Plugin, priority?: number): Promise<void>;
63
- /**
64
- * Unregister a plugin
65
- */
66
- unregister(pluginName: string): Promise<void>;
67
- /**
68
- * Enable a plugin
69
- */
70
- enable(pluginName: string): Promise<void>;
71
- /**
72
- * Disable a plugin
73
- */
74
- disable(pluginName: string): Promise<void>;
75
- /**
76
- * Execute hooks for a lifecycle event
77
- */
78
- executeHook(hook: PluginHook, context: HookContext): Promise<HookExecutionResult>;
79
- /**
80
- * Get registered plugins
81
- */
82
- getPlugins(): ReadonlyArray<RegisteredPlugin & {
83
- name: string;
84
- }>;
85
- /**
86
- * Get plugin by name
87
- */
88
- getPlugin(pluginName: string): (RegisteredPlugin & {
89
- name: string;
90
- }) | null;
91
- /**
92
- * Check if plugin is registered
93
- */
94
- isRegistered(pluginName: string): boolean;
95
- /**
96
- * Check if plugin is enabled
97
- */
98
- isEnabled(pluginName: string): boolean;
99
- /**
100
- * Get hook execution history
101
- */
102
- getExecutionHistory(hook?: PluginHook, limit?: number): ReadonlyArray<HookExecutionResult>;
103
- /**
104
- * Get plugin statistics
105
- */
106
- getStatistics(): {
107
- totalPlugins: number;
108
- enabledPlugins: number;
109
- disabledPlugins: number;
110
- totalHookExecutions: number;
111
- hookExecutionsByType: Record<PluginHook, number>;
112
- averageExecutionTime: number;
113
- totalErrors: number;
114
- };
115
- /**
116
- * Clear execution history
117
- */
118
- clearHistory(): void;
119
- /**
120
- * Shutdown and disable all plugins
121
- */
122
- shutdown(): Promise<void>;
123
- }>;
124
- //# sourceMappingURL=PluginManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PluginManager.d.ts","sourceRoot":"","sources":["../../../../packages/workers/src/PluginManager.ts"],"names":[],"mappings":"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"}