버전 0.2 · 2026-09-22 · 대상 독자: 컬리 개인정보보호책임자·법무, 크롬 웹 스토어·Google 동의 화면 검수자, 이용자(컬리 임직원) · 문서 상태: 초안
이 문서는 법률 검토 전 초안입니다. 컬리(위탁자)와 원지랩스(수탁자) 사이의 개인정보 처리 위탁 계약, 국외 이전·재위탁 판단, 공개 방침으로의 확정은 개인정보보호책임자·법무 검토 뒤에 이루어집니다. 사실 관계는 2026-09-22 기준 코드(server/, extension/)와 설계서(docs/design/PLATFORM-DESIGN.md 4.3·4.7·7.2)에서 확인한 내용이며, 자리표시자는 대괄호로 표시했습니다.
jev-platform).kurlycorp.com Google Workspace 계정 보유자). 일반 고객은 이용자가 아닙니다.1zlabs.com)가 위탁받아 수행합니다. 서버·데이터베이스·로그는 원지랩스가 소유한 Google Cloud 프로젝트 kurly-jev(대한민국 서울 리전)에 있습니다.[자리표시자: 컬리↔원지랩스 개인정보 처리 위탁 계약서 명칭·체결일. 기존 PDS 위·수탁 계약이 이 업무를 포함하는지 확인 후 기입]| 구분 | 항목 | 수집 시점·출처 | 저장 위치 |
|---|---|---|---|
| 계정 정보 | Google 사용자 ID(sub), 이메일, 이름, 소속 도메인(hd) | Google 로그인 시 Google 신원 토큰에서 | 세션 토큰(브라우저 메모리, 1시간). 서버 감사 기록에는 sub 해시와 가린 이메일(ke**@kurlycorp.com)만 |
| 세션 정보 | 세션 토큰 식별자(jti), 발급·만료 시각 | 로그인 시 서버 발급 | 브라우저 chrome.storage.session(디스크 미기록). 서버는 폐기 목록만 보관 |
| 요청문 | 이용자가 패널에 입력한 문장(500자 이내) | 요청 전송 시 | 서버 감사 기록에 마스킹본(messageMasked)만 저장. 원문은 저장하지 않음 |
| 실행 기록 | 요청 번호, 판단 결과(메뉴·업무·확률·위험도), 실행 단계 이름·상태·소요 시간·오류 코드, 승인·실행 토큰 식별자, 팩 ID·요약값 | 요청·승인·실행 시 | 서버 감사 기록(Cloud Logging) |
| 대상 식별값 | 요청문에서 뽑은 대상(이름·코드·ID), 쓰기 승인 시 체크된 행의 ID·이름·상태 | 계획·승인 시 | 감사 기록에는 HMAC 해시만 저장(복원 불가, 같은 값 검색만 가능) |
| 화면 주소·구조 | 현재 어드민 탭 주소, 팩 초안용 화면 구조(표 머리글·버튼 이름·입력 라벨·id/name·경로) | 요청 시·"화면 읽기" 시 | 감사 기록(주소), 팩(구조). 표 본문·입력값은 읽지 않음 |
| 팩 | 이용자가 만든 팩 JSON과 봉투(작성자 sub·가린 이메일·이름·팀, 버전, 공개 범위) | 저장 시 | Firestore packs·packVersions |
| 신고 | 신고 사유·내용(500자), 신고자 sub | 신고 시 | Firestore reports |
요청문에 섞일 수 있는 고객 개인정보(회원 아이디·회원번호·전화·이메일·주문번호 등)는 감사 기록에 저장되기 전에 ***로 가려집니다. 다만 판단을 위해 모델로 전송되는 요청문은 가려지지 않으므로(6절), 패널 입력창에 "고객 이름·전화번호·주소 같은 개인정보는 입력하지 마세요. 요청문은 마스킹되어 기록됩니다."를 상시 표시하고, 개인정보가 있는 어드민 화면은 별도 권한 없이는 조회를 잠급니다.
브라우저에 남는 설정값(chrome.storage.local): 서버 주소, 보조 모델 켬/끔, 팩 목록 사본, 팩 우선 설정. 쿠키는 쓰지 않습니다.
1. 이용자 확인과 접근 통제: 컬리 계정만 통과시키고, 쓰기·개인정보 화면 권한(grant)을 계정 단위로 판정합니다. 2. 요청 해석과 실행: 요청문을 모델로 분류해 어느 메뉴의 어떤 업무인지 정하고, 승인 뒤 실행합니다. 3. 감사와 부인 방지: 누가 언제 어떤 팩으로 무엇을 요청·승인·실행했는지 기록해 사고 조사·오남용 방지에 씁니다. 4. 팩 관리: 이용자가 만든 팩의 저장·공유·설치·신고·차단. 5. 서비스 운영: 장애 진단, 비용 집계(모델 호출 사용량).
| 항목 | 기간 | 근거·비고 |
|---|---|---|
| 세션 토큰 | 1시간(만료 10분 전 조용히 재발급). 브라우저 종료·확장 업데이트 시 즉시 소멸 | server/auth.mjs SESSION_TTL_MS |
| 계획 토큰 / 실행 토큰 | 5분 / 60초. 실행 토큰 사용 기록은 1회용 검증을 위해 서버에 남음 | server/tokens.mjs |
| 감사 기록(Cloud Logging) | 365일 [제안값 — 정보보안팀 협의로 확정. 전용 로그 버킷 생성 전에는 기본 30일] | 설계서 4.7 |
팩 버전(packVersions) | 365일(불변 보관) [제안값] | 사고 시점의 팩 복원 근거 |
| 팩·설치·권한·카운터·신고 | 이용 기간 동안. 팩 삭제는 삭제 표시 후 공개 범위 "나만"으로 전환(설치자의 고정 버전은 packVersions에 남음) | server/registry.mjs |
| 쓰기 권한(grant) | 발급 시 지정한 기간(1~90일), 만료 시 자동 무효 | server/registry.mjs addGrant |
| 모델 회사 보관 | 6절 |
서비스 종료·이관 시 Firestore 내보내기·로그 내보내기·비밀값 폐기 절차로 파기하거나 컬리 소유 프로젝트로 이관합니다. [자리표시자: 파기·이관 절차 문서(런북) 위치]
컬리 Jev는 개인정보를 제3자에게 "제공"(수신자의 자체 목적 이용)하지 않습니다. 아래는 원지랩스가 서비스 운영을 위해 다시 맡기는 처리(재위탁)이며, 일부는 국외에서 이루어집니다.
| 수탁자·재수탁자 | 위치 | 위탁 업무 | 전달 항목 | 데이터 정책(2026-09-22 확인) |
|---|---|---|---|---|
| 원지랩스(1zLabs) | 대한민국 | 중계 서버·저장소·로그 운영, 모델 호출 | 2절 전체 | 컬리와 처리 위탁 계약 [자리표시자] |
| Google Cloud(Cloud Run, Firestore, Secret Manager, Cloud Logging) | 대한민국 서울(asia-northeast3) | 서버 실행·데이터 저장·로그 보관 | 2절 전체(마스킹·해시 후) | Google Cloud 데이터 처리 부가조건 |
| Google(로그인) | Google 서비스 | 계정 확인(OpenID Connect, 범위 openid email profile) | 로그인 시 계정 선택 | Google 계정 약관 |
| Vercel(AI Gateway) → TypeSafe(Jev 모델) | 미국 | 요청문 분류·위험도 판단 | 요청문 원문, 메뉴·업무 설명 | TypeSafe는 입력을 학습에 쓰지 않음(설계서 확인). 무보존·학습 금지 요청 플래그는 설계에 있으나 코드 반영 전 [자리표시자: 반영일] |
| OpenAI(gpt-5.6-luna) | 미국 | 요청문에서 대상 값 추출·메뉴 힌트, Jev 장애 시 대체 판단 | 요청문 원문, 메뉴 목록 | API 입력을 학습에 쓰지 않음, 남용 감시 로그 최대 30일 보관(무보존 아님) |
| OpenRouter(예정) | 미국(Azure 무보존 경로 우선, 아시아 리전 없음) | OpenAI 경로 대체 | 위와 같음 | 무보존·데이터 수집 거부 설정 예정. 전환 시 본 방침 개정 |
국외 이전 항목: 요청문(고객 개인정보가 섞이지 않도록 입력 안내·잠금으로 통제)과 카탈로그 설명(개인정보 없음). 계정 정보·감사 기록·팩은 국내(서울)에만 저장됩니다.
server/pii.mjs)을 계획하고 있으나 0.2 코드에는 없습니다. [자리표시자: 반영 일정]kurlycorp.com 도메인 계정만 로그인. 서버가 Google 신원 토큰의 서명·발급자·대상·만료·도메인을 검사. 확장 ID 허용 목록으로 다른 확장의 호출 차단.[masked]로 대체.[자리표시자: 사내 고지문·동의서 양식(파일럿 참가자 3~5명 개별 동의 → 확대 전 전사 고지)][자리표시자: 컬리 정보보안·개인정보보호책임자에게 부여할 로그 조회 IAM 범위]chrome.storage.local(서버 주소, 보조 모델 설정, 팩 목록 사본, 팩 우선 설정), chrome.storage.session(세션 토큰). 확장을 제거하면 모두 삭제됩니다.| 역할 | 담당 | 연락처 |
|---|---|---|
| 컬리 개인정보보호책임자 | [자리표시자] | [자리표시자] |
| 컬리 AX센터(서비스 운영 담당) | [자리표시자] | [자리표시자: 코드의 #jev-support 채널 확정 후 기입] |
| 원지랩스(수탁자) 개인정보 담당 | [자리표시자] | [자리표시자] |
[자리표시자] / 공개 위치: [자리표시자: 1zlabs.com 아래 공개 URL — 크롬 웹 스토어와 Google 동의 화면에 공용]type(이벤트 종류), ts, requestId, traceId, actor{subHash, emailMasked, hd}, extVersion, pageUrl, messageMasked, packId, packDigest, intent, mode, trust, status, code, ms, model, jev{group, domain, operation, 확률·위험도}, targetHash, pii, grants, catalogPacks, 단계 이벤트(phase, step, state, ms, code, locatorKeys, strategy), 승인·실행 이벤트(count, bulkMax, buttonName, route, result). 이벤트 종류: auth.login/denied/logout, plan, plan.rejected, plan.fallback, approve.issued, run.commit, run.verify, pack.saved/shared/installed/uninstalled/copied/pinned/deleted/blocked/reported, admin.grant/killswitch/certify/team, probe.draft, client.*.