{ "$schema": "evidence/v1", "id": "public-domain-readonly-browser-2026-08-31", "title": "public 도메인 읽기 전용 브라우저 폐루프 실측 (production, 이 PC와 분리 확인)", "date": "2026-08-31", "operator": "agent (read-only, production DB 미접촉)", "scope": "읽기 전용. 사용자 계정 로그인/회기·턴 생성(production DB mutation) 없음. 배포·설정 변경 없음.", "targets": { "public_web": "https://vignette.chanpaca.net/login", "public_api": "https://api-vignette.chanpaca.net" }, "method": "Playwright 1.61.1 chromium (desktop 1440x900 / mobile 390x844) + curl/HTTP 실측", "evidence": { "playingwright_public_login_spec": { "spec": "e2e/auth.spec.ts :: keeps the public login screen on real Google OAuth only", "result": "1 passed (9.1s)", "verified": [ "GET api-vignette.chanpaca.net/auth/config -> google_oauth_configured=true, dev_login_enabled=false, allowed_email_domains=[]", "vignette.chanpaca.net/login -> Google 로그인 버튼(.lg-obtn) 1개, dev 로그인 요소 0, 'Google OAuth is not configured' 없음", "Google 버튼 클릭 -> accounts.google.com 이동, client_id 포함", "redirect_uri=https%3A%2F%2Fapi-vignette.chanpaca.net%2Fauth%2Fcallback" ] }, "production_render_probe": { "desktop_mobile_http": [200, 200], "has_google_button": true, "title": "Vignette · 상담 시뮬레이션", "heading": "실제 계정으로 들어가고, 실제 회기만 남깁니다.", "has_logo": true, "has_error_text_fallback": false, "console_page_errors_beyond_expected_auth": [], "only_401": { "request": "GET https://api-vignette.chanpaca.net/auth/me", "reason": "비로그인 방문자 조회로 반환되는 정상 인증 경계 401 (로그인 페이지가 미인증 상태를 판별해 Google 버튼 표시)" } }, "public_api_health_x3": [ "200 status=ok environment=prod db=true engine=true engine_mode=openai" ], "serving_identity": { "dns": ["104.21.33.204", "172.67.149.131", "2606:4700:3030::6815:21cc", "2606:4700:3030::ac43:9583"], "header_server": "cloudflare", "cf_ray": "a33aa06b4c5ee9e1-LAX", "conclusion": "이 PC가 아닌 별도 호스트(Cloudflare 뒤)가 서빙. 이 PC에는 cloudflared 프로세스 없음(확인) -> 이 PC와 정식 분리 운영" }, "this_pc_state": { "cloudflared_process": "absent", "local_api_8001_listener": "absent", "scheduledTasks": { "VignettePublicRuntime": "Disabled", "VignettePublicRuntimeWatchdog": "Disabled" }, "containers": "vignette-dev-db (up, 55432)", "note": "개발 워크스테이션 (과거 자택 public 호스트 경로의 잔여 상태). 이 PC 로컬 상태는 public 도메인 장애가 아님." } }, "conclusion": { "closed_readonly": "public 도메인(production)은 별도 호스트에서 정상 서빙 중. 실브라우저 로그인 화면·Google OAuth redirect_uri·개발 로그인 차단이 읽기 전용으로 실증됨. 이 PC와 정식 분리 운영이 실측으로 확인됨.", "open_gate": "실제 Google 계정 로그인 -> 인증 callback -> 관리자/P20 실제 회기·턴 생성(production DB mutation)은 사용자(소유자) 승인과 계정 세션(storageState)이 필요해 여전히 열린 게이트. production DB mutation 없이는 read-only로는 증명 불가." }, "screen_captures": [ "apps/web/node_modules/.tmp/public-login-desktop.png", "apps/web/node_modules/.tmp/public-login-mobile.png" ] }