{
  "task": "씨드페이먼츠 기존 단말기 통보 양식 변경",
  "environment": "dev",
  "mid": "0987654321",
  "ticketId": null,
  "status": "PASS",
  "updatedAt": "2026-10-15T17:47:16.129536+09:00",
  "counts": {
    "total": 8,
    "passed": 8,
    "failed": 0,
    "blocked": 0,
    "notRun": 0
  },
  "deploymentCommitVerified": false,
  "unitTests": "요청자 제공 7건 통과; 본 QA의 독립 실행 아님",
  "knownObservation": "S9 승인 거래일시17:25:02 / 화면 통보수신일시17:27:19. 지연 또는 재처리 여부/원인 미확인. 최초 응답은17:25:02 HTTP200/0000.",
  "finalTotals": {
    "allRows": 8,
    "allApproval": 4016,
    "allCancellation": 4016,
    "allNet": 0,
    "qaApproval": 3012,
    "qaCancellation": 3012,
    "qaNet": 0
  },
  "items": [
    {
      "id": 1,
      "name": "MID·계약·가맹점 연결",
      "status": "PASS",
      "actual": "MID 0987654321 / 씨드페이먼츠 / A_주홍석_시드페이먼츠_통보 / 가맹점 BP100681 정상 연결",
      "evidence": [
        "artifacts/logs/01-mid-connection.txt",
        "artifacts/screenshots/01-mid-connection.jpg"
      ]
    },
    {
      "id": 2,
      "name": "신규 승인 응답과 거래 생성",
      "status": "PASS",
      "actual": "상태별 신규 원승인 3건 HTTP200/0000 및 화면 생성 확인. S9는 최초 조회 미반영 후 후속 조회에서 확인",
      "evidence": [
        "artifacts/logs/22-s9-approval-time.txt",
        "artifacts/screenshots/22-s9-approval-time.jpg"
      ]
    },
    {
      "id": 3,
      "name": "승인 정보 매핑",
      "status": "PASS",
      "actual": "승인금액 1004원, 승인번호12345678, 주문번호 ORDER-원승인TID, MID 선행0 및 거래일자 확인",
      "evidence": [
        "artifacts/logs/24-s9-approval-reference.txt",
        "artifacts/screenshots/24-s9-approval-reference.jpg"
      ]
    },
    {
      "id": 4,
      "name": "상태1 전취소 원승인 연결",
      "status": "PASS",
      "actual": "별도 취소TID와 otid 원승인 연결, HTTP200/0000, 원승인 취소 및 -1004원 반영",
      "evidence": [
        "artifacts/logs/08-s1-cancel-original.txt",
        "artifacts/screenshots/08-s1-cancel-original.jpg"
      ]
    },
    {
      "id": 5,
      "name": "상태2 후취소 원승인 연결",
      "status": "PASS",
      "actual": "상태1과 다른 원승인에 연결, HTTP200/0000, 원승인 취소 및 -1004원 반영",
      "evidence": [
        "artifacts/logs/14-s2-cancel-reference.txt",
        "artifacts/screenshots/14-s2-cancel-reference.jpg"
      ]
    },
    {
      "id": 6,
      "name": "상태9 망취소 원승인 연결",
      "status": "PASS",
      "actual": "사용자 재승인 후17:45:08 상태9/netCanFlg1/otid 원승인 연결로 취소. HTTP200/0000, 원승인 취소와 -1004원 반영. 취소 TID는 C-SEED-QA-20261015172502-S9",
      "evidence": [
        "artifacts/http/9-cancel-response.json",
        "artifacts/logs/25-s9-cancel-time-summary.txt",
        "artifacts/logs/26-s9-cancel-values.txt",
        "artifacts/logs/27-s9-cancel-reference.txt"
      ]
    },
    {
      "id": 7,
      "name": "승인·취소 쌍 금액과 최종 순금액0",
      "status": "PASS",
      "actual": "세 쌍 각각 ±1004원 상계. QA 승인3012원/취소3012원/순0원. 기존 한 쌍 포함 전체8건 승인4/취소4, 각4016원/순0원. 새로고침 후 유지",
      "evidence": [
        "artifacts/logs/29-final-persisted-summary.txt",
        "artifacts/logs/30-final-persisted-status.txt",
        "artifacts/screenshots/30-final-persisted-status.jpg"
      ]
    },
    {
      "id": 8,
      "name": "otid 누락 취소 실패와 거래 무변경",
      "status": "PASS",
      "actual": "HTTP200/9999, 목록3건 및 원승인 상태/금액 유지 확인 후 정상 상태1 취소 수행",
      "evidence": [
        "artifacts/logs/06-missing-otid-unchanged.txt",
        "artifacts/screenshots/06-missing-otid-unchanged.jpg"
      ]
    }
  ],
  "issue": 4323,
  "qaIssueId": "4323",
  "sourceIssueId": null,
  "requesterName": "주홍석",
  "method": "logged-in Codex in-app browser + dev notification HTTP requests",
  "testedAt": "2026-10-15 Asia/Seoul",
  "totalChecklistItems": 8,
  "passed": 8,
  "failed": 0,
  "blocked": 0,
  "notRun": 0,
  "overall": "PASS",
  "summary": {
    "status": "PASS",
    "passed": 8,
    "failed": 0,
    "blocked": 0,
    "skipped": 0,
    "manualConfirmed": 0,
    "flaky": 0
  },
  "rows": [
    {
      "title": "[dev][ADMIN] MID·계약·가맹점 연결",
      "role": "ADMIN",
      "page": "MID 관리",
      "checklistItem": "MID·계약·가맹점 연결",
      "action": "로그인된 인앱 관리자 화면과 실제 개발계 통보 요청·응답 확인",
      "expected": "요청한 화면 정보 및 승인·취소 반영이 일치한다.",
      "actual": "MID 0987654321 / 씨드페이먼츠 / A_주홍석_시드페이먼츠_통보 / 가맹점 BP100681 정상 연결",
      "status": "PASS",
      "statusText": "통과",
      "screenshots": [
        "artifacts/screenshots/01-mid-connection.jpg"
      ],
      "logs": [
        "artifacts/logs/01-mid-connection.txt"
      ],
      "traces": [],
      "files": [],
      "error": ""
    },
    {
      "title": "[dev][ADMIN] 신규 승인 응답과 거래 생성",
      "role": "ADMIN",
      "page": "거래내역",
      "checklistItem": "신규 승인 응답과 거래 생성",
      "action": "로그인된 인앱 관리자 화면과 실제 개발계 통보 요청·응답 확인",
      "expected": "요청한 화면 정보 및 승인·취소 반영이 일치한다.",
      "actual": "상태별 신규 원승인 3건 HTTP200/0000 및 화면 생성 확인. S9는 최초 조회 미반영 후 후속 조회에서 확인",
      "status": "PASS",
      "statusText": "통과",
      "screenshots": [
        "artifacts/screenshots/22-s9-approval-time.jpg"
      ],
      "logs": [
        "artifacts/logs/22-s9-approval-time.txt",
        "artifacts/logs/03-s1-approval-identity.txt",
        "artifacts/logs/10-s2-approval-time.txt"
      ],
      "traces": [],
      "files": [],
      "error": ""
    },
    {
      "title": "[dev][ADMIN] 승인 정보 매핑",
      "role": "ADMIN",
      "page": "거래내역",
      "checklistItem": "승인 정보 매핑",
      "action": "로그인된 인앱 관리자 화면과 실제 개발계 통보 요청·응답 확인",
      "expected": "요청한 화면 정보 및 승인·취소 반영이 일치한다.",
      "actual": "승인금액 1004원, 승인번호12345678, 주문번호 ORDER-원승인TID, MID 선행0 및 거래일자 확인",
      "status": "PASS",
      "statusText": "통과",
      "screenshots": [
        "artifacts/screenshots/24-s9-approval-reference.jpg",
        "artifacts/screenshots/23-s9-approval-values.jpg"
      ],
      "logs": [
        "artifacts/logs/24-s9-approval-reference.txt",
        "artifacts/logs/23-s9-approval-values.txt",
        "artifacts/logs/05-s1-approval-tid-order.txt",
        "artifacts/logs/12-s2-approval-reference.txt"
      ],
      "traces": [],
      "files": [],
      "error": ""
    },
    {
      "title": "[dev][ADMIN] 상태1 전취소 원승인 연결",
      "role": "ADMIN",
      "page": "거래내역",
      "checklistItem": "상태1 전취소 원승인 연결",
      "action": "로그인된 인앱 관리자 화면과 실제 개발계 통보 요청·응답 확인",
      "expected": "요청한 화면 정보 및 승인·취소 반영이 일치한다.",
      "actual": "별도 취소TID와 otid 원승인 연결, HTTP200/0000, 원승인 취소 및 -1004원 반영",
      "status": "PASS",
      "statusText": "통과",
      "screenshots": [
        "artifacts/screenshots/08-s1-cancel-original.jpg"
      ],
      "logs": [
        "artifacts/logs/08-s1-cancel-original.txt"
      ],
      "traces": [],
      "files": [],
      "error": ""
    },
    {
      "title": "[dev][ADMIN] 상태2 후취소 원승인 연결",
      "role": "ADMIN",
      "page": "거래내역",
      "checklistItem": "상태2 후취소 원승인 연결",
      "action": "로그인된 인앱 관리자 화면과 실제 개발계 통보 요청·응답 확인",
      "expected": "요청한 화면 정보 및 승인·취소 반영이 일치한다.",
      "actual": "상태1과 다른 원승인에 연결, HTTP200/0000, 원승인 취소 및 -1004원 반영",
      "status": "PASS",
      "statusText": "통과",
      "screenshots": [
        "artifacts/screenshots/14-s2-cancel-reference.jpg"
      ],
      "logs": [
        "artifacts/logs/14-s2-cancel-reference.txt"
      ],
      "traces": [],
      "files": [],
      "error": ""
    },
    {
      "title": "[dev][ADMIN] 상태9 망취소 원승인 연결",
      "role": "ADMIN",
      "page": "거래내역",
      "checklistItem": "상태9 망취소 원승인 연결",
      "action": "로그인된 인앱 관리자 화면과 실제 개발계 통보 요청·응답 확인",
      "expected": "요청한 화면 정보 및 승인·취소 반영이 일치한다.",
      "actual": "사용자 재승인 후17:45:08 상태9/netCanFlg1/otid 원승인 연결로 취소. HTTP200/0000, 원승인 취소와 -1004원 반영. 취소 TID는 C-SEED-QA-20261015172502-S9",
      "status": "PASS",
      "statusText": "통과",
      "screenshots": [],
      "logs": [
        "artifacts/http/9-cancel-response.json",
        "artifacts/logs/25-s9-cancel-time-summary.txt",
        "artifacts/logs/26-s9-cancel-values.txt",
        "artifacts/logs/27-s9-cancel-reference.txt"
      ],
      "traces": [],
      "files": [],
      "error": ""
    },
    {
      "title": "[dev][ADMIN] 승인·취소 쌍 금액과 최종 순금액0",
      "role": "ADMIN",
      "page": "거래내역",
      "checklistItem": "승인·취소 쌍 금액과 최종 순금액0",
      "action": "로그인된 인앱 관리자 화면과 실제 개발계 통보 요청·응답 확인",
      "expected": "요청한 화면 정보 및 승인·취소 반영이 일치한다.",
      "actual": "세 쌍 각각 ±1004원 상계. QA 승인3012원/취소3012원/순0원. 기존 한 쌍 포함 전체8건 승인4/취소4, 각4016원/순0원. 새로고침 후 유지",
      "status": "PASS",
      "statusText": "통과",
      "screenshots": [
        "artifacts/screenshots/30-final-persisted-status.jpg"
      ],
      "logs": [
        "artifacts/logs/29-final-persisted-summary.txt",
        "artifacts/logs/30-final-persisted-status.txt"
      ],
      "traces": [],
      "files": [],
      "error": ""
    },
    {
      "title": "[dev][ADMIN] otid 누락 취소 실패와 거래 무변경",
      "role": "ADMIN",
      "page": "거래내역",
      "checklistItem": "otid 누락 취소 실패와 거래 무변경",
      "action": "로그인된 인앱 관리자 화면과 실제 개발계 통보 요청·응답 확인",
      "expected": "요청한 화면 정보 및 승인·취소 반영이 일치한다.",
      "actual": "HTTP200/9999, 목록3건 및 원승인 상태/금액 유지 확인 후 정상 상태1 취소 수행",
      "status": "PASS",
      "statusText": "통과",
      "screenshots": [
        "artifacts/screenshots/06-missing-otid-unchanged.jpg"
      ],
      "logs": [
        "artifacts/logs/06-missing-otid-unchanged.txt"
      ],
      "traces": [],
      "files": [],
      "error": ""
    }
  ]
}
