diff --git a/docs/decisions/jev-client-affect.md b/docs/decisions/jev-client-affect.md index 0f37d0c..4d46e70 100644 --- a/docs/decisions/jev-client-affect.md +++ b/docs/decisions/jev-client-affect.md @@ -82,3 +82,7 @@ `USER-LATENCY`는 JEV-001 하위 열린 항목이다. CUA click→reply 도구 관측상한은 T1 7392ms와 T2 13202ms였으나 도구 호출 사이 공백을 포함하므로 정확한 지연이 아니며, T3 UI 관측값은 5001ms였다. audit은 client 3983/3387/3694ms와 Jev 498/316/318ms를 기록했고, 기존 P1 privacy 원문 미조회 비교는 client 3239ms·Jev 470ms였다. 현재는 전체 출력 검사 뒤 글을 표시하고, DB 저장 완료 뒤 음성 요청→서버 전량 수신→브라우저 전량 decode 뒤 재생한다. 첫 발화의 캐시 원인은 단정하지 않는다. 이 표본은 성능 통계나 기준 모델 대비 우위가 아니며 사용자 체감 속도가 해결됐거나 빨라졌다고 주장하지 않는다. 실제 경로의 text display·voice onset·완료 준비를 분리 측정하고 안전 검사를 유지한 최적화로 닫는다. 운영 API 기동 로그에는 기존 G6 background 연구 producer의 `SupervisionResearchConflictError` 1건이 관측됐다. producer는 cohort별 예외를 격리해 계속 실행했고 Jev·세션 경로와 분리되며, 이번 배포 diff에는 해당 producer·store 변경이 없다. 따라서 이번 Jev 배포 회귀로 단정하지 않지만 전체 운영 기능 정상 주장을 하지 않는다. 열린 항목 `G6-PRODUCER-CONFLICT`는 기존 submission id와 content hash를 읽기 전용으로 대조하고, 같은 id 재실행의 idempotency 충돌을 해소한 뒤 해당 테스트와 실제 cycle 성공으로 닫는다. + +### 2026-09-23 현재 runtime 재검증 + +[Runtime 재검증 영수증](../ops/evidence/jev-runtime-verification-2026-09-23.json)은 배포 컨테이너와 로컬의 Jev 관련 소스 4개 hash 일치, 과거 2회기의 9축 감정 상태와 OpenRouter audit 교집합, 그리고 독립 공유 adapter의 새 9축 호출(472ms)을 분리해 기록한다. 과거 audit은 새 호출이 아니며 독립 호출도 생성·DB·audit 저장을 검증하지 않는다. 구현·runtime 연결은 수용하되 한국어 품질·전체 지연·품질 승격 게이트는 계속 열린다. diff --git a/docs/dev_dashboard.html b/docs/dev_dashboard.html index 06b4700..50c41ca 100644 --- a/docs/dev_dashboard.html +++ b/docs/dev_dashboard.html @@ -303,7 +303,7 @@
실배포 CUA 128: 카탈로그는 생성됐지만 전체 검증은 미완료다. H09(기록 검색·필터 복귀)는 SHA `1306c524`에서 PASS로 재확인했고 T18(감독·연구 drilldown)은 수정 배포 뒤에도 learner 브라우저만 있어 RED를 종결하지 않았다. 관리자와 일반 학습자 로그인에서 학습자의 `/admin`·`/teach`→`/learn` 차단, P4 추천·R09 잠금·R14 워크시트 보존을 확인했다. 순수 teacher·OFF 계정, 교수자 쓰기, 모바일과 독립 관찰자 공개 검증은 남아 있다.
2026-09-12 비넷 UX 감사: DONE · 로컬 시각 검수 수용. 역할별 메뉴·모바일 라벨, 학습자 정보 위계와 긴 목록, 상담 시작 버튼 겹침, 교수·관리자 표의 넘침, 설정과 약관 배치를 수정했다. 전체 레이아웃 15 passed, 마지막 관리자 폭 보정 후 2 passed, 회기 8 passed, 접근성 44개(38+6) 통과와 직접 이미지 검수를 수용했다. 상세 판정·반려 기록·실제 API와 fixture 증거 경계는 감사 기록에 있다. 이후 SHA e8b770e4d9023238bf210b412de75dcb98bfc08e는 Forgejo master에 push했고, 17:55:31 KST 배포 시작 뒤 Pages 공개 배포와 NAS web 전용 교체를 18:06 KST까지 완료했다. API·engine·DB는 유지했다. 인증 내부 UI는 401 세션 만료로 미검증이므로 전체 운영 내부 화면 GREEN이나 전체 기능 출시 완료를 뜻하지 않으며 배포 현황을 따른다.
JEV-001 가상 내담자 감정 판단: 운영 runtime 수용·품질 승격 검증 중. API 1172 passed·1 skipped·0 failed, gateway 82 passed, web typecheck·build·API types 통과와 NAS 합성·인증 브라우저 3턴 runtime, 새로고침 6발화 복원·실제 6발화 review 요약·deep-loop 완료·DB 9축 감정 영속화를 수용했다. 공개 main JS와 health, /sessions CORS preflight는 200이고 Jev가 configured지만, 독립 한국어 품질 평가·성능 우위·정확도·사용자 체감 지연 개선·DONE 주장은 보류한다. 코드 기본값 legacy를 유지하며 SHA 969d9e2c3c94b4f3356defbf02bc863e1c8e30e1와 API image를 적용했다. 배포 중 일시 502가 있어 무중단을 주장하지 않으며, 상세 수용/반려와 다음 게이트는 Jev 결정문을 따른다.
JEV-001 가상 내담자 감정 판단: 운영 runtime 수용·품질 승격 검증 중. API 1172 passed·1 skipped·0 failed, gateway 82 passed, web typecheck·build·API types 통과와 NAS 합성·인증 브라우저 3턴 runtime, 새로고침 6발화 복원·실제 6발화 review 요약·deep-loop 완료·DB 9축 감정 영속화를 수용했다. 공개 main JS와 health, /sessions CORS preflight는 200이고 Jev가 configured지만, 독립 한국어 품질 평가·성능 우위·정확도·사용자 체감 지연 개선·DONE 주장은 보류한다. 코드 기본값 legacy를 유지하며 SHA 969d9e2c3c94b4f3356defbf02bc863e1c8e30e1와 API image를 적용했다. 배포 중 일시 502가 있어 무중단을 주장하지 않으며, 상세 수용/반려와 다음 게이트는 Jev 결정문을 따른다. 2026-09-23 runtime 재검증 영수증은 소스 4개 hash 일치·과거 DB/audit 교집합·독립 공유 adapter의 9축 호출을 수용하되, 한국어 품질·전체 지연·품질 승격을 증명하지 않는다.
G6-PRODUCER-CONFLICT: API 기동 중 기존 background 연구 producer의 SupervisionResearchConflictError 1건을 관측했다. Jev·세션 경로와 분리됐고 이번 배포 diff에 producer·store 변경이 없어 배포 회귀로 단정하지 않는다. 다음은 기존 submission id/content hash의 읽기 전용 대조, idempotency 충돌 해소, 해당 테스트와 실제 cycle 성공이다.
ADMIN-OPENROUTER-001: API/web 복구·배포 수용 · OAuth finish 대기. 관리자 OpenRouter 복구의 SQL 수정은 실제 PostgreSQL 임시 테이블 rollback으로 확인했고 API 1173 passed·1 skipped·0 failed, 웹 정적 검증과 focused 선택 16개도 통과했다. NAS web·Pages 배포, public HTML/entry와 health 200, 이전 자산 174개 추가 보존·수집 실패 0, 공개 관리자 UI의 ready·복구 화면 없음·gpt-5.6-terra 유지를 수용했다. OpenRouter UI는 미연결이며 health의 Jev live_verified=false는 live 검증이 아니다. 남은 조건은 새 사용자 OAuth finish 성공 관측뿐이며, 전체 GREEN은 주장하지 않는다. 상세는 운영 영수증을 따른다.
2026-08-31 배포 파이프라인 재정립(역사 기록): git 관리·배포는 git.chanpaca.net(Forgejo) 중심으로 이관했고, github.com(origin)은 private 백업/미러로 유지한다. 배포 대상은 NAS Production(docker-compose.nas.yml, vignette-prod)이며 이 PC는 개발용이다. Cloudflare tunnel은 NAS ingress의 현재 경로이므로 대체 ingress 검증 전에는 제거하지 않는다. 문서 deployment-pipeline.md.