event.error を返しているのにステータスが進んでしまうことがあるのは仕様でしょうか?

プロセスでステータスを進めるとき、event.error を設定して return event; しているにも関わらず、 稀にステータスが進んでしまう現象があり困っています。
自分の端末では正しくエラーが出て止まるのですが、他のユーザーで「完了日が未入力のまま次のステータスへ進んでしまった」ケースが複数回確認されました。
現在のコードは以下のようになっており、app.record.detail.process.proceed イベントで制御しています。

javascript

(function () {
“use strict”;
kintone.events.on([‘app.record.detail.process.proceed’], function (event) {
var record = event.record;
var currentStatus = event.status.value;
var nextStatus = event.nextStatus.value;

if (currentStatus === 'ステータス1' && nextStatus === 'ステータス2' && !record['完了日'].value) {
  event.error = '「完了日」が未入力のまま、完了に進めることはできません。';
  return event;
} else if (nextStatus === 'ステータス2' && ['ステータスx', 'ステータスy', 'ステータス1'].includes(currentStatus)) {
  setTimeout(() => {
    copyxxxx(record)
      .then(() => {
        location.reload();
      })
      .catch((err) => {
        alert("処理に失敗しました。");
        console.error("処理失敗", err);
      });
  }, 300);
}

return event;

});
})();


この現象について、
 `event.error` を返してもプロセスが進むことがあるのは仕様でしょうか?
 通信状況やUI操作(連打や戻るボタンなど)で発生する可能性はありますか?
これを確実に防ぐ手段(プロセス制御以外)に何か心当たりはありますか?
もし類似事例や回避策をご存じの方がいれば、ぜひ教えてください。