@monque/core 0.3.0 → 1.1.0

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.
package/README.md CHANGED
@@ -15,9 +15,6 @@
15
15
 
16
16
  <p align="center">MongoDB-backed job scheduler with atomic locking, exponential backoff, and cron scheduling.</p>
17
17
 
18
- > [!WARNING]
19
- > This package is currently in **pre-release**. The public API may change between releases. Expect breaking changes until `1.0.0`.
20
-
21
18
  ## Installation
22
19
 
23
20
  Using Bun:
@@ -64,6 +61,10 @@ await monque.enqueue('send-email', { to: 'user@example.com', subject: 'Hello' })
64
61
  // Schedule recurring jobs
65
62
  await monque.schedule('0 9 * * *', 'daily-report', { type: 'summary' });
66
63
 
64
+ // Management
65
+ await monque.cancelJob('job-id');
66
+ const stats = await monque.getQueueStats();
67
+
67
68
  // Graceful shutdown
68
69
  await monque.stop();
69
70
  ```
@@ -95,6 +96,19 @@ Creates a new Monque instance.
95
96
  - `stop()` - Graceful shutdown
96
97
  - `isHealthy()` - Check scheduler health
97
98
 
99
+ **Management:**
100
+ - `getJob(id)` - Get job details
101
+ - `getJobs(filter)` - List jobs
102
+ - `getJobsWithCursor(options)` - Paginated list
103
+ - `getQueueStats(filter?)` - Queue statistics
104
+ - `cancelJob(id)` - Cancel a job
105
+ - `retryJob(id)` - Retry a job
106
+ - `rescheduleJob(id, date)` - Reschedule a job
107
+ - `deleteJob(id)` - Delete a job
108
+ - `cancelJobs(filter)` - Bulk cancel
109
+ - `retryJobs(filter)` - Bulk retry
110
+ - `deleteJobs(filter)` - Bulk delete
111
+
98
112
  ### Events
99
113
 
100
114
  ```typescript
@@ -102,6 +116,9 @@ monque.on('job:start', (job) => { /* job started */ });
102
116
  monque.on('job:complete', ({ job, duration }) => { /* job completed */ });
103
117
  monque.on('job:fail', ({ job, error, willRetry }) => { /* job failed */ });
104
118
  monque.on('job:error', ({ error, job? }) => { /* unexpected error */ });
119
+ monque.on('job:cancelled', ({ job }) => { /* job cancelled */ });
120
+ monque.on('job:retried', ({ job, previousStatus }) => { /* job retried */ });
121
+ monque.on('job:deleted', ({ jobId }) => { /* job deleted */ });
105
122
  monque.on('stale:recovered', ({ count }) => { /* stale jobs recovered */ });
106
123
  ```
107
124