{ "results": [ { "check": "confirm needs a name", "result": "PASS", "detail": "" }, { "check": "confirm: all required sections confirmed", "result": "PASS", "detail": "23 sections" }, { "check": "confirm: sections not required stay unconfirmed", "result": "PASS", "detail": "" }, { "check": "pier page shows all confirmed", "result": "PASS", "detail": "" }, { "check": "batch run needs a name", "result": "PASS", "detail": "" }, { "check": "single run refused while the batch runs", "result": "PASS", "detail": "" }, { "check": "wrong input: batch stops at G1 FAIL", "result": "PASS", "detail": "['G1~G5 단일 세션 실행 (게이트 검사·음성 시험만, 중간 저장·재로드 없음)', '[batch] one Rhino session: build G1..G5, check G1, G2, G3, G4, G5 (no per-gate save / reload)', '[G1] FAIL checks 170/171 (planned FAIL 0, unplanned 1) negative H/V True/True (batch)', '[G2] PASS checks 42/42 (planned FAIL 0, unplanned 0) negati" }, { "check": "wrong input: nothing approved", "result": "PASS", "detail": "{}" }, { "check": "batch completes", "result": "PASS", "detail": "['G1~G5 단일 세션 실행 (게이트 검사·음성 시험만, 중간 저장·재로드 없음)', '[batch] one Rhino session: build G1..G5, check G1, G2, G3, G4, G5 (no per-gate save / reload)', '[G1] PASS checks 171/171 (planned FAIL 0, unplanned 0) negative H/V True/True (batch)', '[G2] PASS checks 42/42 (planned FAIL 0, unplanned 0) negati" }, { "check": "G1..G5 approved by the given name with the auto note", "result": "PASS", "detail": "{'G1': {'decision': '승인', 'by': '시험자', 'note': '일괄 실행 자동 승인', 'at': '2026-10-20 13:59:54', 'inputs_sha': 'a07fc78446227a14'}, 'G2': {'decision': '승인', 'by': '시험자', 'note': '일괄 실행 자동 승인', 'at': '2026-10-20 13:59:54', 'inputs_sha': 'a07fc78446227a14'}, 'G3': {'decision': '승인', 'by': '시험자', 'note': '일괄" }, { "check": "batch: one session, gate checks only (mode batch, reload/unchanged skipped)", "result": "PASS", "detail": "{'G1': 'batch', 'G2': 'batch', 'G3': 'batch', 'G4': 'batch', 'G5': 'batch'}" }, { "check": "batch: only G5 model saved", "result": "PASS", "detail": "" }, { "check": "batch: G1 download refused, G5 download served", "result": "PASS", "detail": "" }, { "check": "batch: session time", "result": "PASS", "detail": "144.8s for G1..G5 (individual runs ~330s)" }, { "check": "batch G5 model == individual-run G5 model (3190 objects, FAST fingerprints)", "result": "PASS", "detail": "{'count': [3190, 3190], 'objects_with_diffs': 0, 'diff_fields': {}}" }, { "check": "planned FAIL gates still listed", "result": "PASS", "detail": "" }, { "check": "nothing left to run", "result": "PASS", "detail": "" }, { "check": "gates page renders batch log", "result": "PASS", "detail": "" }, { "check": "pier page offers 'G5 일괄 승인' for one unapproved gate", "result": "PASS", "detail": "" }, { "check": "existing PASS approved without re-run", "result": "PASS", "detail": "['G5 기존 PASS 결과 183/183 (계획 FAIL 0) → 승인 (재실행 없음)'] 5s" } ], "passed": 20, "total": 20 }