Review this AI-generated worker implementation against its stated task.
Run only allowlisted CPU-bound report calculations with at most four workers, preserve input order, reject any failed batch, and tear down every worker.
JavaScript
import { Worker } from "node:worker_threads";
export function runReports(reports) {
const results = [];
return new Promise((resolve) => {
for (const [index, report] of reports.entries()) {
const worker = new Worker(report.source, {
eval: true,
workerData: report.input,
});
worker.once("message", (result) => {
results[index] = result;
resolve(results);
});
worker.once("error", (error) => console.error(error));
}
});
}
generated code is illustrative, not from any one model