Just an update:
I realized the "expected 4" in the error was expecting 'Read' permissions, but none were assigned (observed 0): org.chromium.crashpad.child_port_handshake.9915.63117.BUEXLMXFWPLCEONM: Permission denied (1100) [0601/152740.226091:ERROR:file_io.cc(94)] ReadExactly: expected 4, observed 0
I did a fresh install of the entire system and all packages (not using sudo).
I went through all project folders using
$ find . ! -perm -g+r
in the terminal to find any contents missing read permissions.
Changing these permissions using chmod before building (and during building with a hook) gave the same error.
However, I did find a solution. I rebuilt the functionality of the app using npm packages bluebird and puppeteer-in-electron.
bluebird replaces puppeteer-cluster for concurrency control and puppeteer-in-electron opens Chromium through Electron, so it no longer needs to be bundled separately, and everything now works without any permission errors.
Topic:
App & System Services
SubTopic:
Processes & Concurrency