@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,251 +0,0 @@
1
- import { Env, ErrorFactory, SignedRequest, ZintrustLang } from '../../../src/index.js';
2
- const resolveSigningPrefix = (baseUrl) => {
3
- try {
4
- const parsed = new URL(baseUrl);
5
- const path = parsed.pathname.endsWith('/') ? parsed.pathname.slice(0, -1) : parsed.pathname;
6
- if (path === '' || path === '/')
7
- return undefined;
8
- return path;
9
- }
10
- catch {
11
- return undefined;
12
- }
13
- };
14
- const buildRequestUrl = (baseUrl, path) => {
15
- const url = new URL(baseUrl);
16
- const basePath = url.pathname.endsWith('/') ? url.pathname.slice(0, -1) : url.pathname;
17
- const requestPath = path.startsWith('/') ? path : `/${path}`;
18
- url.pathname = `${basePath}${requestPath}`;
19
- return url;
20
- };
21
- const buildSigningUrl = (requestUrl, baseUrl) => {
22
- const prefix = resolveSigningPrefix(baseUrl);
23
- if (!prefix)
24
- return requestUrl;
25
- if (requestUrl.pathname === prefix || requestUrl.pathname.startsWith(`${prefix}/`)) {
26
- const signingUrl = new URL(requestUrl.toString());
27
- const stripped = requestUrl.pathname.slice(prefix.length);
28
- signingUrl.pathname = stripped.startsWith('/') ? stripped : `/${stripped}`;
29
- return signingUrl;
30
- }
31
- return requestUrl;
32
- };
33
- let publishClientInstance = null;
34
- let publishClientConnected = false;
35
- const resolveProxyBaseUrl = () => {
36
- const explicit = Env.REDIS_PROXY_URL.trim();
37
- if (explicit !== '')
38
- return explicit;
39
- if (Env.USE_REDIS_PROXY === false)
40
- return '';
41
- const host = Env.REDIS_PROXY_HOST || '127.0.0.1';
42
- const port = Env.REDIS_PROXY_PORT;
43
- return `http://${host}:${port}`;
44
- };
45
- const buildProxySettings = () => {
46
- const baseUrl = resolveProxyBaseUrl();
47
- const keyId = Env.REDIS_PROXY_KEY_ID || undefined;
48
- const secret = Env.REDIS_PROXY_SECRET || Env.APP_KEY || undefined;
49
- const timeoutMs = Env.REDIS_PROXY_TIMEOUT_MS;
50
- return { baseUrl, keyId, secret, timeoutMs };
51
- };
52
- const buildHeaders = async (settings, requestUrl, body) => {
53
- const headers = {
54
- 'Content-Type': 'application/json',
55
- };
56
- if (settings.keyId && settings.secret) {
57
- const signingUrl = buildSigningUrl(requestUrl, settings.baseUrl);
58
- const signed = await SignedRequest.createHeaders({
59
- method: 'POST',
60
- url: signingUrl,
61
- body,
62
- keyId: settings.keyId,
63
- secret: settings.secret,
64
- });
65
- Object.assign(headers, signed);
66
- }
67
- return headers;
68
- };
69
- const requestProxy = async (settings, path, payload) => {
70
- if (settings.baseUrl.trim() === '') {
71
- throw ErrorFactory.createConfigError('Redis proxy URL is missing (REDIS_PROXY_URL)');
72
- }
73
- const body = JSON.stringify(payload);
74
- const url = buildRequestUrl(settings.baseUrl, path);
75
- const headers = await buildHeaders(settings, url, body);
76
- const timeoutSignal = typeof AbortSignal !== 'undefined' && 'timeout' in AbortSignal;
77
- const signal = timeoutSignal ? AbortSignal.timeout(settings.timeoutMs) : undefined;
78
- const response = await fetch(url.toString(), {
79
- method: 'POST',
80
- headers,
81
- body,
82
- signal,
83
- });
84
- if (!response.ok) {
85
- const text = await response.text();
86
- throw ErrorFactory.createTryCatchError(`Redis proxy request failed (${response.status})`, text);
87
- }
88
- return (await response.json());
89
- };
90
- const toNumber = (value) => {
91
- if (typeof value === 'number')
92
- return value;
93
- if (typeof value === 'string') {
94
- const parsed = Number(value);
95
- return Number.isFinite(parsed) ? parsed : 0;
96
- }
97
- return 0;
98
- };
99
- const tryCreateProxyPublishClient = async () => {
100
- const settings = buildProxySettings();
101
- if (settings.baseUrl.trim() === '')
102
- return null;
103
- return {
104
- publish: async (channel, message) => {
105
- const response = await requestProxy(settings, '/zin/redis/command', {
106
- command: 'PUBLISH',
107
- args: [channel, message],
108
- });
109
- return toNumber(response.result);
110
- },
111
- };
112
- };
113
- /**
114
- * Build Redis URL from environment variables
115
- */
116
- const buildRedisUrl = () => {
117
- // Get REDIS_URL from environment
118
- const redisUrl = getRedisUrlFromEnv();
119
- if (redisUrl)
120
- return redisUrl;
121
- // Build URL from individual components
122
- return buildRedisUrlFromComponents();
123
- };
124
- /**
125
- * Get REDIS_URL from environment variables
126
- */
127
- const getRedisUrlFromEnv = () => {
128
- const anyEnv = process.env;
129
- const fromEnv = typeof anyEnv.get === 'function' ? anyEnv.get('REDIS_URL', '') : '';
130
- const hasProcess = typeof process === 'object' && process !== null;
131
- const fallback = hasProcess ? (process.env?.['REDIS_URL'] ?? '') : '';
132
- const trimmed = fromEnv.trim();
133
- const url = (trimmed.length > 0 ? fromEnv : String(fallback)).trim();
134
- return url.length > 0 ? url : null;
135
- };
136
- /**
137
- * Build Redis URL from individual environment components
138
- */
139
- const buildRedisUrlFromComponents = () => {
140
- const host = process.env?.['REDIS_HOST'] ?? 'localhost';
141
- const port = Number(process.env?.['REDIS_PORT'] ?? ZintrustLang.REDIS_DEFAULT_PORT);
142
- const password = process.env?.['REDIS_PASSWORD'];
143
- const database = Number(process.env?.['REDIS_QUEUE_DB'] ?? ZintrustLang.REDIS_DEFAULT_DB);
144
- let redisUrl = `redis://`;
145
- if (password)
146
- redisUrl += `:${password}@`;
147
- redisUrl += `${host}:${port}`;
148
- if (database > 0)
149
- redisUrl += `/${database}`;
150
- return redisUrl;
151
- };
152
- /**
153
- * Singleton Redis publish client factory
154
- * Creates and caches a Redis publish client for broadcasting
155
- */
156
- export const createRedisPublishClient = async () => {
157
- // Return cached instance if available
158
- if (publishClientConnected && publishClientInstance !== null) {
159
- return publishClientInstance;
160
- }
161
- const proxyClient = await tryCreateProxyPublishClient();
162
- if (proxyClient) {
163
- return cacheAndReturnClient(proxyClient);
164
- }
165
- const url = buildRedisUrl();
166
- if (url === null)
167
- throw ErrorFactory.createConfigError('Redis publish client requires REDIS_URL');
168
- // Try different Redis clients in order of preference
169
- const redisClient = (await tryCreateRedisClient(url)) || (await tryCreateIoRedisClient(url)) || getFallbackClient();
170
- return redisClient;
171
- };
172
- /**
173
- * Try to create client using 'redis' package
174
- */
175
- const tryCreateRedisClient = async (url) => {
176
- try {
177
- const mod = (await import('redis'));
178
- const client = mod.createClient({ url });
179
- if (typeof client.connect === 'function') {
180
- await connectClient(client, 'Redis publish client failed to connect');
181
- }
182
- return cacheAndReturnClient(client);
183
- }
184
- catch {
185
- return null;
186
- }
187
- };
188
- /**
189
- * Try to create client using 'ioredis' package
190
- */
191
- const tryCreateIoRedisClient = async (url) => {
192
- try {
193
- const mod = (await import('ioredis'));
194
- const redis = mod.default(url);
195
- const client = {
196
- publish: (channel, message) => redis.publish(channel, message),
197
- connect: redis.connect
198
- ? async () => {
199
- const connectFn = redis.connect;
200
- await connectFn();
201
- }
202
- : undefined,
203
- };
204
- if (typeof client.connect === 'function') {
205
- await connectClient(client, 'Redis publish client (ioredis) failed to connect');
206
- }
207
- return cacheAndReturnClient(client);
208
- }
209
- catch {
210
- return null;
211
- }
212
- };
213
- /**
214
- * Get fallback client from global or throw error
215
- */
216
- const getFallbackClient = () => {
217
- const globalFake = globalThis
218
- .__fakeRedisClient;
219
- if (globalFake === undefined) {
220
- throw ErrorFactory.createConfigError("Redis publish client requires the 'redis' or 'ioredis' package (run `zin add broadcast:redis' / `zin plugin install broadcast:redis`, or `npm install redis` / `npm install ioredis`) or a test fake client set in globalThis.__fakeRedisClient");
221
- }
222
- return cacheAndReturnClient(globalFake);
223
- };
224
- /**
225
- * Connect to Redis client with error handling
226
- */
227
- const connectClient = async (client, errorMessage) => {
228
- try {
229
- if (client.connect) {
230
- await client.connect();
231
- }
232
- }
233
- catch (err) {
234
- throw ErrorFactory.createTryCatchError(errorMessage, err);
235
- }
236
- };
237
- /**
238
- * Cache and return the client instance
239
- */
240
- const cacheAndReturnClient = (client) => {
241
- publishClientInstance = client;
242
- publishClientConnected = true;
243
- return client;
244
- };
245
- /**
246
- * Reset the singleton publish client (useful for testing)
247
- */
248
- export const resetPublishClient = () => {
249
- publishClientInstance = null;
250
- publishClientConnected = false;
251
- };
@@ -1,12 +0,0 @@
1
- export { BullMQRedisQueue } from './BullMQRedisQueue';
2
- export { HttpQueueDriver } from './HttpQueueDriver';
3
- export { QueueHttpGateway } from './QueueHttpGateway';
4
- export { createRedisPublishClient, resetPublishClient, type RedisPublishClient, } from './RedisPublishClient';
5
- export type { QueueMessage } from '../../../src/index.js';
6
- /**
7
- * Package version and build metadata
8
- * Available at runtime for debugging and health checks
9
- */
10
- export declare const _ZINTRUST_QUEUE_REDIS_VERSION = "0.1.15";
11
- export declare const _ZINTRUST_QUEUE_REDIS_BUILD_DATE = "__BUILD_DATE__";
12
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/queue-redis/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,KAAK,kBAAkB,GACxB,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,6BAA6B,WAAW,CAAC;AACtD,eAAO,MAAM,gCAAgC,mBAAmB,CAAC"}
@@ -1,10 +0,0 @@
1
- export { BullMQRedisQueue } from './BullMQRedisQueue.js';
2
- export { HttpQueueDriver } from './HttpQueueDriver.js';
3
- export { QueueHttpGateway } from './QueueHttpGateway.js';
4
- export { createRedisPublishClient, resetPublishClient, } from './RedisPublishClient.js';
5
- /**
6
- * Package version and build metadata
7
- * Available at runtime for debugging and health checks
8
- */
9
- export const _ZINTRUST_QUEUE_REDIS_VERSION = '0.1.15';
10
- export const _ZINTRUST_QUEUE_REDIS_BUILD_DATE = '__BUILD_DATE__';
@@ -1,6 +0,0 @@
1
- type QueueApi = {
2
- register: (name: string, driver: unknown) => void;
3
- };
4
- export declare function registerRedisQueueDriver(queue: QueueApi): Promise<void>;
5
- export {};
6
- //# sourceMappingURL=register.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../../packages/queue-redis/src/register.ts"],"names":[],"mappings":"AAAA,KAAK,QAAQ,GAAG;IACd,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CACnD,CAAC;AAEF,wBAAsB,wBAAwB,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAG7E"}
@@ -1,21 +0,0 @@
1
- export async function registerRedisQueueDriver(queue) {
2
- const mod = await import('./BullMQRedisQueue.js');
3
- queue.register('redis', mod.default);
4
- }
5
- const importCore = async () => {
6
- try {
7
- return await import('../../../src/index.js');
8
- }
9
- catch {
10
- try {
11
- return await import('../../../src/index.js');
12
- }
13
- catch {
14
- return {};
15
- }
16
- }
17
- };
18
- const core = (await importCore());
19
- if (core.Queue !== undefined) {
20
- await registerRedisQueueDriver(core.Queue);
21
- }
@@ -1,11 +0,0 @@
1
- /**
2
- * Migration: CreateWorkersTable
3
- * Creates workers table for persistence
4
- */
5
- import { type IDatabase } from '../../../src/index.js';
6
- export interface Migration {
7
- up(db: IDatabase): Promise<void>;
8
- down(db: IDatabase): Promise<void>;
9
- }
10
- export declare const migration: Migration;
11
- //# sourceMappingURL=20260119100000_create_zintrust_workers_table.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"20260119100000_create_zintrust_workers_table.d.ts","sourceRoot":"","sources":["../../../../packages/workers/migrations/20260119100000_create_zintrust_workers_table.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAmC,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEjF,MAAM,WAAW,SAAS;IACxB,EAAE,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC;AAED,eAAO,MAAM,SAAS,EAAE,SA4BvB,CAAC"}
@@ -1,32 +0,0 @@
1
- /**
2
- * Migration: CreateWorkersTable
3
- * Creates workers table for persistence
4
- */
5
- import { MigrationSchema } from '../../../src/index.js';
6
- export const migration = {
7
- async up(db) {
8
- const schema = MigrationSchema.create(db);
9
- await schema.create('zintrust_workers', (table) => {
10
- table.id();
11
- table.string('name').unique();
12
- table.string('queue_name');
13
- table.string('version').nullable();
14
- table.string('processor_spec').nullable();
15
- table.string('status').default('running');
16
- table.boolean('auto_start').default(false);
17
- table.integer('concurrency').default(1);
18
- table.string('region').nullable();
19
- table.json('features').nullable();
20
- table.json('infrastructure').nullable();
21
- table.json('datacenter').nullable();
22
- table.text('last_error').nullable();
23
- table.string('connection_state').nullable();
24
- table.timestamp('last_health_check').nullable();
25
- table.timestamps();
26
- });
27
- },
28
- async down(db) {
29
- const schema = MigrationSchema.create(db);
30
- await schema.dropIfExists('zintrust_workers');
31
- },
32
- };
@@ -1,11 +0,0 @@
1
- /**
2
- * Migration: CreateQueueJobsTable
3
- * Creates queue_jobs table for database-driven queue system
4
- */
5
- import { type IDatabase } from '../../../src/index.js';
6
- export interface Migration {
7
- up(db: IDatabase): Promise<void>;
8
- down(db: IDatabase): Promise<void>;
9
- }
10
- export declare const migration: Migration;
11
- //# sourceMappingURL=20260123180000_create_queue_jobs_table.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"20260123180000_create_queue_jobs_table.d.ts","sourceRoot":"","sources":["../../../../packages/workers/migrations/20260123180000_create_queue_jobs_table.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAmC,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEjF,MAAM,WAAW,SAAS;IACxB,EAAE,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC;AAED,eAAO,MAAM,SAAS,EAAE,SA6CvB,CAAC"}
@@ -1,46 +0,0 @@
1
- /**
2
- * Migration: CreateQueueJobsTable
3
- * Creates queue_jobs table for database-driven queue system
4
- */
5
- import { MigrationSchema } from '../../../src/index.js';
6
- export const migration = {
7
- async up(db) {
8
- const schema = MigrationSchema.create(db);
9
- await schema.create('queue_jobs', (table) => {
10
- table.uuid('id').primary();
11
- table.string('queue');
12
- table.json('payload');
13
- table.integer('attempts').default(0);
14
- table.integer('max_attempts').default(3);
15
- table.timestamp('reserved_at').nullable();
16
- table.timestamp('available_at').default('CURRENT_TIMESTAMP');
17
- table.timestamps();
18
- table.timestamp('failed_at').nullable();
19
- table.text('error_message').nullable();
20
- // Indexes for performance
21
- table.index('queue');
22
- table.index('available_at');
23
- table.index('reserved_at');
24
- table.index('failed_at');
25
- });
26
- // Create failed jobs table for dead letter queue
27
- await schema.create('queue_jobs_failed', (table) => {
28
- table.id();
29
- table.string('original_id');
30
- table.string('queue');
31
- table.json('payload');
32
- table.integer('attempts');
33
- table.timestamp('failed_at');
34
- table.text('error_message');
35
- table.timestamps();
36
- // Indexes for failed jobs
37
- table.index(['queue', 'failed_at']);
38
- table.index('failed_at');
39
- });
40
- },
41
- async down(db) {
42
- const schema = MigrationSchema.create(db);
43
- await schema.dropIfExists('queue_jobs_failed');
44
- await schema.dropIfExists('queue_jobs');
45
- },
46
- };
@@ -1,7 +0,0 @@
1
- import type { IDatabase } from '../../../src/index.js';
2
- export interface Migration {
3
- up(db: IDatabase): Promise<void>;
4
- down(db: IDatabase): Promise<void>;
5
- }
6
- export declare const migration: Migration;
7
- //# sourceMappingURL=20260213142000_create_zintrust_job_tracking_tables.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"20260213142000_create_zintrust_job_tracking_tables.d.ts","sourceRoot":"","sources":["../../../../packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3D,MAAM,WAAW,SAAS;IACxB,EAAE,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC;AAED,eAAO,MAAM,SAAS,EAAE,SA+CvB,CAAC"}
@@ -1,44 +0,0 @@
1
- import { MigrationSchema } from '../../../src/index.js';
2
- export const migration = {
3
- async up(db) {
4
- const schema = MigrationSchema.create(db);
5
- await schema.create('zintrust_jobs', (table) => {
6
- table.id();
7
- table.string('job_id');
8
- table.string('queue_name');
9
- table.string('status');
10
- table.integer('attempts').default(0);
11
- table.integer('max_attempts').nullable();
12
- table.text('payload_json').notNullable();
13
- table.text('result_json').nullable();
14
- table.text('last_error').nullable();
15
- table.timestamp('retry_at').nullable();
16
- table.timestamp('created_at').nullable();
17
- table.timestamp('started_at').nullable();
18
- table.timestamp('completed_at').nullable();
19
- table.timestamp('updated_at').nullable();
20
- table.index(['job_id', 'queue_name']);
21
- table.index(['queue_name', 'status']);
22
- table.index('updated_at');
23
- });
24
- await schema.create('zintrust_job_transitions', (table) => {
25
- table.id();
26
- table.string('job_id');
27
- table.string('queue_name');
28
- table.string('from_status').nullable();
29
- table.string('to_status');
30
- table.string('reason').nullable();
31
- table.integer('attempts').nullable();
32
- table.text('error').nullable();
33
- table.timestamp('transitioned_at').nullable();
34
- table.timestamps();
35
- table.index(['job_id', 'queue_name']);
36
- table.index('transitioned_at');
37
- });
38
- },
39
- async down(db) {
40
- const schema = MigrationSchema.create(db);
41
- await schema.dropIfExists('zintrust_job_transitions');
42
- await schema.dropIfExists('zintrust_jobs');
43
- },
44
- };
@@ -1,7 +0,0 @@
1
- import type { IDatabase } from '../../../src/index.js';
2
- export interface Migration {
3
- up(db: IDatabase): Promise<void>;
4
- down(db: IDatabase): Promise<void>;
5
- }
6
- export declare const migration: Migration;
7
- //# sourceMappingURL=20260213183000_expand_zintrust_job_tracking_reliability_tables.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"20260213183000_expand_zintrust_job_tracking_reliability_tables.d.ts","sourceRoot":"","sources":["../../../../packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,SAAS,EAAE,MAAM,gBAAgB,CAAC;AA8H3D,MAAM,WAAW,SAAS;IACxB,EAAE,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC;AAED,eAAO,MAAM,SAAS,EAAE,SAYvB,CAAC"}
@@ -1,104 +0,0 @@
1
- import { MigrationSchema } from '../../../src/index.js';
2
- const createHasIndex = (db) => {
3
- return async (tableName, indexName) => {
4
- const t = db.getType();
5
- if (t === 'mysql') {
6
- const rows = await db.query('SELECT 1 FROM information_schema.statistics WHERE table_schema = DATABASE() AND table_name=? AND index_name=? LIMIT 1', [tableName, indexName], true);
7
- return rows.length > 0;
8
- }
9
- if (t === 'postgresql') {
10
- const rows = await db.query("SELECT 1 FROM pg_indexes WHERE schemaname='public' AND tablename=? AND indexname=? LIMIT 1", [tableName, indexName], true);
11
- return rows.length > 0;
12
- }
13
- if (t === 'sqlite' || t === 'd1' || t === 'd1-remote') {
14
- const rows = await db.query(`PRAGMA index_list("${tableName}")`, [], true);
15
- return rows.some((row) => row.name === indexName);
16
- }
17
- if (t === 'sqlserver') {
18
- const rows = await db.query('SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID(?) AND name=?', [tableName, indexName], true);
19
- return rows.length > 0;
20
- }
21
- return false;
22
- };
23
- };
24
- const expandJobsTableIfNeeded = async (db, schema) => {
25
- const jobsTableExists = await schema.hasTable('zintrust_jobs');
26
- if (!jobsTableExists)
27
- return;
28
- const hasIndex = createHasIndex(db);
29
- const [hasLastErrorCode, hasTimeoutAt, hasHeartbeatAt, hasExpectedCompletionAt, hasWorkerName, hasWorkerInstanceId, hasWorkerRegion, hasWorkerVersion, hasRecoveredAt, hasIdempotencyKey,] = await Promise.all([
30
- schema.hasColumn('zintrust_jobs', 'last_error_code'),
31
- schema.hasColumn('zintrust_jobs', 'timeout_at'),
32
- schema.hasColumn('zintrust_jobs', 'heartbeat_at'),
33
- schema.hasColumn('zintrust_jobs', 'expected_completion_at'),
34
- schema.hasColumn('zintrust_jobs', 'worker_name'),
35
- schema.hasColumn('zintrust_jobs', 'worker_instance_id'),
36
- schema.hasColumn('zintrust_jobs', 'worker_region'),
37
- schema.hasColumn('zintrust_jobs', 'worker_version'),
38
- schema.hasColumn('zintrust_jobs', 'recovered_at'),
39
- schema.hasColumn('zintrust_jobs', 'idempotency_key'),
40
- ]);
41
- const [hasIdxStatusUpdated, hasIdxExpectedCompletion, hasIdxHeartbeat, hasIdxIdempotency] = await Promise.all([
42
- hasIndex('zintrust_jobs', 'idx_zj_status_updated'),
43
- hasIndex('zintrust_jobs', 'idx_zj_expected_completion'),
44
- hasIndex('zintrust_jobs', 'idx_zj_heartbeat_at'),
45
- hasIndex('zintrust_jobs', 'idx_zj_idempotency'),
46
- ]);
47
- await schema.table('zintrust_jobs', (table) => {
48
- if (!hasLastErrorCode)
49
- table.string('last_error_code').nullable();
50
- if (!hasTimeoutAt)
51
- table.timestamp('timeout_at').nullable();
52
- if (!hasHeartbeatAt)
53
- table.timestamp('heartbeat_at').nullable();
54
- if (!hasExpectedCompletionAt)
55
- table.timestamp('expected_completion_at').nullable();
56
- if (!hasWorkerName)
57
- table.string('worker_name').nullable();
58
- if (!hasWorkerInstanceId)
59
- table.string('worker_instance_id').nullable();
60
- if (!hasWorkerRegion)
61
- table.string('worker_region').nullable();
62
- if (!hasWorkerVersion)
63
- table.string('worker_version').nullable();
64
- if (!hasRecoveredAt)
65
- table.timestamp('recovered_at').nullable();
66
- if (!hasIdempotencyKey)
67
- table.string('idempotency_key').nullable();
68
- if (!hasIdxStatusUpdated)
69
- table.index(['status', 'updated_at'], 'idx_zj_status_updated');
70
- if (!hasIdxExpectedCompletion) {
71
- table.index('expected_completion_at', 'idx_zj_expected_completion');
72
- }
73
- if (!hasIdxHeartbeat)
74
- table.index('heartbeat_at', 'idx_zj_heartbeat_at');
75
- if (!hasIdxIdempotency)
76
- table.index('idempotency_key', 'idx_zj_idempotency');
77
- });
78
- };
79
- const ensureHeartbeatsTable = async (schema) => {
80
- await schema.create('zintrust_job_heartbeats', (table) => {
81
- table.id();
82
- table.string('job_id');
83
- table.string('queue_name');
84
- table.string('worker_instance_id').nullable();
85
- table.timestamp('last_heartbeat_at').nullable();
86
- table.timestamp('expected_next_heartbeat_at').nullable();
87
- table.integer('heartbeat_interval_ms').default(10000);
88
- table.timestamp('created_at').nullable();
89
- table.timestamp('updated_at').nullable();
90
- table.index(['queue_name', 'expected_next_heartbeat_at'], 'idx_zjh_qn_next_hb');
91
- table.index(['job_id', 'queue_name'], 'idx_zjh_job_queue');
92
- });
93
- };
94
- export const migration = {
95
- async up(db) {
96
- const schema = MigrationSchema.create(db);
97
- await expandJobsTableIfNeeded(db, schema);
98
- await ensureHeartbeatsTable(schema);
99
- },
100
- async down(db) {
101
- const schema = MigrationSchema.create(db);
102
- await schema.dropIfExists('zintrust_job_heartbeats');
103
- },
104
- };