{
  "issueId": "3529",
  "environment": "dev",
  "generatedAt": "2026-06-12T21:11:24+09:00",
  "sourceResult": "qa-results redacted from tracked output",
  "timings": {
    "issueId": "3529",
    "environment": "dev",
    "generatedAt": "2026-06-12T12:08:17.265Z",
    "exitStatus": 1,
    "timings": [
      {
        "name": "qa:run",
        "startedAt": "2026-06-12T12:06:06.160Z",
        "detail": {
          "issueId": "3529",
          "environment": "dev",
          "exitStatus": 1
        },
        "finishedAt": "2026-06-12T12:08:17.265Z",
        "durationMs": 131105,
        "status": "failed"
      },
      {
        "name": "prepare-results",
        "startedAt": "2026-06-12T12:06:06.160Z",
        "detail": {},
        "finishedAt": "2026-06-12T12:06:06.172Z",
        "durationMs": 12,
        "status": "ok"
      },
      {
        "name": "auth-refresh",
        "startedAt": "2026-06-12T12:06:06.172Z",
        "detail": {},
        "finishedAt": "2026-06-12T12:06:09.854Z",
        "durationMs": 3682,
        "status": "ok"
      },
      {
        "name": "auth-refresh:admin/dev/ADMIN",
        "startedAt": "2026-06-12T12:06:06.173Z",
        "detail": {
          "application": "admin",
          "role": "ADMIN",
          "businessRole": "ADMIN"
        },
        "finishedAt": "2026-06-12T12:06:09.360Z",
        "durationMs": 3187,
        "status": "ok"
      },
      {
        "name": "auth-refresh:store/dev/QA3529_VE",
        "startedAt": "2026-06-12T12:06:06.177Z",
        "detail": {
          "application": "store",
          "role": "QA3529_VE",
          "businessRole": "VE"
        },
        "finishedAt": "2026-06-12T12:06:09.854Z",
        "durationMs": 3677,
        "status": "ok"
      },
      {
        "name": "playwright",
        "startedAt": "2026-06-12T12:06:09.854Z",
        "detail": {
          "command": "npx playwright test qa/issues/3529/dev --trace retain-on-failure",
          "exitStatus": 1
        },
        "finishedAt": "2026-06-12T12:08:17.265Z",
        "durationMs": 127411,
        "status": "failed"
      }
    ]
  },
  "summary": {
    "status": "FAIL",
    "passed": 4,
    "failed": 3,
    "skipped": 0,
    "blocked": 0,
    "flaky": 0,
    "durationMs": 126899
  },
  "rows": [
    {
      "title": "3529/dev/store-settlement-balance.spec.ts / [3529][dev] [QA] 비스킷페이 총 정산예정금 상세 내역 확인 / [VE] role / 비스킷페이 거래내역 / 비스킷페이 거래내역 화면에서 BP100060 고유번호로 검색했을 때 부가세 10% 설정이 있는 거래도 정산금액이 공제 전 금액으로 보이는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 12213,
      "evidence": [
        "artifacts/screenshots/01-비스킷페이-거래내역-VE-store-transaction-merchant.png",
        "artifacts/traces/01-비스킷페이-거래내역-VE-store-transaction-merchant-trace.zip",
        "artifacts/logs/01-비스킷페이-거래내역-VE-store-transaction-merchant.md"
      ],
      "screenshots": [
        "artifacts/screenshots/01-비스킷페이-거래내역-VE-store-transaction-merchant.png"
      ],
      "traces": [
        "artifacts/traces/01-비스킷페이-거래내역-VE-store-transaction-merchant-trace.zip"
      ],
      "logs": [
        "artifacts/logs/01-비스킷페이-거래내역-VE-store-transaction-merchant.md"
      ],
      "files": [],
      "role": "VE",
      "page": "비스킷페이 거래내역",
      "checklistItem": "비스킷페이 거래내역 화면에서 BP100060 고유번호로 검색했을 때 부가세 10% 설정이 있는 거래도 정산금액이 공제 전 금액으로 보이는지 확인",
      "action": "VE 계정으로 비스킷페이 거래내역의 정산예정금 표시 기준을 확인",
      "expected": "VE 계정에서 비스킷페이 거래내역 정산예정금 표시가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3529/dev/store-settlement-balance.spec.ts / [3529][dev] [QA] 비스킷페이 총 정산예정금 상세 내역 확인 / [VE] role / 비스킷페이 거래내역 / 비스킷페이 거래내역 합계 영역에서 총 정산금액과 세금 정보가 공제 전 기준으로 보이는지 확인",
      "status": "FAIL",
      "statusText": "실패",
      "durationMs": 12176,
      "evidence": [
        "artifacts/screenshots/02-비스킷페이-거래내역-VE-store-transaction-summary.png",
        "artifacts/traces/02-비스킷페이-거래내역-VE-store-transaction-summary-trace.zip",
        "artifacts/logs/02-error-context.md"
      ],
      "screenshots": [
        "artifacts/screenshots/02-비스킷페이-거래내역-VE-store-transaction-summary.png"
      ],
      "traces": [
        "artifacts/traces/02-비스킷페이-거래내역-VE-store-transaction-summary-trace.zip"
      ],
      "logs": [
        "artifacts/logs/02-error-context.md"
      ],
      "files": [],
      "role": "VE",
      "page": "비스킷페이 거래내역",
      "checklistItem": "비스킷페이 거래내역 합계 영역에서 총 정산금액과 세금 정보가 공제 전 기준으로 보이는지 확인",
      "action": "VE 계정으로 비스킷페이 거래내역의 정산예정금 표시 기준을 확인",
      "expected": "VE 계정에서 비스킷페이 거래내역 정산예정금 표시가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 달랐습니다: Error: 거래내역 세금/부가세 정보가 보여야 합니다.  expect(received).toMatch(expected)",
      "error": "Error: 거래내역 세금/부가세 정보가 보여야 합니다.  expect(received).toMatch(expected)",
      "failureCategory": "assertion",
      "failureCategoryText": "기대 결과와 다름",
      "reproduction": {
        "required": true,
        "reason": "화면에서 확인한 값이 체크리스트의 기대 결과와 달랐습니다.",
        "debugCommand": "npm run qa:debug -- --issue \"3529\" --env \"dev\" --role \"VE\" --case \"비스킷페이 거래내역 합계 영역에서 총 정산금액과 세금 정보가 공제 전 기준으로 보이는지 확인\"",
        "notifyMessage": "[QA 확인 요청] VE / 비스킷페이 거래내역 / 비스킷페이 거래내역 합계 영역에서 총 정산금액과 세금 정보가 공제 전 기준으로 보이는지 확인: 기대 결과와 다름 상태입니다. npm run qa:debug -- --issue \"3529\" --env \"dev\" --role \"VE\" --case \"비스킷페이 거래내역 합계 영역에서 총 정산금액과 세금 정보가 공제 전 기준으로 보이는지 확인\" 로 동일 계정과 항목을 다시 열어 확인하세요.",
        "manualSteps": [
          "작업자가 위 명령을 실행하면 대상 계정의 로그인 세션을 새로 만든 뒤 브라우저가 열립니다.",
          "브라우저에서 자동화가 멈춘 화면, 현재 URL, 화면 문구, 다운로드 알림 또는 문서보관함 상태를 확인합니다.",
          "확인한 화면과 필요한 조치 내용을 Redmine/GitHub QA 이슈에 남깁니다."
        ]
      }
    },
    {
      "title": "3529/dev/store-settlement-balance.spec.ts / [3529][dev] [QA] 비스킷페이 총 정산예정금 상세 내역 확인 / [VE] role / 비스킷페이 정산내역 / 비스킷페이 정산내역 화면에서 조회 기간을 2026-06-12 ~ 2026-06-19로 설정했을 때 정산예정 상태의 금액이 공제 전 금액으로 보이는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 4649,
      "evidence": [
        "artifacts/screenshots/03-비스킷페이-정산내역-VE-store-settlement-정산예정.png",
        "artifacts/traces/03-비스킷페이-정산내역-VE-store-settlement-정산예정-trace.zip",
        "artifacts/logs/03-비스킷페이-정산내역-VE-store-settlement-정산예정.md"
      ],
      "screenshots": [
        "artifacts/screenshots/03-비스킷페이-정산내역-VE-store-settlement-정산예정.png"
      ],
      "traces": [
        "artifacts/traces/03-비스킷페이-정산내역-VE-store-settlement-정산예정-trace.zip"
      ],
      "logs": [
        "artifacts/logs/03-비스킷페이-정산내역-VE-store-settlement-정산예정.md"
      ],
      "files": [],
      "role": "VE",
      "page": "비스킷페이 정산내역",
      "checklistItem": "비스킷페이 정산내역 화면에서 조회 기간을 2026-06-12 ~ 2026-06-19로 설정했을 때 정산예정 상태의 금액이 공제 전 금액으로 보이는지 확인",
      "action": "VE 계정으로 비스킷페이 정산내역의 정산예정금 표시 기준을 확인",
      "expected": "VE 계정에서 비스킷페이 정산내역 정산예정금 표시가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3529/dev/store-settlement-balance.spec.ts / [3529][dev] [QA] 비스킷페이 총 정산예정금 상세 내역 확인 / [VE] role / 비스킷페이 정산내역 / 비스킷페이 정산내역 화면에서 조회 기간을 2026-06-12 ~ 2026-06-19로 설정했을 때 정산대기 상태의 금액이 공제 전 금액으로 보이는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 4567,
      "evidence": [
        "artifacts/screenshots/04-비스킷페이-정산내역-VE-store-settlement-정산대기.png",
        "artifacts/traces/04-비스킷페이-정산내역-VE-store-settlement-정산대기-trace.zip",
        "artifacts/logs/04-비스킷페이-정산내역-VE-store-settlement-정산대기.md"
      ],
      "screenshots": [
        "artifacts/screenshots/04-비스킷페이-정산내역-VE-store-settlement-정산대기.png"
      ],
      "traces": [
        "artifacts/traces/04-비스킷페이-정산내역-VE-store-settlement-정산대기-trace.zip"
      ],
      "logs": [
        "artifacts/logs/04-비스킷페이-정산내역-VE-store-settlement-정산대기.md"
      ],
      "files": [],
      "role": "VE",
      "page": "비스킷페이 정산내역",
      "checklistItem": "비스킷페이 정산내역 화면에서 조회 기간을 2026-06-12 ~ 2026-06-19로 설정했을 때 정산대기 상태의 금액이 공제 전 금액으로 보이는지 확인",
      "action": "VE 계정으로 비스킷페이 정산내역의 정산예정금 표시 기준을 확인",
      "expected": "VE 계정에서 비스킷페이 정산내역 정산예정금 표시가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3529/dev/store-settlement-balance.spec.ts / [3529][dev] [QA] 비스킷페이 총 정산예정금 상세 내역 확인 / [VE] role / 비스킷페이 정산내역 / 비스킷페이 정산내역 화면에서 조회 기간을 2026-06-12 ~ 2026-06-19로 설정했을 때 정산완료 상태의 세금과 최종 금액이 실제 공제 내역 기준으로 보이는지 확인",
      "status": "FAIL",
      "statusText": "실패",
      "durationMs": 4458,
      "evidence": [
        "artifacts/screenshots/05-비스킷페이-정산내역-VE-store-settlement-정산완료.png",
        "artifacts/traces/05-비스킷페이-정산내역-VE-store-settlement-정산완료-trace.zip",
        "artifacts/logs/05-error-context.md"
      ],
      "screenshots": [
        "artifacts/screenshots/05-비스킷페이-정산내역-VE-store-settlement-정산완료.png"
      ],
      "traces": [
        "artifacts/traces/05-비스킷페이-정산내역-VE-store-settlement-정산완료-trace.zip"
      ],
      "logs": [
        "artifacts/logs/05-error-context.md"
      ],
      "files": [],
      "role": "VE",
      "page": "비스킷페이 정산내역",
      "checklistItem": "비스킷페이 정산내역 화면에서 조회 기간을 2026-06-12 ~ 2026-06-19로 설정했을 때 정산완료 상태의 세금과 최종 금액이 실제 공제 내역 기준으로 보이는지 확인",
      "action": "VE 계정으로 비스킷페이 정산내역의 정산예정금 표시 기준을 확인",
      "expected": "VE 계정에서 비스킷페이 정산내역 정산예정금 표시가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 달랐습니다: Error: 정산완료 상태 문구가 화면에 보여야 합니다.  expect(received).toContain(expected) // indexOf",
      "error": "Error: 정산완료 상태 문구가 화면에 보여야 합니다.  expect(received).toContain(expected) // indexOf",
      "failureCategory": "assertion",
      "failureCategoryText": "기대 결과와 다름",
      "reproduction": {
        "required": true,
        "reason": "화면에서 확인한 값이 체크리스트의 기대 결과와 달랐습니다.",
        "debugCommand": "npm run qa:debug -- --issue \"3529\" --env \"dev\" --role \"VE\" --case \"비스킷페이 정산내역 화면에서 조회 기간을 2026-06-12 ~ 2026-06-19로 설정했을 때 정산완료 상태의 세금과 최종 금액이 실제 공제 내역 기준으로 보이는지 확인\"",
        "notifyMessage": "[QA 확인 요청] VE / 비스킷페이 정산내역 / 비스킷페이 정산내역 화면에서 조회 기간을 2026-06-12 ~ 2026-06-19로 설정했을 때 정산완료 상태의 세금과 최종 금액이 실제 공제 내역 기준으로 보이는지 확인: 기대 결과와 다름 상태입니다. npm run qa:debug -- --issue \"3529\" --env \"dev\" --role \"VE\" --case \"비스킷페이 정산내역 화면에서 조회 기간을 2026-06-12 ~ 2026-06-19로 설정했을 때 정산완료 상태의 세금과 최종 금액이 실제 공제 내역 기준으로 보이는지 확인\" 로 동일 계정과 항목을 다시 열어 확인하세요.",
        "manualSteps": [
          "작업자가 위 명령을 실행하면 대상 계정의 로그인 세션을 새로 만든 뒤 브라우저가 열립니다.",
          "브라우저에서 자동화가 멈춘 화면, 현재 URL, 화면 문구, 다운로드 알림 또는 문서보관함 상태를 확인합니다.",
          "확인한 화면과 필요한 조치 내용을 Redmine/GitHub QA 이슈에 남깁니다."
        ]
      }
    },
    {
      "title": "3529/dev/store-settlement-balance.spec.ts / [3529][dev] [QA] 비스킷페이 총 정산예정금 상세 내역 확인 / [VE] role / 비스킷페이 지갑 / 비스킷페이 지갑 화면의 정산예정금과 정산대기금이 정산내역의 정산예정·정산대기 금액 합계와 일치하는지 확인",
      "status": "PASS",
      "statusText": "통과",
      "durationMs": 12208,
      "evidence": [
        "artifacts/screenshots/06-비스킷페이-지갑-VE-store-wallet-settlement-total.png",
        "artifacts/traces/06-비스킷페이-지갑-VE-store-wallet-settlement-total-trace.zip",
        "artifacts/logs/06-비스킷페이-지갑-VE-store-wallet-settlement-total.md"
      ],
      "screenshots": [
        "artifacts/screenshots/06-비스킷페이-지갑-VE-store-wallet-settlement-total.png"
      ],
      "traces": [
        "artifacts/traces/06-비스킷페이-지갑-VE-store-wallet-settlement-total-trace.zip"
      ],
      "logs": [
        "artifacts/logs/06-비스킷페이-지갑-VE-store-wallet-settlement-total.md"
      ],
      "files": [],
      "role": "VE",
      "page": "비스킷페이 지갑",
      "checklistItem": "비스킷페이 지갑 화면의 정산예정금과 정산대기금이 정산내역의 정산예정·정산대기 금액 합계와 일치하는지 확인",
      "action": "VE 계정으로 비스킷페이 지갑의 정산예정금 표시 기준을 확인",
      "expected": "VE 계정에서 비스킷페이 지갑 정산예정금 표시가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 일치했습니다.",
      "error": "",
      "failureCategory": "none",
      "failureCategoryText": "문제 없음",
      "reproduction": {
        "required": false,
        "reason": "정상 확인된 항목입니다.",
        "debugCommand": "",
        "notifyMessage": "",
        "manualSteps": []
      }
    },
    {
      "title": "3529/dev/store-settlement-balance.spec.ts / [3529][dev] [QA] 비스킷페이 총 정산예정금 상세 내역 확인 / [ADMIN] role / 비스킷링크 정산내역 / 어드민 계정으로 비스킷링크 정산내역 화면에 접속해 동일 기간·동일 가맹점 기준 금액이 비스킷페이 정산내역과 동일하게 보이는지 비교 확인",
      "status": "FAIL",
      "statusText": "실패",
      "durationMs": 75215,
      "evidence": [
        "artifacts/screenshots/07-비스킷페이-정산내역-VE-store-settlement-admin-source.png",
        "artifacts/traces/07-비스킷페이-정산내역-VE-store-settlement-admin-source-trace.zip",
        "artifacts/screenshots/08-비스킷링크-정산내역-ADMIN-admin-store-settlement-compare.png",
        "artifacts/traces/08-비스킷링크-정산내역-ADMIN-admin-store-settlement-compare-trace.zip",
        "artifacts/logs/07-error-context.md"
      ],
      "screenshots": [
        "artifacts/screenshots/07-비스킷페이-정산내역-VE-store-settlement-admin-source.png",
        "artifacts/screenshots/08-비스킷링크-정산내역-ADMIN-admin-store-settlement-compare.png"
      ],
      "traces": [
        "artifacts/traces/07-비스킷페이-정산내역-VE-store-settlement-admin-source-trace.zip",
        "artifacts/traces/08-비스킷링크-정산내역-ADMIN-admin-store-settlement-compare-trace.zip"
      ],
      "logs": [
        "artifacts/logs/07-error-context.md"
      ],
      "files": [],
      "role": "ADMIN",
      "page": "비스킷링크 정산내역",
      "checklistItem": "어드민 계정으로 비스킷링크 정산내역 화면에 접속해 동일 기간·동일 가맹점 기준 금액이 비스킷페이 정산내역과 동일하게 보이는지 비교 확인",
      "action": "ADMIN 계정으로 비스킷링크 정산내역의 정산예정금 표시 기준을 확인",
      "expected": "ADMIN 계정에서 비스킷링크 정산내역 정산예정금 표시가 체크리스트와 일치해야 합니다.",
      "actual": "기대한 동작과 달랐습니다: Error: 스토어 정산내역과 비스킷링크 정산내역에 공통 금액 근거가 있어야 합니다.  expect(received).toBeGreaterThan(expected)",
      "error": "Error: 스토어 정산내역과 비스킷링크 정산내역에 공통 금액 근거가 있어야 합니다.  expect(received).toBeGreaterThan(expected)",
      "failureCategory": "assertion",
      "failureCategoryText": "기대 결과와 다름",
      "reproduction": {
        "required": true,
        "reason": "화면에서 확인한 값이 체크리스트의 기대 결과와 달랐습니다.",
        "debugCommand": "npm run qa:debug -- --issue \"3529\" --env \"dev\" --role \"ADMIN\" --case \"어드민 계정으로 비스킷링크 정산내역 화면에 접속해 동일 기간·동일 가맹점 기준 금액이 비스킷페이 정산내역과 동일하게 보이는지 비교 확인\"",
        "notifyMessage": "[QA 확인 요청] ADMIN / 비스킷링크 정산내역 / 어드민 계정으로 비스킷링크 정산내역 화면에 접속해 동일 기간·동일 가맹점 기준 금액이 비스킷페이 정산내역과 동일하게 보이는지 비교 확인: 기대 결과와 다름 상태입니다. npm run qa:debug -- --issue \"3529\" --env \"dev\" --role \"ADMIN\" --case \"어드민 계정으로 비스킷링크 정산내역 화면에 접속해 동일 기간·동일 가맹점 기준 금액이 비스킷페이 정산내역과 동일하게 보이는지 비교 확인\" 로 동일 계정과 항목을 다시 열어 확인하세요.",
        "manualSteps": [
          "작업자가 위 명령을 실행하면 대상 계정의 로그인 세션을 새로 만든 뒤 브라우저가 열립니다.",
          "브라우저에서 자동화가 멈춘 화면, 현재 URL, 화면 문구, 다운로드 알림 또는 문서보관함 상태를 확인합니다.",
          "확인한 화면과 필요한 조치 내용을 Redmine/GitHub QA 이슈에 남깁니다."
        ]
      }
    }
  ]
}
