Manual page jobs(1p) specifies such application use as $(jobs -p), which seems to be the only way to get job pid somehow reused by saving in a variable (this page itself also tells it's common to be implemented as built-in). It works bash, but not in dash (btw, dash doesn't even document it in own manual).
This seems like an upstream bug, no?
Indeed.