작성자: 이소윤
1. 오늘의 목표 (Plan)
- [x] 필요하면 SQLite 유지 여부를 다시 판단하고, 운영/데모 단계에서 중앙 DB가 필요한지 결정한다.
- [ ] 모바일 온보딩 전체 플로우를 1페이지부터 다시 확인하고, 레이아웃/상태 표시의 잔여 이슈를 점검한다.
- [x] OAuth, 업로드, tracing이 실제 운영 경로에서 모두 이어지는지 end-to-end로 확인한다.
- [x] VM에서 Caddy/systemd 기준 공개 경로를 실제로 올리고 HTTPS/PWA 설치 동작을 점검한다.
- [x] merge/main 최신 기준으로 merge/dev를 만들고, 기존 codex/infra에서 작업한 운영/모바일 기능을 필요한 범위만 이식한다.
- [x] Langfuse client_id 추적과 모바일 워커 구조 문서를 정리한다.
2. 오늘 내가 한 일 (Work Done)
- [6cd2e42] mobile_app.py와 worker_api.py 기반 이미지 생성 워크플로우를 docs/mobile_worker_workflow.md로 정리했다. Langfuse에서 어떤 단계가 trace/span으로 남는지도 문서에 추가했다. <- 모바일 워커 구조 문서화
- [1e5f044] merge/main 최신 기준으로 merge/dev 브랜치를 만들고, codex/infra의 Langfuse browser identity 태깅, BREWGRAM_WORKER.md, 신상품 여부 선결정 UI 규칙을 이식했다. 테스트는 전체 161 passed로 확인했다. <- merge/dev 통합
- [25ed53b] Playwright를 직접 의존성으로 추가하고, 배포 스크립트에서 uv sync 후 playwright install chromium이 실행되도록 반영했다. GitHub Actions 트리거도 merge/dev 기준으로 맞췄다. <- VM 캡처 의존성 보강
- [비커밋 성과] VM에서 mobile_app.py를 nohup/foreground 방식으로 실행하는 절차를 정리했고, IMAGE_BACKEND_KIND=openai_image일 때는 worker_api.py가 필요 없다는 점을 확인했다.
- [비커밋 성과] /srv/brewgram/data/history.db 삭제 후 새 온보딩을 실행해, 기존 DB 재사용 문제가 아니라 신규 생성된 브랜드 데이터임을 확인했다.
- [실패/학습] Instagram 참조 URL 캡처가 VM에서 429 오류 화면으로 저장되는 현상을 재현했다. curl -IL 결과상 VM 요청은 Instagram 로그인 경로로 리다이렉트된 뒤 429가 발생했고, 로컬 맥에서는 200이 나와 VM/데이터센터 IP 및 자동화 브라우저 영향 가능성이 높다고 판단했다.
🌟 오늘 팀에 기여한 부분
- VM 실행 자동화를 Github Actions와 연동하려 했으나, admin 권한 부여가 안되고 깃허브 소유자 팀원이 바빠서 끝까지 하지는 못했다.