{
  "issueId": "4147",
  "environment": "dev",
  "scenario": "privacy-masking-regression",
  "source": "user-provided checklist",
  "sourceText": "개발계 비스킷링크의 개인정보 표시 화면에서 역할별 상세보기, PIN 마스킹 해제, 수정 전 차단, Excel 마스킹/원문 다운로드를 검증한다. 데이터가 없으면 2025-09-01~2026-09-17 기간으로 재조회한다.",
  "scope": "개발계 비스킷링크 관리 화면의 개인정보 마스킹과 PIN 인증 후 원문 조회를 ADMIN/TA/CO/BO 권한별로 검증",
  "checklist": [
    "역할별 대상 화면 접근 및 상세보기 확인",
    "상세정보가 최초 진입 시 마스킹되어 있는지 확인",
    "PIN 인증 후 마스킹 해제됨 상태와 원문 전환 확인",
    "수정 모달에서 인증 전 개인정보가 마스킹되고 수정이 차단되는지 확인",
    "기본 Excel이 MASKED로 생성되고 원문 선택 시 PIN 인증 후 UNMASKED로 생성되는지 확인",
    "데이터가 없으면 2025-09-01~2026-09-17로 재조회한 뒤 동일 검증 수행",
    "검증 중 조회 조건 외 운영 데이터는 변경하지 않음",
    "원문 개인정보는 리포트와 첨부물에 저장하지 않음",
    "실패 또는 확인불가 항목은 trace를 보존하고 R2에 업로드"
  ],
  "roles": ["ADMIN", "TA", "CO", "BO"],
  "routeCandidates": "../../../../qa-results/issues/4147/dev/route-candidates.json",
  "setupSteps": [
    {
      "name": "기본 역할 계정과 PIN 확인",
      "kind": "state-verify",
      "mutation": "none",
      "description": "기본 계정 ADMIN=bigs_jjm, TA=jjmta01, CO=jjmco01, BO=jjmbo01과 PIN 1234를 사용하며 운영 데이터는 변경하지 않는다."
    }
  ],
  "pages": [
    {"name":"거래내역","application":"admin","path":"/trade-history-v2","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[aria-label='거래 상세 보기']","excel":true},
    {"name":"상계처리내역","application":"admin","path":"/offset-management","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[aria-label='상계처리내역 상세 보기']"},
    {"name":"링크발송내역","application":"admin","path":"/link-payment","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세']"},
    {"name":"과세자료","application":"admin","path":"/tax-reports/taxable-materials","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[aria-label='신고자료 상세 보기']","excel":true},
    {"name":"부가세 신고자료","application":"admin","path":"/tax-reports/vat-reports","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[aria-label='신고자료 상세 보기']","excel":true},
    {"name":"펌뱅킹 등록","application":"admin","path":"/account/account-inquiry","tenantParam":"tenantId","roles":["ADMIN","TA","CO"],"detailOpenSelector":"button[aria-label*='보호 상세 조회'], button:has-text('확인')","editCheck":true},
    {"name":"모계좌 관리","application":"admin","path":"/admin/master-accounting/firm-bank-root-accounts","tenantParam":"tenantId","roles":["ADMIN"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')"},
    {"name":"운영계좌 관리","application":"admin","path":"/master-accounting/disbursement-accounts","tenantParam":"tenantId","roles":["ADMIN","TA","CO"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')","excel":true},
    {"name":"운영계좌 입출금 내역","application":"admin","path":"/master-accounting/disbursement-accounts-inout-history","tenantParam":"tenantId","roles":["ADMIN","TA"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')","excel":true},
    {"name":"법인계좌 입출금 내역","application":"admin","path":"/master-accounting/corporation-accounts-inout-history","tenantParam":"tenantId","roles":["ADMIN","TA"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')","excel":true},
    {"name":"입금확인","application":"admin","path":"/account/deposit-confirmation","tenantParam":"tenantId","roles":["ADMIN","TA"],"detailOpenSelector":"button[aria-label='입금확인 상세']","excel":true},
    {"name":"이체내역","application":"admin","path":"/account/transfer-details","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')","excel":true},
    {"name":"이체하기","application":"admin","path":"/account/remittance-manage","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')"},
    {"name":"이체하기(렌탈페이)","application":"admin","path":"/account/remittance-manage-rentalpay","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')"},
    {"name":"구 이체내역 확인(렌탈페이)","application":"admin","path":"/account/legacy-transfer-details","tenantParam":"tenantId","roles":["ADMIN"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')"},
    {"name":"지갑입출금내역","application":"admin","path":"/master-accounting/wallet-inout-history","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')","excel":true},
    {"name":"정산내역","application":"admin","path":"/settlement-history/settlement-details","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"[data-field='detail'] button, button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')","excel":true},
    {"name":"총판관리","application":"admin","path":"/business/corporation","tenantParam":"tenantId","roles":["ADMIN","TA","CO"],"detailOpenSelector":"button[aria-label='법인 상세보기']","editCheck":true,"excel":true},
    {"name":"부서별 운영상태관리","application":"admin","path":"/saleline-status-control","tenantParam":"tenantId","roles":["ADMIN","TA","CO"],"detailOpenSelector":"button:has-text('사용자 확인')","excel":true},
    {"name":"영업점관리","application":"admin","path":"/business/branch","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[aria-label='영업점 상세보기']","editCheck":true,"excel":true},
    {"name":"가맹점관리","application":"admin","path":"/business/vendor-manage","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[aria-label='가맹점 상세보기'], button[aria-label*='상세']","editCheck":true,"excel":true},
    {"name":"사용자관리","application":"admin","path":"/business/member","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[aria-label='사용자 상세보기']","editCheck":true,"excel":true},
    {"name":"법인관리","application":"admin","path":"/sales-agency/agency","tenantParam":"tenantId","roles":["ADMIN"],"detailOpenSelector":"button[aria-label='총판 상세'], button[title='총판 상세']"},
    {"name":"카드관리","application":"admin","path":"/admin/biscuit-card/card-manage","tenantParam":"tenantId","roles":["ADMIN","TA","CO"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')","excel":true},
    {"name":"사용내역","application":"admin","path":"/admin/biscuit-card/usage-history","tenantParam":"tenantId","roles":["ADMIN","TA","CO"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')"},
    {"name":"비스킷카드 신청관리","application":"admin","path":"/admin/biscuit-card/application-manage","tenantParam":"tenantId","roles":["ADMIN","TA","CO"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')","excel":true},
    {"name":"레드마인티켓","application":"admin","path":"/redmine","tenantParam":"tenantId","roles":["ADMIN","TA"],"detailOpenSelector":"button[aria-label*='상세'], button[title*='상세'], button:has-text('확인')"},
    {"name":"블랙리스트 관리","application":"admin","path":"/admin/blacklist-manage","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[title='상세 보기'], button[aria-label*='상세']"},
    {"name":"차단계좌 이체시도 내역","application":"admin","path":"/admin/blacklist-transfer-history","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[title='상세 보기'], button[aria-label*='상세']"},
    {"name":"IP 차단관리","application":"admin","path":"/admin/ip-block-manage","tenantParam":"tenantId","roles":["ADMIN","TA"],"detailOpenSelector":"button[title='상세 보기'], button[aria-label*='상세']"},
    {"name":"RM 사업자조회","application":"admin","path":"/risk-management/rm-business","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[title='상세 보기'], button[aria-label*='상세']"},
    {"name":"텔레그램 발송 내역","application":"admin","path":"/business/telegram-history","tenantParam":"tenantId","roles":["ADMIN","TA","CO","BO"],"detailOpenSelector":"button[title='상세 보기'], button[aria-label*='상세']"}
  ]
}
