Executando verificação de segurança...
1

As transações principalmente em ORM mais maduras, seguem o mesmo protocolo e implementações parecidas. Agora voce falando de DDD, voce pode utilizar tanto no Laravel ou Express as transactions na sua camada de repository infra/repository/meu-banco.

Caso voce precisar criar uma transação que afete mais de uma tabela por exemplo: CreateUserRepository e CreateUserGroupRepository é acho melhor seguir o conceito de responsabilidade única e também a regra do seu projeto. Se o seu usuário precisa de um grupo para existir, voce pode dentro do CreateUserRepository já criar a transação dentro dele.

Caso voce queira abstrair a transação para outra camada, na aplication ou main eu acho over, por que a transação só deveria existir na camanda de repository

Carregando publicação patrocinada...