유저 입력은 CMS와 다르게 적힌다 — 단어를 빠뜨리거나(«코쿤 드 세레니떼 릴랙싱 필로우 미스트»),
옵션·호수를 제품명에 붙여 씁니다(«에센셜 스킨 누더 쿠션 엔라이트»).
용량 표기도 붙여 씁니다(«링링 파스텔 네일 10 ml 라임민트»).
단어 순서와 띄어쓰기 위치가 통째로 다르기도 합니다 —
유저 «러브 라이트 하이드레이션 바디 로션» 인데 CMS 는 «바디러브 로션 라이트 하이드레이션».
그래서 낱말 비교가 막히면 두 글자씩 잘라 겹치는 비율까지 봅니다.
비슷한 후보가 둘 이상이고 우열이 없으면 기계가 고르지 않고 사람에게 넘깁니다.
포장 용량을 걷어내되 호수·함량은 보존합니다. 남는 말이 실제 옵션인지 확인하고, 빠진 단어나 에디션 차이는 사람이 대조할 후보로 제공합니다. 발송은 반드시 선택 후 최종 확인을 거칩니다.
확정이 안 되면 👀 확인으로 보내고, 그 카드에서 버튼 한 번으로 수정요청을 보낼 수 있습니다.
⚡ 고신뢰 자동 승인 + 🎯 표본 검사 — 승인 후보 중
직접촬영 사진 · 본문 40자 이상 · 정지·미노출 이력 없음 · 발색 제품 아님 · 복붙 아님 · 경고 없음을 모두 갖춘 건은 그리드에 올리지 않습니다.
대신 그중 무작위 10%(최소 3건)를 🎯표본으로 섞어 보여 주고, 표본이 전부 통과해야 고신뢰 건이 같은 실행 버튼에 함께 승인됩니다.
표본을 하나라도 건너뛰면 그날은 고신뢰 자동 승인을 통째로 보류하고 전부 사람이 보게 돌립니다.
9/10 실데이터 기준 사람이 보는 카드가 34장 → 9장으로 줄었습니다.
자동으로 보내지 않는 경우 (2026-09-27 보강) —
① 이름이 비슷해도 제품 종류가 다르면(크림↔토너, 크림↔선크림, 토너↔토너 패드) 수정요청을 자동으로 보내지 않고 "새 제품일 가능성"으로 알립니다.
같은 뜻의 표기(스킨=토너 · 썬=선 · 에멀전=로션 · 팩=마스크 · 폼클렌저=클렌징폼)는 같은 것으로 보고 자동으로 보냅니다.
에센스·세럼·앰플처럼 섞어 쓰지만 따로 파는 경우도 있는 종류는 👀 확인에 「제품명」로 수정요청 버튼으로 올려, 한 번 보고 보내게 합니다.
② 본문에 욕설·비속어, 링크·SNS 계정·전화번호·카톡 문의가 있으면 👀 확인으로 보내 본문을 읽고 정하게 합니다(부정적 평가는 정상 리뷰로 둡니다).
③ 아이브로우·브로우·헤어컬러·셰이딩·파우더 팩트·립 오일도 발색 제품으로 봐 자동 승인에서 뺍니다.
④ 제품 이미지가 뜨는데 가격만 빈 경우는 엑박으로 보지 않고, 자동 승인에서만 뺍니다.
복붙 리뷰 감지 — 같은 날 다른 리뷰와 본문이 거의 같거나(글자 유사도 0.85 이상),
지난 스캔에서 본 본문을 다른 리뷰로 다시 올리면 👀 확인으로 보냅니다. 본문 원문은 저장하지 않고 지문만 남깁니다.
학습 — 제품 재선택 요청을 한 번 보내면 (브랜드, 유저가 쓴 제품명) → CMS 제품을 기억해,
같은 표기가 다시 오면 자동으로 맞춥니다. 사용자별 처리 이력도 쌓여 과거 미노출 사용자는 자동 승인에서 빠집니다. (이 브라우저에 저장)
등록 후 자동 재확인 — 상품·브랜드를 CMS 에 등록하고 완료 체크를 하면 곧바로 그 제품을 다시 찾아,
찾으면 유저에게 보낼 제품 재선택 요청 확인창이 뜹니다. 아직 못 찾으면 ↻ 표시로 이유를 보여 주고, 나중에 [등록 완료 N건 다시 찾아 수정요청]으로 한꺼번에 재시도합니다.
📒 업무일지 자동 동기화 (2026-09-27) — 콘솔을 열면 CMS 최근 60일을 조회만 해서
내 계정이 그날 검수완료(승인)한 리뷰 수와 그날 등록한 제품 수를 모아, 업무일지의 실제로 일한 날짜(컴퓨터 날짜)에 적습니다.
9/24 리뷰를 9/27 에 검수했으면 9/27 에 들어갑니다. 콘솔로 한 것뿐 아니라 CMS 화면에서 직접 승인·등록한 것도 같이 잡힙니다.
근거는 CMS 의 승인 시각·처리 계정(리뷰)과 검수 시각·검수 계정(제품)이고, 다른 담당자가 한 것은 세지 않습니다.
스캔 판정과 실행 결과는 검수기록 탭으로 함께 넘어갑니다. 파일은 내려받지 않습니다.
넘길 때 업무일지의 작은 동기화 창이 잠깐 떴다가 저절로 닫힙니다. 처음에 팝업이 막히면 콘솔 위쪽 [지금 반영]을 누르거나,
주소창 오른쪽의 팝업 차단 아이콘에서 cms.unpa.me 팝업 항상 허용을 한 번 해 두면 실행 뒤에도 자동으로 넘어갑니다.
못 넘긴 기록은 이 브라우저에 보관했다가 다음 동기화 때 함께 보냅니다.
업무일지에서 초록 줄 칸이 자동 집계입니다. 9월 1일부터 적용되며, CMS 가 기준입니다 —
칸에 다른 숫자를 적어 두어도 다음 동기화 때 CMS 에서 센 건수로 바로잡고, 바로잡기 전 값은 칸에 마우스를 올리면 보입니다.
수정요청·미노출은 리뷰 수에 넣지 않습니다(그동안 직접 적어 온 방식과 같게).
등록 작업 완료 체크 — 상품등록 필요·브랜드+상품 등록 필요 목록의 각 건 앞에 체크박스가 있습니다.
CMS에서 직접 등록을 끝낸 건을 체크하면 취소선과 완료 시각이 표시되고, 그룹 제목에 ✓ 완료/전체가 나옵니다.
표시만 할 뿐 CMS로는 아무것도 보내지 않습니다. 이 브라우저에 저장돼 새로고침·재스캔 후에도 유지되며, 업무일지 검수기록에도 manual_done으로 남습니다.
리뷰 상세 바로가기 — 대기열과 그리드의 #리뷰ID ↗를 누르면
해당 리뷰 상세가 새 탭으로 열립니다. CMS 목록 페이지네이션을 넘길 필요 없이 바로 확인할 수 있습니다.
정지 상태/횟수 — 현재 정지인 사용자는 일반 검수를 생략하고 미노출 대상으로 분류합니다. 해제 상태는 과거 정지 횟수와 관계없이 기존 검수를 진행합니다(자동 통과 아님). 노출 스위치와는 별개입니다. 상태가 없거나 목록/상세가 다르면 보류하고, 실행 직전에도 다시 확인합니다. 실제 미노출은 선택 후 실행 확인이 필요합니다.
📋 남은 일 · 수정완료 건 (2026-09-27) — 콘솔을 열면 날짜를 묻기 전에
최근 60일 중 짝수일의 검수대기 목록을 훑어, 아직 처리하지 않은 건이 남은 날짜만 보여 줍니다.
이 콘솔로 이미 처리한 리뷰와 미노출된 리뷰는 빼고 셉니다. [▶ 남은 것 전부 스캔] 한 번이면 그 날짜들을 한꺼번에 판정하고, 카드마다 날짜가 붙습니다.
특정 날짜 하나만 보려면 아래 [이 날짜만 스캔]을 쓰세요.
수정요청을 받은 유저가 「수정완료」를 누르면 그 리뷰가 원래 작성일 목록에 다시 올라오므로, 같은 스캔에서 ✏️수정완료 표시와 함께 다시 판정됩니다.
고쳤으면 승인으로, 여전히 제품이 연결 안 됐으면 수정요청을 한 번 더 보낼 수 있습니다(이때만 재발송 허용).
수정요청 후 유저가 답하지 않은 건(REVISED)은 건드리지 않습니다.
같은 리뷰에 수정요청을 2번 보냈는데도 여전히 제품이 연결 안 됐으면 세 번째는 보내지 않고 👀 확인으로 돌립니다. 안전장치 — 스캔 때 방금 받은 상세를 기준으로, CMS 화면에서 이미 검수완료·수정요청·미노출된 리뷰는 보내지 않습니다.
일부 날짜 목록 조회가 실패하면 그 날짜를 따로 알려 주고, 리뷰 상세 조회가 연속 5번 실패하면(로그인 만료 등) 스캔을 멈춥니다.
브랜드·제품 검색이 일부만 실패했을 때는 "없음"이나 비슷한 제품으로 단정하지 않고 👀 확인으로 보냅니다(중복 등록 방지).
쓰는 법 — cms.unpa.me 어느 화면에서든 클릭 → [▶ 남은 것 전부 스캔](또는 날짜 하나 입력 → [이 날짜만 스캔]) →
대기열에서 [👀 사진 보고 일괄 승인]으로 승인분을 처리하고, 수정요청·미노출은 [체크한 것 실행].
스캔은 조회만이고 실제 처리는 확인창을 눌러야 나갑니다. 처리 결과는 파일 대신 업무일지 검수기록으로 넘어갑니다.
👀 일괄 승인 화면 — 대상 사진을 한 화면에 깔아 줍니다.
처음에는 전부 검수완료로 선택돼 있습니다. 제품과 안 맞거나 이상한 카드만 눌러 건너뛰기로 바꾸고(다시 누르면 검수완료),
💄를 누르면 발색샷 요청으로 바뀝니다. 🔍는 사진 전부를 크게, ↗는 CMS 리뷰 상세를 새 탭으로 엽니다.
발색 제품은 맨 앞에 정렬됩니다. 바꾼 선택은 그리드를 닫았다 다시 열어도 유지됩니다.
사진 자동판별의 한계 — 해상도만으로 도용·직접촬영·제품 일치·발색샷을 확정하지 않습니다. 저해상도만을 이유로 미노출하지 않습니다. 유료 AI API는 사용하지 않습니다.
🧠 미노출 판정 학습 (2026-10-09) — 콘솔이 미노출로 올렸는데 실행하지 않은 리뷰를 조회해 보니 대부분 사람이 정상 승인했습니다. 그래서:
① 사진 크기만으로는 미노출하지 않습니다 — 앱이 사진을 줄여 올려 650×862 같은 정상 사진이 "저해상"으로, 1080×1920 사진이 "화면캡처"로 잡혔습니다. 이제 그리드로 보내 눈으로 확인합니다.
② "동일 음절 반복"은 짧은 글이거나 글자 종류가 아주 적을 때만 봅니다(600자 넘는 정상 리뷰가 걸리던 문제).
③ 대기열에서 체크를 해제하면 콘솔을 쓰는 동안(실행·그리드·다시 스캔) 되살아나지 않습니다.
④ 미노출을 해제했거나 CMS 에서 정상 승인한 리뷰는 다시 미노출로 권하지 않고, 같은 본문도 미노출로 보지 않습니다.
어떤 판정이 자주 틀리면(정상으로 본 것 2건 이상 · 30% 이상) 그 판정으로 걸린 건은 기본 체크 해제 + 🧠 표시. 학습은 다른 컴퓨터와도 나눕니다.
정지 사용자는 사실 정보라 배우지 않습니다 — 정지 사용자 리뷰를 승인한 것은 실수로 보고 계속 미노출 대상으로 올립니다.
📋 짝수일별 남은 검수 → 업무일지 "미등록 제품수" (2026-10-09) — 콘솔을 열 때 훑는 CMS 검수 대기(짝수일 최근 60일)로
작성일마다 남은 검수 건수를 업무일지 그 날짜의 "미등록 제품수" 칸에 넣습니다.
이미 미노출된 리뷰와 정지 사용자 리뷰(미노출 대상)는 세지 않습니다 — 검수도 제품 등록도 필요 없어서입니다.
칸이 비었거나 숫자면 CMS 건수로 맞추고(남은 게 없으면 비움), "유민지"·"이월" 같은 메모가 적혀 있으면 메모는 그대로 두고 옆에 남은 N만 붙입니다.
칸에 마우스를 올리면 상품·브랜드 등록 필요 / 유저 수정완료 / 뺀 정지 사용자 수와 확인 시각이 보입니다.
🎯 월 목표 금액에 맞춰 승인 (2026-09-30) — 이번 달 수입(리뷰 검수완료 500원 + 제품 등록 600원)이
업무일지 월 목표를 넘지 않도록 승인할 건만 고릅니다. 목표 금액은 업무일지에서 받아 오고, 이번 달 수입은 CMS 실데이터로 셉니다.
고신뢰 먼저, 모자라면 사람 확인 건을 걸리는 점이 적은 것부터(복붙·과거 미노출·발색·저해상은 뒤로, 같으면 오래된 작성일부터) 채우고,
나머지는 ⏸ 목표 도달 — 남겨 둠으로 그리드에서 뺍니다(다음 달에 처리).
그리드에서 건너뛴 리뷰는 다시 내밀지 않고 그 자리를 다른 리뷰로 채웁니다. 그리드를 다시 열 때 건너뛴 리뷰가 CMS 에서 수정요청·승인·미노출됐는지도 확인해 후보에서 뺍니다.
예) 목표 143만 · 이번 달 135만9200 → 남은 70,800원 → 승인 141건까지.
실행 직전에 한 번 더 계산해 넘는 승인은 잘라 내고(집계가 10분 넘게 지났으면 CMS 를 다시 셉니다), 목표에 닿았으면 승인하지 않습니다.
수정요청·미노출은 수입에 들어가지 않아 막지 않습니다. 목표 뒤에 제품을 더 등록하면 그만큼 수입이 늘어 목표를 넘을 수 있으니, 등록은 승인 전에 해 두세요.
🧠 경험 쌓기 (2026-09-29) — 콘솔이 상품등록 필요·확인으로 넘긴 리뷰를 유저가 쓴 표기 그대로 기억해 두고, 그 뒤 일에서 배웁니다.
① 내 계정으로 그 브랜드에 새 제품을 등록하면 이름이 조금 달라도 그 리뷰와 짝지어 시작 화면에 「이 제품으로 수정요청 보내기」를 띄웁니다(완료 체크 없이도).
② CMS 화면에서 직접 수정요청을 보낸 건도 알아채 대기 목록에서 빼고, 그 뒤 등록한 제품이나 유저가 고른 제품으로 (브랜드, 유저 표기) → 제품 연결을 배웁니다.
③ 배운 연결은 다음 스캔에서 바로 자동 매칭에 쓰입니다.
매칭 자체도 보강했습니다 — 유저가 낱말을 줄여 쓴 경우(«미러 블러 멜팅 에센스» ↔ «미러링 블러 멜팅팟 에센스»)를 같은 제품으로 잡습니다. 종류가 다르거나 후보가 둘이면 사람에게 넘깁니다.
☁ 회사·집 어디서 봐도 같게 — 업무일지 화면 [동기화]에서 컴퓨터마다 한 번 로그인해 두면,
업무일지 숫자·작업 증빙·남은 일·검수기록과 콘솔 경험(배운 제품 연결, 전송 기록, 등록 완료 체크, 복붙 지문)이 서버에서 합쳐집니다.
다른 컴퓨터에서 이미 보낸 수정요청은 다시 보내지 않고, 두 컴퓨터가 같은 달을 고쳐도 자동으로 합쳐집니다(어느 쪽도 지우지 않음).
처음 로그인하는 컴퓨터는 그동안 쌓인 기록을 파일 없이 계정으로 옮깁니다. 로그인 전에는 지금처럼 그 컴퓨터에만 저장됩니다.
업무일지 연동 — 위 📒 자동 동기화로 대신합니다. 예전처럼 작성일(짝수일) 기준으로 건수를 더하는 반영은 없앴습니다(자동 집계와 겹쳐 두 번 세지 않도록).
01 · 자료 모으기 — 개별 도구 (콘솔이 안 될 때·구조 파악용)
📥 리뷰 수집기 읽기 전용
선택한 날짜의 검수대기 리뷰를 전부 긁어옵니다. 상세 내용·사진·제품 매칭 정보까지 한 번에.
쓰는 법 — 리뷰 목록에서 날짜를 지정한 주소로 이동한 뒤 클릭하세요. /review/list/all?startDate=2026-08-24&endDate=2026-08-24&beforeApproval=true
끝나면 JSON이 자동으로 내려받아집니다. GET만 사용하며 아무것도 바꾸지 않습니다.
🔍 구조 정찰기 읽기 전용
화면이 서버에 보내는 요청을 엿듣고 기록합니다. 버튼이 실제로 무엇을 호출하는지 알아낼 때 씁니다.
언제 — CMS가 바뀌어서 도구가 안 될 때, 또는 새 기능(수정요청 등)을 자동화에 넣고 싶을 때
쓰는 법 — /brand/inspection(브랜드 관리) 페이지에서 클릭하세요.
브랜드 목록은 페이지 열 때 한 번만 불려오므로, 인증 대기가 뜨면 [검수 완료 브랜드]/[검수 필요] 탭을 한 번 눌러주면 이어집니다.
끝나면 cms-brands.json이 내려받아집니다. GET만 사용하며 아무것도 바꾸지 않습니다.
🔎 제품검색 수집기 과거 고정 12건용 · 사용 중단
엑박 리뷰의 brandId 안에서 유저가 쓴 상품명을 분절 토큰으로 검색해, 그 제품이 CMS에 실제로 있는지 확인합니다. 있으면 정확한 상품명이 후보로 잡힙니다.
언제 — 브랜드는 있는데(정식 등록) 그 안에 유저가 쓴 제품이 있는지 없는지 확정할 때 → 수정요청 vs 상품등록 판가름
쓰는 법 — cms.unpa.me 아무 관리 화면에서든 클릭하면, 스크립트에 넣어둔 대상 목록(현재 8/24 엑박 12건)을 자동으로 브랜드별 검색합니다.
인증 대기가 뜨면 제품/브랜드 목록을 한 번 새로 불러주세요. 끝나면 cms-products.json이 내려받아집니다. GET만 사용하며 아무것도 바꾸지 않습니다.
02 · 알아낸 것
동작
요청
본문
상태
목록 조회
GET /admin/reviews?startDate=&endDate=&beforeApproval=true
상품명 정확 일치 · 남은 말이 검증된 옵션 · 유저가 단어를 빠뜨림 · 단어 순서·띄어쓰기·오타만 다름 (글자 유사도 0.72 이상)
제품 재선택 요청 선택 후 실행
└ 브랜드○ 제품 애매
남은 말이 옵션에 없음 — 에디션·한정판일 수 있음
👀 확인 — 카드의 [「…」로 수정요청] 버튼으로 한 번에 처리
└ 브랜드○ 제품✗
브랜드는 있으나(영문 병기·표기 차이 포함) 그 안에 제품 없음
상품등록만 — 브랜드는 그대로 씀
└ 브랜드 미검수
브랜드가 CMS에 있으나 검수 전
브랜드 검수 → 상품등록
└ 브랜드✗
어떤 표기로도 후보가 없음
브랜드+상품 등록
└ 브랜드 중복·조회실패
같은 이름 검수완료 브랜드 여러 건 · 조회 실패
👀 확인 — 없음으로 단정하지 않음
무의미한 본문
자모 나열(ㅁㄴㅇㄹ) · 같은 글자 반복(가가가거거) · 키보드 배열(asdfasdf)
미노출
무성의한 리뷰
상투어만 있고 제품 내용이 없음 — 좋아요 · 굿 · 잘 쓸게요 한 마디라도 붙으면 정상으로 둡니다 — 촉촉하고 좋아요
미노출
본문 도배
같은 문장 반복 · 실질 내용 극소
미노출
화면 해상도 / 저해상
이미지 크기 참고정보일 뿐 도용 근거 아님
직접 확인 · 해상도만으로 미노출 안 함
사진 크기 혼재
첨부 전체 로드 확인
그리드에서 내용 판단
발색 제품
제품명에 립·아이·베이스·네일 색조 키워드
그리드에서 💄 눌러 발색샷 요청
취급 품목 아님
콤부차 · 세제 · 락스 · 섬유유연제 · 뷰티용 아닌 물티슈 · 관절약 등
👀 확인 — 사람이 미노출 검토
사진 무관
제품과 상관없는 사진 (기계가 못 걸러냄)
그리드에서 눈으로 판단
검수 대상 규칙 —
① 브랜드 안에 CMS에 존재하는 상품이 매칭돼 있고, ② 좌상단 제품 이미지가 엑박이 아니어야 검수 대상입니다.
③ 무의미하거나 무성의한 본문만 있으면 검수 대상이 아니라 미노출, ④ 발색 있는 제품인데 발색샷이 없으면 발색샷 요청입니다.
👀 그리드는 기본 데이터 확인을 통과한 건입니다. 사진 의미·본문 일치·발색샷은 자동 검증되지 않으므로 문제 있는 카드는 건너뛰기로 바꾸세요.
기계가 다 하지는 못합니다.
사진 판별은 해상도만 봅니다(파일 크기는 보지 않습니다).
사진이 제품과 맞는지, 발색샷이 실제로 있는지는 픽셀을 봐야 알 수 있어 그리드에서 사람이 판단합니다.
되돌리기 어려운 미노출은 좁게(상한 30), 되돌리기 쉬운 검수완료는 넓게(상한 300) 잡아 두었습니다.
상한은 하루 기준이라, 남은 짝수일을 여러 날 한꺼번에 스캔하면 날짜 수만큼 늘어납니다.