enqueueJob = (func, args) => {
    setAdd(
      pendingJobs,
      promiseThen(func(...args), noop, error => {
        arrayPush(errors, error);
      }),
    );
  }
Enqueues a job that starts immediately but won't be awaited until drainQueue is called.

@template {(...args: any[]) => Promise<void>} F
@param {F} func - An async function to execute
@param {Parameters<F>} args - Arguments to pass to the function
@returns {void}