유지보수 작업
⚠️ 일회성 마이그레이션. 먼저 [미리보기]로 변경 예정 내용을 확인 후 [실행]을 누르세요. 큰 작업은 자동으로 청크 단위로 이어서 진행됩니다.
보드라이프 검색 키워드 재생성
boardlifeGames 컬렉션의 searchKeywords 배열을 새 규칙으로 재생성합니다.
규칙: 자모 분해 + 모든 substring + 자음만 substring 제외.
옛날 boardlife → 최신 boardlife 마이그레이션
source='boardlife' 또는 boardlifeId='bl_XXX'이지만 boardlifeNumId가 없는 사용자 myCollection 게임에 현재 카탈로그의 메타데이터(카테고리·테마·진행방식·인원·시간·BGG 정보 등)를 보강합니다.
사용자 데이터(메모, 태그, customFields, 별점, 등록일)는 그대로 보존되며 보드라이프 메타데이터만 추가/갱신됩니다.
마이그레이션 후 자동으로 "최신 boardlife" 분류로 승격됩니다.
boardlife_imports orphan 이미지 정리
boardlife_imports/ Storage prefix 안의 이미지 중 어떤 myCollection 도큐도 참조하지 않는 orphan 파일을 일괄 삭제합니다.
보드라이프 마이그레이션 후 사용 안 되는 사용자별 복제 이미지 정리용. 마이그레이션 완료 후 실행 권장. 복원 불가하므로 미리보기 결과 확인 후 실행하세요.
사용자 게임 카운터 백필
기존 사용자의 users/{uid}.gameCount 필드를 일괄 채웁니다.
(트리거 도입 후 1회만 실행. 관리자 통계가 사용자별 myCollection 전체 fetch 없이 동작.)
보드라이프 신규 카탈로그 크롤
boardlifeGames 의 마지막 boardlifeNumId 다음 번호부터 보드라이프를 순차 fetch.
30개 연속 비어있으면 종료. 한 회 최대 1000개. 매일 새벽 04:00 KST 자동 실행됨.
더미 플레이 기록 시드/청소
Recap 등 통계 화면 테스트용. 로그인한 본인 계정의 책장 게임을 사용해 지난 12개월에 걸쳐 ~50건의 플레이 기록을 생성합니다.
지난 달엔 메인 게임 반복 / 첫 도전 / 14개월 만의 컴백 / 새 player(새친구) / 새벽 플레이 등 다양한 패턴이 들어갑니다. 모든 문서에 __dummy: true 태그가 붙어 청소도 한 번에 가능.