По моей задумке получается так: реализация экстернал таска публикует спринговый ApplicationEvent, который слушает метод с
@TransactionalEventListener (срабатывает после коммита транзакции, в которой опубликован ивент, что важно) и уже этот листенер читает и лочит из базы таск и посылает нужный запрос во внешнюю систему. Т.е. это не камундовский листенер и для камунды все как обычно