NPC 명령의 실제 검사와 준비 및 대체 실행 순서를 감사 기록에 연결
This commit is contained in:
@@ -14,7 +14,12 @@ export const persistAuditDecisions = async (
|
||||
const headers = batch.map(({ steps, ...decision }) => {
|
||||
if (!Number.isSafeInteger(decision.tick) || decision.tick < 0 || !steps.length)
|
||||
throw new Error('Invalid play audit decision');
|
||||
if (steps[0]?.kind !== 'DECISION_START' || steps.at(-1)?.kind !== 'DECISION_END')
|
||||
if (
|
||||
steps[0]?.kind !== 'DECISION_START' ||
|
||||
!steps.some((step) => step.kind === 'DECISION_END') ||
|
||||
!['DECISION_END', 'EXECUTION_ATTEMPT'].includes(steps.at(-1)!.kind) ||
|
||||
(decision.summary.executionCoverage === 'ATTEMPTS' && steps.at(-1)?.kind !== 'EXECUTION_ATTEMPT')
|
||||
)
|
||||
throw new Error('Incomplete play audit decision');
|
||||
if (
|
||||
steps.some(
|
||||
|
||||
Reference in New Issue
Block a user