실계정 headful 폐루프와 백업 자동화 증거를 확정
This commit is contained in:
parent
b98eecbb36
commit
a479db7a5a
4 changed files with 28 additions and 4 deletions
|
|
@ -227,10 +227,11 @@
|
|||
- [x] 중복 활성 회기 14쌍·30행을 최신 유지 정책으로 종료(영수증 `receipts/stale-active-cleanup-20260901.csv`, 삭제 0) 후 마이그레이션 20/21/22 온라인 적용. mig22의 `name[]=text[]` 캐스트 결함 발견→`5a74302e` 교정. master에 게이트웨이 openai provider가 누락된 회귀 발견→구 운영 이미지에서 이식(`dce85620`, 테스트 71 passed)
|
||||
- [x] readiness: public health `ok·db/engine true·openai OK`, OpenAPI 200, `/auth/me` 401, dev-login 404, 컨테이너 healthy, 데이터 보존(app_user 1380/sessions 618/turns 1743/case_profile 565 전후 동일)
|
||||
|
||||
### A-3. 로그인·작동 E2E 검증 (실브라우저) — 진행 중
|
||||
### A-3. 로그인·작동 E2E 검증 (실브라우저) — **2026-09-01 완료 (전건 GREEN)**
|
||||
- [x] public 로그인 화면 렌더(단일 Google CTA·콘솔 오류는 예상된 401 1건) + OAuth redirect_uri `https://api-vignette.chanpaca.net/auth/callback`·PKCE S256 검증 — headful 브라우저
|
||||
- [ ] 실제 Google 계정 로그인→callback→회기·턴 생성(production DB mutation) — **소유자 창내 로그인 대기**(자격증명은 소유자 직접 입력)
|
||||
- [x] 배포 WEB: Pages production `9224a64b`, 새 entry `index-BFKGXJQi.js` 200·정상 MIME, 직전 entry `index-Bm30Ozeb.js` 200 보존(이전 세대 자산 175개 보존)
|
||||
- [x] 실제 Google 계정 로그인→callback→회기·턴 생성 완료 — 첫 시도에서 NAS env의 OAuth secret 오류(`invalid_client`)를 발견해 동작 실적 secret으로 교정 후 성공. headful 폐루프: 로그인(소유자 직접 입력)→기존 회기 20건 표시(이전 데이터 보존)→활성 회기 가드·시간 만료 fail-closed 확인→stale 회기 정식 종료→**새 사례(fresh case) 회기 생성(mig22 운영 실증)**→pre pulse 잠금→실턴 SSE·AI 내담자 응답→종료→리뷰 생성. DB 실증: sessions 618→619·turns 1743→1745·case_profile 565→566. 증거: `ops/evidence/prod-e2e-review-2026-09-01.png`
|
||||
- [x] 배포 WEB: Pages production `9224a64b`, 새 entry `index-BFKGXJQi.js` 200·정상 MIME, 직전 entry `index-Bm30Ozeb.js` 200 보존(이전 세대 자산 175개 보존). 관리자 콘솔 렌더·서비스 상태 5/5 확인
|
||||
- [x] **DB 백업 예약 실행 운영화(1단계)** — `db-backup` 사이드카(일일 pg_dump→`pg_restore -l` 검증→원자 게시, 14일 보존)를 정식 스택에 추가, 첫 자동 덤프 11,202,927B 성공. owner 비번-볼륨 불일치도 env와 일치화. 실패 알림·off-host 암호화 복제·restore drill 주기는 후속 게이트로 유지
|
||||
|
||||
### 잔여(재부팅 외) — 그대로 유지
|
||||
- [ ] 실배포 완료 전까지는 아래가 열린 게이트 유지: `public API/DB·아바타 정식 승격`, `G8 실DB/public 사람 게이트`,
|
||||
|
|
|
|||
|
|
@ -66,5 +66,28 @@
|
|||
"login_screen": "렌더 정상 (단일 Google CTA)",
|
||||
"console_errors": "비로그인 /auth/me 401 1건뿐 (예상 동작)",
|
||||
"oauth_redirect": "accounts.google.com, redirect_uri=https://api-vignette.chanpaca.net/auth/callback, PKCE S256, scope openid email profile"
|
||||
},
|
||||
"oauth_secret_fix": {
|
||||
"symptom": "google_oauth_callback_failed token_exchange_failed 401 invalid_client",
|
||||
"cause": "NAS env.nas의 OAUTH_GOOGLE_CLIENT_SECRET이 잘못된 값(secret sha16 ef2cc311c2f2ce39)",
|
||||
"fix": "동작 실적 있는 PC 런타임 env의 secret(sha16 77becad9b95f2131)으로 교체 후 api 재생성 — 로그인 성공",
|
||||
"backup": "private/env.nas.before-oauth-secret-fix-20260901"
|
||||
},
|
||||
"headful_closed_loop": {
|
||||
"login": "소유자 실제 Google 계정 로그인 (자격증명은 소유자 직접 입력) → auth_session 1건 생성, 관리자 권한 유지",
|
||||
"data_visibility": "기존 회기 20건 목록 표시 (7/13~8/31, 34턴·40턴 회기 포함) — 이전 데이터 보존 확인",
|
||||
"guards": "활성 회기 존재 시 새 사례 시작 차단 문구, 시간 만료 회기 유예 후 서버 발화 거부 (fail-closed)",
|
||||
"fresh_case": "P1 새 사례 시작 → session 9fb604a1-cb41-4138-bfee-b52b8475913e 생성 (migration 22 운영 실증)",
|
||||
"pre_pulse": "목표/과업/유대 3관점 잠금 후 첫 발화 준비",
|
||||
"turn": "학습자 발화 1건 → AI 내담자(P1 서연, openai 엔진) 응답 1건 SSE 수신·저장",
|
||||
"end_review": "회기 종료 → 리뷰 페이지 실제 축어록 2개 기반 생성, 탭 UI(축어록/피드백/워크시트) 정상",
|
||||
"db_delta": "sessions 618→619, turns 1743→1745, case_profile 565→566, 새 회기 ended_at 기록",
|
||||
"admin_console": "현재 서비스 상태·리소스 5/5 렌더, 페이지 오류 0",
|
||||
"screenshot": "prod-e2e-review-2026-09-01.png"
|
||||
},
|
||||
"backup_automation": {
|
||||
"service": "db-backup 사이드카 (postgres 이미지, 일일 pg_dump -Fc → pg_restore -l 검증 → 원자 mv, 보존 14일)",
|
||||
"first_dump": "vignette-20260901-033517.dump 11,202,927 bytes OK",
|
||||
"owner_password_alignment": "볼륨 실비번과 env.nas POSTGRES_PASSWORD 불일치를 ALTER ROLE로 일치화 (socket 경유)"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
BIN
docs/ops/evidence/prod-e2e-review-2026-09-01.png
Normal file
BIN
docs/ops/evidence/prod-e2e-review-2026-09-01.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.1 MiB |
Loading…
Add table
Add a link
Reference in a new issue