Jason Woltje
e09950f225
feat(#165): Implement BullMQ module setup
Create BullMQ module that shares the existing Valkey connection for job queue processing.
Files Created:
- apps/api/src/bullmq/bullmq.module.ts - Global module configuration
- apps/api/src/bullmq/bullmq.service.ts - Queue management service
- apps/api/src/bullmq/queues.ts - Queue name constants
- apps/api/src/bullmq/index.ts - Barrel exports
- apps/api/src/bullmq/bullmq.service.spec.ts - Unit tests
Files Modified:
- apps/api/src/app.module.ts - Import BullMqModule
Queue Definitions:
- mosaic-jobs (main queue)
- mosaic-jobs-runner (read-only operations)
- mosaic-jobs-weaver (write operations)
- mosaic-jobs-inspector (validation operations)
Implementation:
- Reuses VALKEY_URL from environment (shared connection)
- Follows existing Valkey module patterns
- Includes health check methods
- Proper lifecycle management (init/destroy)
- Queue names use hyphens instead of colons (BullMQ requirement)
Quality Gates:
- Unit tests: 11 passing
- TypeScript: No errors
- ESLint: No violations
- Build: Successful
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 21:01:25 -06:00
..
2026-02-01 01:48:09 -06:00
2026-01-30 18:26:41 -06:00
2026-01-31 18:11:32 -06:00
2026-01-31 16:50:32 -06:00
2026-02-01 21:01:25 -06:00
2026-01-31 10:37:14 -06:00
2026-01-31 13:44:23 -06:00
2026-01-31 13:51:46 -06:00
2026-01-31 10:37:14 -06:00
2026-01-30 18:26:41 -06:00
2026-01-31 01:01:21 -06:00
2026-01-31 01:01:21 -06:00
2026-01-28 15:07:04 -06:00
2026-01-30 20:39:03 -06:00
2026-01-31 01:01:21 -06:00
2026-01-30 20:39:03 -06:00
2026-01-30 18:26:41 -06:00
2026-01-31 15:01:18 -06:00
2026-01-31 13:07:58 -06:00
2026-01-30 18:26:41 -06:00
2026-01-31 12:44:50 -06:00
2026-01-30 20:39:03 -06:00
2026-01-31 01:01:21 -06:00
2026-01-31 13:33:04 -06:00
2026-01-31 14:47:59 -06:00
2026-01-31 14:01:42 -06:00
2026-01-31 01:01:21 -06:00
2026-01-31 12:55:11 -06:00
2026-01-31 15:01:18 -06:00
2026-01-30 18:26:41 -06:00
2026-01-30 20:39:03 -06:00
2026-01-30 20:39:03 -06:00
2026-01-30 20:39:03 -06:00
2026-02-01 01:48:09 -06:00
2026-01-28 16:24:25 -06:00
2026-01-30 18:26:41 -06:00
2026-02-01 21:01:25 -06:00
2026-01-28 13:31:33 -06:00
2026-01-29 12:29:21 -06:00