{
  "issueId": "3318",
  "environment": "dev",
  "generatedAt": "2026-05-29T15:46:51+09:00",
  "sourceResult": "qa-results redacted from tracked output",
  "timings": {
    "issueId": "3318",
    "environment": "dev",
    "generatedAt": "2026-05-29T06:21:25.709Z",
    "exitStatus": 1,
    "timings": [
      {
        "name": "qa:run",
        "startedAt": "2026-05-29T06:19:12.622Z",
        "detail": {
          "issueId": "3318",
          "environment": "dev",
          "exitStatus": 1
        },
        "finishedAt": "2026-05-29T06:21:25.709Z",
        "durationMs": 133087,
        "status": "failed"
      },
      {
        "name": "prepare-results",
        "startedAt": "2026-05-29T06:19:12.623Z",
        "detail": {},
        "finishedAt": "2026-05-29T06:19:12.634Z",
        "durationMs": 11,
        "status": "ok"
      },
      {
        "name": "auth-refresh",
        "startedAt": "2026-05-29T06:19:12.634Z",
        "detail": {},
        "finishedAt": "2026-05-29T06:19:24.527Z",
        "durationMs": 11893,
        "status": "ok"
      },
      {
        "name": "auth-refresh:admin/dev/ADMIN",
        "startedAt": "2026-05-29T06:19:12.635Z",
        "detail": {
          "application": "admin",
          "role": "ADMIN",
          "businessRole": "ADMIN"
        },
        "finishedAt": "2026-05-29T06:19:16.329Z",
        "durationMs": 3694,
        "status": "ok"
      },
      {
        "name": "auth-refresh:admin/dev/TA",
        "startedAt": "2026-05-29T06:19:12.640Z",
        "detail": {
          "application": "admin",
          "role": "TA",
          "businessRole": "TA"
        },
        "finishedAt": "2026-05-29T06:19:16.364Z",
        "durationMs": 3724,
        "status": "ok"
      },
      {
        "name": "auth-refresh:store/dev/CO_DELIVERY_REQUIRED",
        "startedAt": "2026-05-29T06:19:16.329Z",
        "detail": {
          "application": "store",
          "role": "CO_DELIVERY_REQUIRED",
          "businessRole": "CO"
        },
        "finishedAt": "2026-05-29T06:19:20.350Z",
        "durationMs": 4021,
        "status": "ok"
      },
      {
        "name": "auth-refresh:store/dev/BO_DELIVERY_REQUIRED",
        "startedAt": "2026-05-29T06:19:16.364Z",
        "detail": {
          "application": "store",
          "role": "BO_DELIVERY_REQUIRED",
          "businessRole": "BO"
        },
        "finishedAt": "2026-05-29T06:19:20.335Z",
        "durationMs": 3971,
        "status": "ok"
      },
      {
        "name": "auth-refresh:store/dev/VE_DELIVERY_REQUIRED",
        "startedAt": "2026-05-29T06:19:20.336Z",
        "detail": {
          "application": "store",
          "role": "VE_DELIVERY_REQUIRED",
          "businessRole": "VE"
        },
        "finishedAt": "2026-05-29T06:19:24.527Z",
        "durationMs": 4191,
        "status": "ok"
      },
      {
        "name": "auth-refresh:store/dev/VE_DELIVERY_OPTIONAL",
        "startedAt": "2026-05-29T06:19:20.350Z",
        "detail": {
          "application": "store",
          "role": "VE_DELIVERY_OPTIONAL",
          "businessRole": "VE"
        },
        "finishedAt": "2026-05-29T06:19:23.737Z",
        "durationMs": 3387,
        "status": "ok"
      },
      {
        "name": "playwright",
        "startedAt": "2026-05-29T06:19:24.527Z",
        "detail": {
          "command": "npx playwright test qa/issues/3318/dev",
          "exitStatus": 1
        },
        "finishedAt": "2026-05-29T06:21:25.709Z",
        "durationMs": 121182,
        "status": "failed"
      }
    ]
  },
  "summary": {
    "status": "FAIL",
    "passed": 14,
    "failed": 6,
    "skipped": 0,
    "blocked": 2,
    "flaky": 0,
    "durationMs": 120540
  },
  "rows": [
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 앱 푸시 / 스토어 환경에서 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크결제 완료 후, 앱 푸시 클릭 시 상품 배송 이미지 등록 화면으로 이동하는지 확인",
      "status": "FAIL",
      "statusText": "실패",
      "durationMs": 11,
      "evidence": [
        "artifacts/logs/01-app-push-required-link-evidence.md",
        "artifacts/logs/02-error-context.md",
        "artifacts/traces/01-trace.zip"
      ],
      "screenshots": [],
      "traces": [
        "artifacts/traces/01-trace.zip"
      ],
      "logs": [
        "artifacts/logs/01-app-push-required-link-evidence.md",
        "artifacts/logs/02-error-context.md"
      ],
      "files": [],
      "role": "VE",
      "page": "앱 푸시",
      "checklistItem": "스토어 환경에서 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크결제 완료 후, 앱 푸시 클릭 시 상품 배송 이미지 등록 화면으로 이동하는지 확인",
      "action": "VE 계정으로 거래내역, 수기결제내역, 거래로그에서 링크결제와 스토어-수기결제 표시 및 필터 결과를 확인",
      "expected": "신규 링크결제는 링크결제로, 기존 스토어 수기결제는 스토어-수기결제로 구분되어 보이고 필터 결과가 유지되어야 합니다.",
      "actual": "기대한 동작과 달랐습니다: Error: 푸시는 도착했지만, 푸시 탭 후 PIN 인증과 로그인/2FA를 거친 뒤 최종 화면이 홈 화면으로 이동했습니다. 상품 배송 이미지 등록 화면으로 이어지지 않았습니다.  expect(received).toBe(expected) // Object.is equality",
      "error": "Error: 푸시는 도착했지만, 푸시 탭 후 PIN 인증과 로그인/2FA를 거친 뒤 최종 화면이 홈 화면으로 이동했습니다. 상품 배송 이미지 등록 화면으로 이어지지 않았습니다.  expect(received).toBe(expected) // Object.is equality",
      "failureCategory": "auth",
      "failureCategoryText": "로그인 확인 필요",
      "reproduction": {
        "required": true,
        "reason": "QA 시작 전 로그인 세션 갱신이 완료되지 않아 본 시나리오를 시작하지 못했습니다.",
        "debugCommand": "npm run qa:debug -- --issue \"3318\" --env \"dev\" --role \"VE\" --case \"스토어 환경에서 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크결제 완료 후, 앱 푸시 클릭 시 상품 배송 이미지 등록 화면으로 이동하는지 확인\"",
        "notifyMessage": "[QA 확인 요청] VE / 앱 푸시 / 스토어 환경에서 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크결제 완료 후, 앱 푸시 클릭 시 상품 배송 이미지 등록 화면으로 이동하는지 확인: 로그인 확인 필요 상태입니다. npm run qa:debug -- --issue \"3318\" --env \"dev\" --role \"VE\" --case \"스토어 환경에서 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크결제 완료 후, 앱 푸시 클릭 시 상품 배송 이미지 등록 화면으로 이동하는지 확인\" 로 동일 계정과 항목을 다시 열어 확인하세요.",
        "manualSteps": [
          "작업자가 위 명령을 실행하면 대상 계정의 로그인 세션을 새로 만든 뒤 브라우저가 열립니다.",
          "브라우저에서 자동화가 멈춘 화면, 현재 URL, 화면 문구, 다운로드 알림 또는 문서보관함 상태를 확인합니다.",
          "확인한 화면과 필요한 조치 내용을 Redmine/GitHub QA 이슈에 남깁니다."
        ]
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 앱 푸시 / 스토어 환경에서 상품 배송 이미지 등록 필수 설정이 꺼진 가맹점의 링크결제 완료 후, 앱 푸시 클릭 시 기존 거래내역 화면으로 이동하는지 확인",
      "status": "BLOCKED",
      "statusText": "확인 불가",
      "durationMs": 1,
      "evidence": [
        "artifacts/logs/03-error-context.md",
        "artifacts/traces/02-trace.zip"
      ],
      "screenshots": [],
      "traces": [
        "artifacts/traces/02-trace.zip"
      ],
      "logs": [
        "artifacts/logs/03-error-context.md"
      ],
      "files": [],
      "role": "VE",
      "page": "앱 푸시",
      "checklistItem": "스토어 환경에서 상품 배송 이미지 등록 필수 설정이 꺼진 가맹점의 링크결제 완료 후, 앱 푸시 클릭 시 기존 거래내역 화면으로 이동하는지 확인",
      "action": "VE 계정으로 거래내역, 수기결제내역, 거래로그에서 링크결제와 스토어-수기결제 표시 및 필터 결과를 확인",
      "expected": "신규 링크결제는 링크결제로, 기존 스토어 수기결제는 스토어-수기결제로 구분되어 보이고 필터 결과가 유지되어야 합니다.",
      "actual": "확인을 끝내지 못했습니다: Error: BLOCKED: 필수 OFF 가맹점의 앱 푸시 실기기 증거가 없어 기존 거래내역 이동 결과를 확인할 수 없습니다.",
      "error": "Error: BLOCKED: 필수 OFF 가맹점의 앱 푸시 실기기 증거가 없어 기존 거래내역 이동 결과를 확인할 수 없습니다.",
      "failureCategory": "blocked",
      "failureCategoryText": "확인 조건 부족",
      "reproduction": {
        "required": false,
        "reason": "확인 조건이 부족해 본 시나리오를 끝까지 실행하지 못했습니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 앱 푸시 / 스토어 환경에서 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 수기결제 완료 후, 앱 푸시 클릭 시 기존 거래내역 화면으로 이동하는지 확인",
      "status": "BLOCKED",
      "statusText": "확인 불가",
      "durationMs": 1,
      "evidence": [
        "artifacts/logs/04-error-context.md",
        "artifacts/traces/03-trace.zip"
      ],
      "screenshots": [],
      "traces": [
        "artifacts/traces/03-trace.zip"
      ],
      "logs": [
        "artifacts/logs/04-error-context.md"
      ],
      "files": [],
      "role": "VE",
      "page": "앱 푸시",
      "checklistItem": "스토어 환경에서 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 수기결제 완료 후, 앱 푸시 클릭 시 기존 거래내역 화면으로 이동하는지 확인",
      "action": "VE 계정으로 스토어 수기결제를 완료하고 응답의 거래 ID와 완료 화면을 확인",
      "expected": "수기결제 성공 후 결제 완료 화면과 후속 동작에 사용할 거래 ID가 확인되어야 합니다.",
      "actual": "확인을 끝내지 못했습니다: Error: BLOCKED: 필수 ON 가맹점의 수기결제 앱 푸시 실기기 증거가 없어 기존 거래내역 이동 결과를 확인할 수 없습니다.",
      "error": "Error: BLOCKED: 필수 ON 가맹점의 수기결제 앱 푸시 실기기 증거가 없어 기존 거래내역 이동 결과를 확인할 수 없습니다.",
      "failureCategory": "blocked",
      "failureCategoryText": "확인 조건 부족",
      "reproduction": {
        "required": false,
        "reason": "확인 조건이 부족해 본 시나리오를 끝까지 실행하지 못했습니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 스토어 거래내역 / 스토어 거래내역에서 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크결제 거래에만 배송 이미지 버튼이 보이는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 4035,
      "evidence": [
        "artifacts/logs/05-스토어-거래내역-VE-required-link-list.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/05-스토어-거래내역-VE-required-link-list.md"
      ],
      "files": [],
      "role": "VE",
      "page": "스토어 거래내역",
      "checklistItem": "스토어 거래내역에서 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크결제 거래에만 배송 이미지 버튼이 보이는지 확인",
      "action": "VE 계정으로 거래내역, 수기결제내역, 거래로그에서 링크결제와 스토어-수기결제 표시 및 필터 결과를 확인",
      "expected": "신규 링크결제는 링크결제로, 기존 스토어 수기결제는 스토어-수기결제로 구분되어 보이고 필터 결과가 유지되어야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 스토어 거래내역 / 스토어 거래내역에서 상품 배송 이미지 등록 필수 설정이 꺼진 가맹점의 링크결제 거래에는 배송 이미지 버튼이 보이지 않는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 3761,
      "evidence": [
        "artifacts/logs/06-스토어-거래내역-VE-optional-link-list.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/06-스토어-거래내역-VE-optional-link-list.md"
      ],
      "files": [],
      "role": "VE",
      "page": "스토어 거래내역",
      "checklistItem": "스토어 거래내역에서 상품 배송 이미지 등록 필수 설정이 꺼진 가맹점의 링크결제 거래에는 배송 이미지 버튼이 보이지 않는지 확인",
      "action": "VE 계정으로 거래내역, 수기결제내역, 거래로그에서 링크결제와 스토어-수기결제 표시 및 필터 결과를 확인",
      "expected": "신규 링크결제는 링크결제로, 기존 스토어 수기결제는 스토어-수기결제로 구분되어 보이고 필터 결과가 유지되어야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 스토어 거래내역 / 스토어 거래내역에서 상품 배송 이미지 등록 필수 설정이 켜져 있어도 수기결제 거래에는 배송 이미지 버튼이 보이지 않는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 3611,
      "evidence": [
        "artifacts/logs/07-스토어-거래내역-VE-required-manual-list.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/07-스토어-거래내역-VE-required-manual-list.md"
      ],
      "files": [],
      "role": "VE",
      "page": "스토어 거래내역",
      "checklistItem": "스토어 거래내역에서 상품 배송 이미지 등록 필수 설정이 켜져 있어도 수기결제 거래에는 배송 이미지 버튼이 보이지 않는지 확인",
      "action": "VE 계정으로 스토어 수기결제를 완료하고 응답의 거래 ID와 완료 화면을 확인",
      "expected": "수기결제 성공 후 결제 완료 화면과 후속 동작에 사용할 거래 ID가 확인되어야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 스토어 거래내역 / 스토어 거래내역에서 취소 상태 거래에는 배송 이미지 업로드 버튼과 보기 버튼이 보이지 않는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 3556,
      "evidence": [
        "artifacts/logs/08-스토어-거래내역-VE-required-cancel-list.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/08-스토어-거래내역-VE-required-cancel-list.md"
      ],
      "files": [],
      "role": "VE",
      "page": "스토어 거래내역",
      "checklistItem": "스토어 거래내역에서 취소 상태 거래에는 배송 이미지 업로드 버튼과 보기 버튼이 보이지 않는지 확인",
      "action": "VE 계정으로 스토어 거래내역 항목을 확인",
      "expected": "VE 계정에서 스토어 거래내역 확인 결과가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 스토어 거래내역 / 상품 배송 이미지 등록 필수 설정이 켜진 가맹점과 연결된 법인 계정으로 스토어 거래내역 조회 시, 링크결제 거래에 배송 이미지 등록 버튼이 보이지 않는지 확인",
      "status": "FAIL",
      "statusText": "실패",
      "durationMs": 3832,
      "evidence": [
        "artifacts/logs/09-스토어-거래내역-CO-co-required-list.md",
        "artifacts/screenshots/01-screenshot.png",
        "artifacts/logs/10-error-context.md",
        "artifacts/traces/04-trace.zip"
      ],
      "screenshots": [
        "artifacts/screenshots/01-screenshot.png"
      ],
      "traces": [
        "artifacts/traces/04-trace.zip"
      ],
      "logs": [
        "artifacts/logs/09-스토어-거래내역-CO-co-required-list.md",
        "artifacts/logs/10-error-context.md"
      ],
      "files": [],
      "role": "VE",
      "page": "스토어 거래내역",
      "checklistItem": "상품 배송 이미지 등록 필수 설정이 켜진 가맹점과 연결된 법인 계정으로 스토어 거래내역 조회 시, 링크결제 거래에 배송 이미지 등록 버튼이 보이지 않는지 확인",
      "action": "VE 계정으로 거래내역, 수기결제내역, 거래로그에서 링크결제와 스토어-수기결제 표시 및 필터 결과를 확인",
      "expected": "신규 링크결제는 링크결제로, 기존 스토어 수기결제는 스토어-수기결제로 구분되어 보이고 필터 결과가 유지되어야 합니다.",
      "actual": "기대한 동작과 달랐습니다: Error: 법인 계정에는 배송 이미지 등록 버튼이 보이면 안 됩니다.  expect(received).toBe(expected) // Object.is equality",
      "error": "Error: 법인 계정에는 배송 이미지 등록 버튼이 보이면 안 됩니다.  expect(received).toBe(expected) // Object.is equality",
      "failureCategory": "assertion",
      "failureCategoryText": "기대 결과와 다름",
      "reproduction": {
        "required": true,
        "reason": "화면에서 확인한 값이 체크리스트의 기대 결과와 달랐습니다.",
        "debugCommand": "npm run qa:debug -- --issue \"3318\" --env \"dev\" --role \"VE\" --case \"상품 배송 이미지 등록 필수 설정이 켜진 가맹점과 연결된 법인 계정으로 스토어 거래내역 조회 시, 링크결제 거래에 배송 이미지 등록 버튼이 보이지 않는지 확인\"",
        "notifyMessage": "[QA 확인 요청] VE / 스토어 거래내역 / 상품 배송 이미지 등록 필수 설정이 켜진 가맹점과 연결된 법인 계정으로 스토어 거래내역 조회 시, 링크결제 거래에 배송 이미지 등록 버튼이 보이지 않는지 확인: 기대 결과와 다름 상태입니다. npm run qa:debug -- --issue \"3318\" --env \"dev\" --role \"VE\" --case \"상품 배송 이미지 등록 필수 설정이 켜진 가맹점과 연결된 법인 계정으로 스토어 거래내역 조회 시, 링크결제 거래에 배송 이미지 등록 버튼이 보이지 않는지 확인\" 로 동일 계정과 항목을 다시 열어 확인하세요.",
        "manualSteps": [
          "작업자가 위 명령을 실행하면 대상 계정의 로그인 세션을 새로 만든 뒤 브라우저가 열립니다.",
          "브라우저에서 자동화가 멈춘 화면, 현재 URL, 화면 문구, 다운로드 알림 또는 문서보관함 상태를 확인합니다.",
          "확인한 화면과 필요한 조치 내용을 Redmine/GitHub QA 이슈에 남깁니다."
        ]
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 스토어 거래내역 / 상품 배송 이미지 등록 필수 설정이 켜진 가맹점과 연결된 영업점 계정으로 스토어 거래내역 조회 시, 링크결제 거래에 배송 이미지 등록 버튼이 보이지 않는지 확인",
      "status": "FAIL",
      "statusText": "실패",
      "durationMs": 3662,
      "evidence": [
        "artifacts/logs/11-스토어-거래내역-BO-bo-required-list.md",
        "artifacts/screenshots/02-screenshot.png",
        "artifacts/logs/12-error-context.md",
        "artifacts/traces/05-trace.zip"
      ],
      "screenshots": [
        "artifacts/screenshots/02-screenshot.png"
      ],
      "traces": [
        "artifacts/traces/05-trace.zip"
      ],
      "logs": [
        "artifacts/logs/11-스토어-거래내역-BO-bo-required-list.md",
        "artifacts/logs/12-error-context.md"
      ],
      "files": [],
      "role": "VE",
      "page": "스토어 거래내역",
      "checklistItem": "상품 배송 이미지 등록 필수 설정이 켜진 가맹점과 연결된 영업점 계정으로 스토어 거래내역 조회 시, 링크결제 거래에 배송 이미지 등록 버튼이 보이지 않는지 확인",
      "action": "VE 계정으로 거래내역, 수기결제내역, 거래로그에서 링크결제와 스토어-수기결제 표시 및 필터 결과를 확인",
      "expected": "신규 링크결제는 링크결제로, 기존 스토어 수기결제는 스토어-수기결제로 구분되어 보이고 필터 결과가 유지되어야 합니다.",
      "actual": "기대한 동작과 달랐습니다: Error: 영업점 계정에는 배송 이미지 등록 버튼이 보이면 안 됩니다.  expect(received).toBe(expected) // Object.is equality",
      "error": "Error: 영업점 계정에는 배송 이미지 등록 버튼이 보이면 안 됩니다.  expect(received).toBe(expected) // Object.is equality",
      "failureCategory": "assertion",
      "failureCategoryText": "기대 결과와 다름",
      "reproduction": {
        "required": true,
        "reason": "화면에서 확인한 값이 체크리스트의 기대 결과와 달랐습니다.",
        "debugCommand": "npm run qa:debug -- --issue \"3318\" --env \"dev\" --role \"VE\" --case \"상품 배송 이미지 등록 필수 설정이 켜진 가맹점과 연결된 영업점 계정으로 스토어 거래내역 조회 시, 링크결제 거래에 배송 이미지 등록 버튼이 보이지 않는지 확인\"",
        "notifyMessage": "[QA 확인 요청] VE / 스토어 거래내역 / 상품 배송 이미지 등록 필수 설정이 켜진 가맹점과 연결된 영업점 계정으로 스토어 거래내역 조회 시, 링크결제 거래에 배송 이미지 등록 버튼이 보이지 않는지 확인: 기대 결과와 다름 상태입니다. npm run qa:debug -- --issue \"3318\" --env \"dev\" --role \"VE\" --case \"상품 배송 이미지 등록 필수 설정이 켜진 가맹점과 연결된 영업점 계정으로 스토어 거래내역 조회 시, 링크결제 거래에 배송 이미지 등록 버튼이 보이지 않는지 확인\" 로 동일 계정과 항목을 다시 열어 확인하세요.",
        "manualSteps": [
          "작업자가 위 명령을 실행하면 대상 계정의 로그인 세션을 새로 만든 뒤 브라우저가 열립니다.",
          "브라우저에서 자동화가 멈춘 화면, 현재 URL, 화면 문구, 다운로드 알림 또는 문서보관함 상태를 확인합니다.",
          "확인한 화면과 필요한 조치 내용을 Redmine/GitHub QA 이슈에 남깁니다."
        ]
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 스토어 거래내역 / 상품 배송 이미지 등록 필수 설정이 켜진 가맹점 계정에서만 스토어 링크결제 거래의 배송 이미지 등록 버튼이 보이고, 이미지 등록/삭제가 가능한지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 3693,
      "evidence": [
        "artifacts/logs/13-스토어-거래내역-VE-required-only-register.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/13-스토어-거래내역-VE-required-only-register.md"
      ],
      "files": [],
      "role": "VE",
      "page": "스토어 거래내역",
      "checklistItem": "상품 배송 이미지 등록 필수 설정이 켜진 가맹점 계정에서만 스토어 링크결제 거래의 배송 이미지 등록 버튼이 보이고, 이미지 등록/삭제가 가능한지 확인",
      "action": "VE 계정으로 정책을 생성하고 삭제한 뒤 목록 반영 여부를 확인",
      "expected": "TA 계정에서 정책 생성과 삭제가 성공하고 목록에 즉시 반영되어야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 스토어 거래내역 / 스토어 거래내역에서 미등록/등록완료 상태가 구분되는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 3550,
      "evidence": [
        "artifacts/logs/14-스토어-거래내역-VE-delivery-status.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/14-스토어-거래내역-VE-delivery-status.md"
      ],
      "files": [],
      "role": "VE",
      "page": "스토어 거래내역",
      "checklistItem": "스토어 거래내역에서 미등록/등록완료 상태가 구분되는지 확인",
      "action": "VE 계정으로 스토어 거래내역 항목을 확인",
      "expected": "VE 계정에서 스토어 거래내역 확인 결과가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 상품 배송 이미지 등록 / 가맹테스트테스트 계정으로 스토어 상품 배송 이미지 등록 화면에 주문날짜, 주문정보, 상품정보, 기존 이미지가 정상 표시되는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 3684,
      "evidence": [
        "artifacts/logs/15-상품-배송-이미지-등록-VE-delivery-page-12.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/15-상품-배송-이미지-등록-VE-delivery-page-12.md"
      ],
      "files": [],
      "role": "VE",
      "page": "상품 배송 이미지 등록",
      "checklistItem": "가맹테스트테스트 계정으로 스토어 상품 배송 이미지 등록 화면에 주문날짜, 주문정보, 상품정보, 기존 이미지가 정상 표시되는지 확인",
      "action": "VE 계정으로 PG MID 관리, 등록, 수정 화면에서 요청 체크리스트의 화면 노출과 저장 동작을 확인",
      "expected": "PG MID의 상품정보 노출, 필수 입력, 저장/수정 유지 동작이 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 상품 배송 이미지 등록 / 가맹테스트테스트 계정으로 스토어 환경에서 이미지 1장 등록 시 완료 상태가 되는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 3815,
      "evidence": [
        "artifacts/logs/16-상품-배송-이미지-등록-VE-delivery-page-13.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/16-상품-배송-이미지-등록-VE-delivery-page-13.md"
      ],
      "files": [],
      "role": "VE",
      "page": "상품 배송 이미지 등록",
      "checklistItem": "가맹테스트테스트 계정으로 스토어 환경에서 이미지 1장 등록 시 완료 상태가 되는지 확인",
      "action": "VE 계정으로 상품 배송 이미지 등록 항목을 확인",
      "expected": "VE 계정에서 상품 배송 이미지 등록 확인 결과가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 상품 배송 이미지 등록 / 가맹테스트테스트 계정으로 스토어 환경에서 이미지 최대 3장까지 등록 가능한지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 3586,
      "evidence": [
        "artifacts/logs/17-상품-배송-이미지-등록-VE-delivery-page-14.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/17-상품-배송-이미지-등록-VE-delivery-page-14.md"
      ],
      "files": [],
      "role": "VE",
      "page": "상품 배송 이미지 등록",
      "checklistItem": "가맹테스트테스트 계정으로 스토어 환경에서 이미지 최대 3장까지 등록 가능한지 확인",
      "action": "VE 계정으로 상품 배송 이미지 등록 항목을 확인",
      "expected": "VE 계정에서 상품 배송 이미지 등록 확인 결과가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 상품 배송 이미지 등록 / 가맹테스트테스트 계정으로 스토어 환경에서 4장 이상 등록 시 막히는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 3514,
      "evidence": [
        "artifacts/logs/18-상품-배송-이미지-등록-VE-delivery-page-15.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/18-상품-배송-이미지-등록-VE-delivery-page-15.md"
      ],
      "files": [],
      "role": "VE",
      "page": "상품 배송 이미지 등록",
      "checklistItem": "가맹테스트테스트 계정으로 스토어 환경에서 4장 이상 등록 시 막히는지 확인",
      "action": "VE 계정으로 상품 배송 이미지 등록 항목을 확인",
      "expected": "VE 계정에서 상품 배송 이미지 등록 확인 결과가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 상품 배송 이미지 등록 / 가맹테스트테스트 계정으로 스토어 환경에서 나중에 하기를 해도 미등록 상태가 유지되고, 스토어 거래내역에서 다시 등록 진입 가능한지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 3539,
      "evidence": [
        "artifacts/logs/19-상품-배송-이미지-등록-VE-delivery-page-16.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/19-상품-배송-이미지-등록-VE-delivery-page-16.md"
      ],
      "files": [],
      "role": "VE",
      "page": "상품 배송 이미지 등록",
      "checklistItem": "가맹테스트테스트 계정으로 스토어 환경에서 나중에 하기를 해도 미등록 상태가 유지되고, 스토어 거래내역에서 다시 등록 진입 가능한지 확인",
      "action": "VE 계정으로 상품 배송 이미지 등록 항목을 확인",
      "expected": "VE 계정에서 상품 배송 이미지 등록 확인 결과가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 상품 배송 이미지 등록 / 가맹테스트테스트 계정으로 스토어 환경에서 등록된 이미지를 삭제 후 다시 등록 가능한지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 3659,
      "evidence": [
        "artifacts/logs/20-상품-배송-이미지-등록-VE-delivery-page-17.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/20-상품-배송-이미지-등록-VE-delivery-page-17.md"
      ],
      "files": [],
      "role": "VE",
      "page": "상품 배송 이미지 등록",
      "checklistItem": "가맹테스트테스트 계정으로 스토어 환경에서 등록된 이미지를 삭제 후 다시 등록 가능한지 확인",
      "action": "VE 계정으로 정책을 생성하고 삭제한 뒤 목록 반영 여부를 확인",
      "expected": "TA 계정에서 정책 생성과 삭제가 성공하고 목록에 즉시 반영되어야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 상품 배송 이미지 등록 / 가맹테스트테스트 계정으로 스토어 환경에서 마지막 이미지를 삭제하면 다시 미등록 상태로 보이는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 3756,
      "evidence": [
        "artifacts/logs/21-상품-배송-이미지-등록-VE-delivery-page-18.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/21-상품-배송-이미지-등록-VE-delivery-page-18.md"
      ],
      "files": [],
      "role": "VE",
      "page": "상품 배송 이미지 등록",
      "checklistItem": "가맹테스트테스트 계정으로 스토어 환경에서 마지막 이미지를 삭제하면 다시 미등록 상태로 보이는지 확인",
      "action": "VE 계정으로 정책을 생성하고 삭제한 뒤 목록 반영 여부를 확인",
      "expected": "TA 계정에서 정책 생성과 삭제가 성공하고 목록에 즉시 반영되어야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [VE] role / 상품 배송 이미지 등록 / 스토어 환경에서 해당 거래의 부서 사용자만 이미지 조회/등록/삭제 가능한지 확인",
      "status": "FAIL",
      "statusText": "실패",
      "durationMs": 4549,
      "evidence": [
        "artifacts/logs/22-스토어-거래내역-VE-department-user-ve.md",
        "artifacts/logs/23-스토어-거래내역-CO-department-user-co.md",
        "artifacts/logs/24-스토어-거래내역-BO-department-user-bo.md",
        "artifacts/screenshots/03-screenshot.png",
        "artifacts/screenshots/04-screenshot.png",
        "artifacts/screenshots/05-screenshot.png",
        "artifacts/logs/25-error-context.md",
        "artifacts/traces/06-trace.zip"
      ],
      "screenshots": [
        "artifacts/screenshots/03-screenshot.png",
        "artifacts/screenshots/04-screenshot.png",
        "artifacts/screenshots/05-screenshot.png"
      ],
      "traces": [
        "artifacts/traces/06-trace.zip"
      ],
      "logs": [
        "artifacts/logs/22-스토어-거래내역-VE-department-user-ve.md",
        "artifacts/logs/23-스토어-거래내역-CO-department-user-co.md",
        "artifacts/logs/24-스토어-거래내역-BO-department-user-bo.md",
        "artifacts/logs/25-error-context.md"
      ],
      "files": [],
      "role": "VE",
      "page": "상품 배송 이미지 등록",
      "checklistItem": "스토어 환경에서 해당 거래의 부서 사용자만 이미지 조회/등록/삭제 가능한지 확인",
      "action": "VE 계정으로 정책을 생성하고 삭제한 뒤 목록 반영 여부를 확인",
      "expected": "TA 계정에서 정책 생성과 삭제가 성공하고 목록에 즉시 반영되어야 합니다.",
      "actual": "기대한 동작과 달랐습니다: Error: 법인 계정에는 이미지 등록/삭제 버튼이 보이면 안 됩니다.  expect(received).toBe(expected) // Object.is equality",
      "error": "Error: 법인 계정에는 이미지 등록/삭제 버튼이 보이면 안 됩니다.  expect(received).toBe(expected) // Object.is equality",
      "failureCategory": "assertion",
      "failureCategoryText": "기대 결과와 다름",
      "reproduction": {
        "required": true,
        "reason": "화면에서 확인한 값이 체크리스트의 기대 결과와 달랐습니다.",
        "debugCommand": "npm run qa:debug -- --issue \"3318\" --env \"dev\" --role \"VE\" --case \"스토어 환경에서 해당 거래의 부서 사용자만 이미지 조회/등록/삭제 가능한지 확인\"",
        "notifyMessage": "[QA 확인 요청] VE / 상품 배송 이미지 등록 / 스토어 환경에서 해당 거래의 부서 사용자만 이미지 조회/등록/삭제 가능한지 확인: 기대 결과와 다름 상태입니다. npm run qa:debug -- --issue \"3318\" --env \"dev\" --role \"VE\" --case \"스토어 환경에서 해당 거래의 부서 사용자만 이미지 조회/등록/삭제 가능한지 확인\" 로 동일 계정과 항목을 다시 열어 확인하세요.",
        "manualSteps": [
          "작업자가 위 명령을 실행하면 대상 계정의 로그인 세션을 새로 만든 뒤 브라우저가 열립니다.",
          "브라우저에서 자동화가 멈춘 화면, 현재 URL, 화면 문구, 다운로드 알림 또는 문서보관함 상태를 확인합니다.",
          "확인한 화면과 필요한 조치 내용을 Redmine/GitHub QA 이슈에 남깁니다."
        ]
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [ADMIN] role / 어드민 거래내역 / 어드민/비스킷링크 거래내역에서 접근 가능한 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크결제 거래는 배송 이미지 확인이 가능한지 확인",
      "status": "FAIL",
      "statusText": "실패",
      "durationMs": 18908,
      "evidence": [
        "artifacts/logs/26-어드민-거래내역-ADMIN-admin-required-link-image.md",
        "artifacts/screenshots/06-screenshot.png",
        "artifacts/logs/27-error-context.md",
        "artifacts/traces/07-trace.zip"
      ],
      "screenshots": [
        "artifacts/screenshots/06-screenshot.png"
      ],
      "traces": [
        "artifacts/traces/07-trace.zip"
      ],
      "logs": [
        "artifacts/logs/26-어드민-거래내역-ADMIN-admin-required-link-image.md",
        "artifacts/logs/27-error-context.md"
      ],
      "files": [],
      "role": "ADMIN",
      "page": "어드민 거래내역",
      "checklistItem": "어드민/비스킷링크 거래내역에서 접근 가능한 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크결제 거래는 배송 이미지 확인이 가능한지 확인",
      "action": "ADMIN 계정으로 거래내역, 수기결제내역, 거래로그에서 링크결제와 스토어-수기결제 표시 및 필터 결과를 확인",
      "expected": "신규 링크결제는 링크결제로, 기존 스토어 수기결제는 스토어-수기결제로 구분되어 보이고 필터 결과가 유지되어야 합니다.",
      "actual": "기대한 동작과 달랐습니다: Error: 어드민 거래내역에서 필수 ON 링크결제 거래의 배송 이미지 확인이 가능해야 합니다.  expect(received).toBe(expected) // Object.is equality",
      "error": "Error: 어드민 거래내역에서 필수 ON 링크결제 거래의 배송 이미지 확인이 가능해야 합니다.  expect(received).toBe(expected) // Object.is equality",
      "failureCategory": "assertion",
      "failureCategoryText": "기대 결과와 다름",
      "reproduction": {
        "required": true,
        "reason": "화면에서 확인한 값이 체크리스트의 기대 결과와 달랐습니다.",
        "debugCommand": "npm run qa:debug -- --issue \"3318\" --env \"dev\" --role \"ADMIN\" --case \"어드민/비스킷링크 거래내역에서 접근 가능한 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크결제 거래는 배송 이미지 확인이 가능한지 확인\"",
        "notifyMessage": "[QA 확인 요청] ADMIN / 어드민 거래내역 / 어드민/비스킷링크 거래내역에서 접근 가능한 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크결제 거래는 배송 이미지 확인이 가능한지 확인: 기대 결과와 다름 상태입니다. npm run qa:debug -- --issue \"3318\" --env \"dev\" --role \"ADMIN\" --case \"어드민/비스킷링크 거래내역에서 접근 가능한 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크결제 거래는 배송 이미지 확인이 가능한지 확인\" 로 동일 계정과 항목을 다시 열어 확인하세요.",
        "manualSteps": [
          "작업자가 위 명령을 실행하면 대상 계정의 로그인 세션을 새로 만든 뒤 브라우저가 열립니다.",
          "브라우저에서 자동화가 멈춘 화면, 현재 URL, 화면 문구, 다운로드 알림 또는 문서보관함 상태를 확인합니다.",
          "확인한 화면과 필요한 조치 내용을 Redmine/GitHub QA 이슈에 남깁니다."
        ]
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [ADMIN] role / 어드민 거래내역 / 어드민/비스킷링크 거래내역에서 해당 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크거래에 등록된 배송 이미지가 없으면 이미지가 없습니다로 표시되는지 확인",
      "status": "FAIL",
      "statusText": "실패",
      "durationMs": 18918,
      "evidence": [
        "artifacts/logs/28-어드민-거래내역-ADMIN-admin-required-link-empty-image.md",
        "artifacts/screenshots/07-screenshot.png",
        "artifacts/logs/29-error-context.md",
        "artifacts/traces/08-trace.zip"
      ],
      "screenshots": [
        "artifacts/screenshots/07-screenshot.png"
      ],
      "traces": [
        "artifacts/traces/08-trace.zip"
      ],
      "logs": [
        "artifacts/logs/28-어드민-거래내역-ADMIN-admin-required-link-empty-image.md",
        "artifacts/logs/29-error-context.md"
      ],
      "files": [],
      "role": "ADMIN",
      "page": "어드민 거래내역",
      "checklistItem": "어드민/비스킷링크 거래내역에서 해당 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크거래에 등록된 배송 이미지가 없으면 이미지가 없습니다로 표시되는지 확인",
      "action": "ADMIN 계정으로 어드민 거래내역 항목을 확인",
      "expected": "ADMIN 계정에서 어드민 거래내역 확인 결과가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 달랐습니다: Error: 등록된 배송 이미지가 없으면 이미지가 없습니다 안내 또는 이미지 확인 진입이 보여야 합니다.  expect(received).toBe(expected) // Object.is equality",
      "error": "Error: 등록된 배송 이미지가 없으면 이미지가 없습니다 안내 또는 이미지 확인 진입이 보여야 합니다.  expect(received).toBe(expected) // Object.is equality",
      "failureCategory": "assertion",
      "failureCategoryText": "기대 결과와 다름",
      "reproduction": {
        "required": true,
        "reason": "화면에서 확인한 값이 체크리스트의 기대 결과와 달랐습니다.",
        "debugCommand": "npm run qa:debug -- --issue \"3318\" --env \"dev\" --role \"ADMIN\" --case \"어드민/비스킷링크 거래내역에서 해당 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크거래에 등록된 배송 이미지가 없으면 이미지가 없습니다로 표시되는지 확인\"",
        "notifyMessage": "[QA 확인 요청] ADMIN / 어드민 거래내역 / 어드민/비스킷링크 거래내역에서 해당 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크거래에 등록된 배송 이미지가 없으면 이미지가 없습니다로 표시되는지 확인: 기대 결과와 다름 상태입니다. npm run qa:debug -- --issue \"3318\" --env \"dev\" --role \"ADMIN\" --case \"어드민/비스킷링크 거래내역에서 해당 상품 배송 이미지 등록 필수 설정이 켜진 가맹점의 링크거래에 등록된 배송 이미지가 없으면 이미지가 없습니다로 표시되는지 확인\" 로 동일 계정과 항목을 다시 열어 확인하세요.",
        "manualSteps": [
          "작업자가 위 명령을 실행하면 대상 계정의 로그인 세션을 새로 만든 뒤 브라우저가 열립니다.",
          "브라우저에서 자동화가 멈춘 화면, 현재 URL, 화면 문구, 다운로드 알림 또는 문서보관함 상태를 확인합니다.",
          "확인한 화면과 필요한 조치 내용을 Redmine/GitHub QA 이슈에 남깁니다."
        ]
      }
    },
    {
      "title": "3318/dev/delivery-image-push.spec.ts / [3318][dev] 상품 배송 이미지 등록 필수 설정 링크결제/푸시 QA / [ADMIN] role / 어드민 거래내역 / 어드민/비스킷링크 거래내역에서 접근 가능한 상품 배송 이미지 등록 필수 설정이 꺼진 가맹점의 링크결제 거래에는 이미지 조회 버튼이 보이지 않는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 18922,
      "evidence": [
        "artifacts/logs/30-어드민-거래내역-ADMIN-admin-optional-link-no-image.md"
      ],
      "screenshots": [],
      "traces": [],
      "logs": [
        "artifacts/logs/30-어드민-거래내역-ADMIN-admin-optional-link-no-image.md"
      ],
      "files": [],
      "role": "ADMIN",
      "page": "어드민 거래내역",
      "checklistItem": "어드민/비스킷링크 거래내역에서 접근 가능한 상품 배송 이미지 등록 필수 설정이 꺼진 가맹점의 링크결제 거래에는 이미지 조회 버튼이 보이지 않는지 확인",
      "action": "ADMIN 계정으로 거래내역, 수기결제내역, 거래로그에서 링크결제와 스토어-수기결제 표시 및 필터 결과를 확인",
      "expected": "신규 링크결제는 링크결제로, 기존 스토어 수기결제는 스토어-수기결제로 구분되어 보이고 필터 결과가 유지되어야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    }
  ]
}
