I did exactly zero manual tweaking of the code. All I did was three prompts: the first to get -parallel working between top-level files, the second to get it to also do subsidiary processes like format conversion, and the third to make sure those don't step on each others' toes which it did using flock(). I did not check if it not just interlocks but also avoids repeating conversions like foo.ps→foo.pdf. Basically I didn't look at the code much at all, I just tested it on a big 40-top-level-file parallel build.
You might be able to see a transcript of the prompts, and github copilot's stream-of-consciousness transcript, here: https://github.com/barak/latexmk/tasks/64029872-d635-41e0-b13c-1fb049045bb0 (I just added a fourth prompt: address your above comments. I think with any actual parallelism, -interaction=batchmode seems like a good idea. Maybe it could be left off if -parallel is used but there's only one top-level .tex file being processed and there's nothing that could step on its toes. But even that might not work, with the buffering.)

