{
  "issueId": "3891",
  "environment": "dev",
  "scenario": "manual-transfer-failure-transition",
  "source": "Redmine #3891 + user-provided re-QA checklist 2026-07-27",
  "sourceText": "주홍석님의 QA 재요청입니다. 직전 자동 QA 금지 문구는 무시하고 자동 진행할 수 있습니다. 금일 준비한 반환할 지갑이 없는 결과확인대기중 수동이체 1건을 실패 처리했을 때 오류 없이 실패 상태로 변경되고, 재조회 후 상태와 입력한 실패 사유가 유지되는지 확인합니다.",
  "scope": "개발계 기본 ADMIN 계정으로 금일 이체내역에서 반환 지갑이 없는 결과확인대기중 수동이체 1건을 고정해 실패 상태 전이와 재조회 지속성을 자동 검증한다.",
  "roles": [
    "ADMIN"
  ],
  "subjectAccounts": [
    {
      "role": "ADMIN",
      "label": "기본 개발계 ADMIN",
      "envRole": "ADMIN"
    }
  ],
  "checklist": [
    "조회 기간을 금일로 설정한 뒤 새로 준비된 결과확인대기중 수동이체가 보이는지 확인",
    "대상 이체를 실패 처리했을 때 반환 지갑이 없다는 오류 없이 실패 상태로 변경되는지 확인",
    "재조회 후에도 실패 상태와 입력한 실패 사유가 유지되는지 확인"
  ],
  "setupSteps": [
    {
      "name": "개발계 ADMIN 로그인 및 금일 이체내역 접근",
      "kind": "manual-precondition",
      "role": "ADMIN",
      "application": "admin",
      "description": "기본 개발계 ADMIN 계정으로 로그인하고 계좌관리 > 이체내역에서 조회 기간을 금일로 설정한다.",
      "required": true,
      "mutation": "none",
      "navigation": {
        "name": "이체내역",
        "path": "/account/transfer-details"
      }
    },
    {
      "name": "반환 지갑 없는 수동이체 실패 상태 변경",
      "kind": "state-verify",
      "role": "ADMIN",
      "application": "admin",
      "description": "금일 준비된 결과확인대기중 수동이체를 실패 처리하고 재조회 결과를 확인한다.",
      "required": true,
      "mutation": "persistent",
      "guardEnv": "QA_3891_ALLOW_STATUS_MUTATION",
      "navigation": {
        "name": "이체내역",
        "path": "/account/transfer-details"
      }
    }
  ],
  "pages": [
    {
      "name": "이체내역",
      "application": "admin",
      "path": "/account/transfer-details",
      "tenantParam": "tenantId",
      "roles": [
        "ADMIN"
      ],
      "recordsSelector": "body",
      "searchButtonSelector": "button:has-text('검색'), button:has-text('조회')",
      "dataRequestUrlPattern": "transfer/transaction"
    }
  ]
}
