Is your feature request related to a problem? Please describe.
I often times have very few jobs with a new error. When I finally debug the issue and fix it locally, I would like to run those failed jobs with the new updated code locally to test the fixed code as well as not needing to deploy the new code for just those few specific jobs that failed.
I have some filtered jobs from the failed ones that I want to process myself and then would like to mark them as completed. Currently there is no way to mark a job as completed unless a worker picks it up and marks as completed. However when I retry these jobs, they are immediately picked up by my production workers.
Describe the solution you'd like
I would like some simple API to mark the job as completed. If not possible to move the job to completed without having existing lock on it, then something like job.takeLock maybe? Then later be able to do job.moveToCompleted with lock id and should work.
Describe alternatives you've considered
One thing I can do currently is just manually processing those jobs locally and then deleting them from BullMQ.