Sorry for the inconvenience, we had to make that breaking change in v0.32.0 to get uniform and sane handling of binary data everywhere. As we mention in the release notes, you can wrap the newly returned ArrayBuffer in a JS typed array to get almost exactly the same behavior as before, like this:
import { randomBytes } from 'k6/crypto';
function createRequestId() {
return (new Uint8Array(randomBytes(8))).reduce(
(output, elem) => output + `0${elem.toString(16)}`.slice(-2), '');
}