I'm unsure whether it is a bug in Rocq or Rocq-Elpi, or even this is the intended behavior. But, IMO, fatal errors should remain fatal. Here is an example:
From elpi Require Import elpi.
Elpi Tactic test.
Elpi Accumulate lp:{{
solve _ _ :- coq.error "fatal error".
}}.
Goal False.
Succeed exact (ltac:(elpi test)) || idtac.
Abort.