{
  "issueId": "4242",
  "environment": "dev",
  "source": "사용자 확정 #4242 개발계 QA 요청",
  "scenario": "user-preset-permission",
  "sourceText": "ADMIN·TA 머천트이체 권한 분기와 기존 펌뱅크 목록을 확인한다. 실제 이체 요청·인증·재발송·결과 확인은 제외한다. 권한 변경은 TA 계정에 한해 허용하고 검증 후 원복한다.",
  "scope": "개발계 admin, ADMIN bigs_gj 및 TA ta_test_gj; 제품 코드·이체 제출 변경 없음; QA 결과 게시 및 DevQA 종료 알림",
  "roles": ["ADMIN", "TA"],
  "checklist": [
    "ADMIN에 머천트이체 요청 권한이 있을 때 버튼이 보이고 팝업이 열린다.",
    "TA 권한 회수 후 재로그인하면 머천트 이체 버튼이 숨겨진다.",
    "TA 권한 부여 후 재로그인하면 버튼과 팝업이 표시된다.",
    "기존 일반 이체 권한만으로 머천트 이체 버튼은 표시되지 않는다.",
    "ADMIN·TA 기존 펌뱅크 목록이 정상 표시되고 머천트 권한 변경 전후 목록이 동일하다.",
    "머천트 팝업에는 기존 조회 범위의 웰컴 계좌만 표시된다."
  ],
  "setupSteps": [
    {
      "name": "TA 머천트이체 권한 분기",
      "kind": "permission-toggle",
      "role": "ADMIN",
      "application": "admin",
      "targetRoles": ["TA"],
      "description": "사용자가 승인한 대로 공유 ta 프리셋의 머천트이체 요청 권한만 임시 ON 후 OFF로 복구한다. 변경 전 권한 ID 집합을 저장하고 TA 재로그인으로 검증한다.",
      "spec": "00-admin-permission-toggle.spec.ts",
      "required": true,
      "mutation": "temporary",
      "guardEnv": "QA_ALLOW_PERMISSION_MUTATION",
      "navigation": {"name": "사용자 프리셋 관리", "path": "/admin/member-preset"},
      "target": {"type": "role-preset", "role": "TA", "presetName": "ta", "presetId": 681, "userEnvKey": "BIX_ADMIN_DEV_TA_USERNAME", "sharedUserCountAtBaseline": 18},
      "restore": {"required": true, "description": "초기 머천트이체 요청 권한 OFF 및 원래 프리셋 ta로 복원"}
    }
  ],
  "pages": [
    {"name": "계좌 이체내역", "application": "admin", "path": "/account/remittance-manage", "tenantParam": "tenantId", "roles": ["ADMIN", "TA"]},
    {"name": "기존 펌뱅크 계좌 목록", "application": "admin", "path": "/account/account-inquiry", "tenantParam": "tenantId", "roles": ["ADMIN", "TA"]},
    {"name": "계정 관리", "application": "admin", "path": "/admin/member", "tenantParam": "tenantId", "roles": ["ADMIN"]}
  ],
  "executionPolicy": {"externalPublishAuthorized": true, "transferSubmissionAllowed": false, "sharedPresetMutationAllowed": true}
}
