SMLoginItemSetEnabled failing to find and launch helper

I had been using SMLoginItemSetEnabled to launch a helper app, and it was working, but stopped working recently, possibly associated with Big Sur updates. The helper is of the "UI Agent" type, and neither app is sandboxed. I see things like this in the console log:
Code Block
Nov 30 16:03:01 MacBook-Pro com.apple.xpc.launchd[1] (com.frameforge.crash-catcher.1.debug[8065]): Could not find and/or execute program specified by service: 149: Could not find a bundle of the given identifier through LaunchServices: com.frameforge.crash-catcher.1.debug
Nov 30 16:03:01 MacBook-Pro com.apple.xpc.launchd[1] (com.frameforge.crash-catcher.1.debug[8065]): Service exited with abnormal code: 78
Nov 30 16:03:01 MacBook-Pro com.apple.xpc.launchd[1] (com.frameforge.crash-catcher.1.debug): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.

It's weird that it says it couldn't find the bundle, because LSCopyApplicationURLsForBundleIdentifier was able to find it. I tried changing the bundle ID of the helper in case old copies were confusing things.

I have seen the advice to test plug-in registration problems in a virtual machine, but my main app requires OpenGL, which is not supported by Mac-on-Mac virtualization.
SMLoginItemSetEnabled failing to find and launch helper
 
 
Q