with one click
verify-data-persistence
데이터 DTO, 서비스 의존성, 암호화 저장소 및 절대값 동기화 무결성 검증
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
데이터 DTO, 서비스 의존성, 암호화 저장소 및 절대값 동기화 무결성 검증
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
세션 변경사항을 분석하여 검증 스킬 누락을 탐지합니다. 기존 스킬을 동적으로 탐색하고, 새 스킬을 생성하거나 기존 스킬을 업데이트한 뒤 GEMINI.md를 관리합니다.
신규 AdMob 광고 서비스 아키텍처 및 SDK v10.7+ API 통합 상태를 검증합니다.
프로젝트 핵심 아키텍처 규칙(No Singleton, MVVM 준수, GPGS 업적 흐름) 검증.
던전 선택, 성공/실패 UI 흐름 및 상태 관리 무결성 검증.
프로젝트의 모든 verify 스킬을 순차 실행하여 통합 검증 보고서를 생성합니다. 기능 구현 후, PR 전, 코드 리뷰 시 사용.
인게임 핵심 시스템, 초기화 순서 및 씬 내비게이션 비동기 로직 검증
| name | verify-data-persistence |
| description | 데이터 DTO, 서비스 의존성, 암호화 저장소 및 절대값 동기화 무결성 검증 |
UserDataService 및 BackEndServerManager에서 누락된 필드 없이 저장되는지 확인IBackEndService.GetGameDataAsync<T> 호출 시 where T : new() 제약 준수 확인Optionsaver, IAPSAVE 등 레거시 호출부에 대한 대응 로직 검증| 파일 경로 | 용도 |
|---|---|
Assets/Scripts/BackEnd/UserDataService.cs | 신규 데이터 저장/로드 서비스 |
Assets/Scripts/Login/BackEndServerManager.cs | 서버 통신 및 레거시 저장 매니저 |
Assets/Scripts/BackEnd/BackEndService.cs | 뒤끝 API 원자적 처리 서비스 |
Assets/Scripts/BackEnd/GPGSAuthProvider.cs | GPGS 인증 프로바이더 구현체 |
Assets/Scripts/BackEnd/IGPGSAuthProvider.cs | GPGS 인증 프로바이더 인터페이스 |
Assets/Scripts/Singletons/GameLoger.cs | 클라이언트 상태 데이터 저장소 |
뒤끝 콘솔에 정의된 테이블명과 코드 내 문자열이 일치해야 합니다.
검사: "Player", "Item", "Stage", "Option", "IAP" 테이블명 사용 확인 (대소문자 주의).
grep -E "\"Player\"|\"Item\"|\"Stage\"|\"Option\"|\"IAP\"" Assets/Scripts/BackEnd/UserDataService.cs
JsonData를 객체로 변환할 때 new() 제약 조건이 필수입니다.
grep -n "where T : class, new()" Assets/Scripts/BackEnd/IBackEndService.cs
grep -n "where T : class, new()" Assets/Scripts/BackEnd/BackEndService.cs
Optionsaver가 GameLoger의 모든 필수 필드를 누락 없이 전송하는지 확인합니다.
grep -A 10 "public void Optionsaver()" Assets/Scripts/Login/BackEndServerManager.cs
불리언 값을 문자열로 저장하거나 파싱할 때의 형식 일관성을 확인합니다.
grep -n "bool.Parse" Assets/Scripts/BackEnd/UserDataService.cs
JsonData 미초기화 상태에서 Rows() 호출 시 발생하는 예외를 방지하기 위해 SafeCount와 같은 래핑 메서드를 사용하는지 확인합니다.
grep -n "SafeCount" Assets/Scripts/BackEnd/BackEndService.cs
비동기 로드나 앱 종료(OnApplicationQuit) 시 싱글톤 인스턴스 파괴로 인한 NRE를 방지하기 위해 Instance != null 체크를 하거나, 안전하게 씬에서 객체를 직적 찾는 방법(FindFirstObjectByType)이 적용되었는지 확인합니다.
# UserDataService 내 ItemStateSaver 등 씬 인스턴스의 안전한 획득 여부
grep -n "FindFirstObjectByType" Assets/Scripts/BackEnd/UserDataService.cs
# UserDataService 내 싱글톤 null 체크 확인
grep -nE "GameLoger.Instance != null|IAP.Instance != null" Assets/Scripts/BackEnd/UserDataService.cs
# BackEndServerManager 내 싱글톤 null 체크 및 try-catch 확인
grep -nE "GameLoger.Instance != null|IAP.Instance != null|MoneyManager.Instance != null" Assets/Scripts/Login/BackEndServerManager.cs
뒤끝 서버는 테이블명의 대소문자를 구분합니다. "ITem", "STAGE"와 같은 오타가 없는지 전수 조사합니다.
# ITem, STAGE 등 잘못된 대소문자가 검출되는지 확인
grep -E "\"ITem\"|\"STAGE\"" Assets/Scripts/Login/BackEndServerManager.cs
grep -E "\"ITem\"|\"STAGE\"" Assets/Scripts/BackEnd/UserDataService.cs
| 검사 항목 | 상태 | 상세 결과 |
|---|---|---|
| 테이블명 무결성 | PASS/FAIL | |
| 제네릭 제약 조건 | PASS/FAIL | |
| 저장 필드 누락 여부 | PASS/FAIL | |
| IAP 데이터 직렬화 | PASS/FAIL | |
| 자동 초기화 및 가드 | PASS/FAIL | |
| JsonData 안전 처리 | PASS/FAIL | |
| 싱글톤 Null 가드 | PASS/FAIL |
PlayerPrefs 등을 통한 임시 저장은 허용되나 경고 표시.