fix(firstleg): stop retrying deterministic completion preflight conflicts

This commit is contained in:
2026-10-05 16:05:06 +08:00
parent adaac7aca4
commit 090f57bfb1
2 changed files with 59 additions and 1 deletions
@@ -1,5 +1,6 @@
package com.baiyue.firstleg.service;
import com.baiyue.common.core.api.ResultCode;
import com.baiyue.common.core.exception.BizException;
import com.baiyue.firstleg.entity.LoadingCompletionCommandEntity;
import com.baiyue.firstleg.repository.LoadingCompletionCommandRepository;
@@ -63,7 +64,13 @@ public class LoadingCompletionWorker {
}
private static boolean isDeterministicLocalBusinessFailure(String stage, Throwable cause) {
return cause instanceof BizException && java.util.Set.of(
if (!(cause instanceof BizException business)) {
return false;
}
if ("COMPLETED_EVENT_READY".equals(stage)) {
return business.getResultCode() == ResultCode.CONFLICT;
}
return java.util.Set.of(
"OWNER_DISCOVERY", "OWNER_READY", "PLAN_GATE", "TASK_REVIEW",
"PLAN_COMPLETE", "COMPLETED_EVENT").contains(stage);
}