승패 조건을 Placeholder와 함께 최소 구조로 구현한다.
승리 조건과 패배 조건을 체크하고, 조건이 충족되면 우선 pending outcome 으로 기록해야 한다.
최종 승리/패배 상태의 커밋은 안전한 시점에만 가능해야 한다.
예를 들어 액션 체인 진행 도중에는 판정은 가능하지만 커밋은 불가능하다.
액션 체인이 종료된 뒤 커밋 가능한 상태가 되었을 때만 결과를 커밋한다.
패배 pending과 승리 pending이 충돌할 경우에는 패배가 우선한다.
다음 조건들을 모두 만족하면 승리 판정 대상이다.
임무 달성함 = True임무 종료 선언 가능 = True임무 종료됨 = True패배하지 않은 상태