Running pipeline as non-root user with exec runner on MacOS

We are using the drone exec runner on a mac machine, as a non root user, but the exec runner seems to show erratic behavior, where it at most times runs as the root user, but occasionally switches to use another user on the machine when another build is triggered/ a build is restarted. Is there a definitive way to specify the user that runs commands in pipelines using the exec runner on MacOS?

What we have tried:
We have attempted to manually specify the user in drone exec runner’s launchd file, but this seems to have no effect. The exec runner process on the machine seems to be running as the user specified in the launchd file (which is a non root user, with no sudo access either), but executing the command “id -un” on a pipeline step still displays the user for the pipeline as “root”.

When you install the runner, it spawns pipeline processes using the same user account that installed the runner (do not use sudo since this will install as root). I personally have not observed the behavior you described, but would recommend submitting a patch if you are able to reliably reproduce the problem. Source code for the exec runner code on GitHub at drone-runners/drone-runner-exec.