An approach I moved from this to, was to use the DB trigger to write jobs directly to an Oban oban_jobs table.
Oban jobs run almost instantly when they are queued so there's no perceptible difference in speed, but you get all the benefits of resilience that Oban provides, so your webapp connection can go down, such as during a deploy, and still catch up reliably.
It's also handy to be able use the oban_jobs table for debugging purposes.
Very interesting project, thanks for linking. Was thinking about building something like Oban.Peer a while ago. We're not using Elixir. Might use Oban as an example :-)