Files
jarca-ledger-mcp/docs/batches/bat-004_20260629_browser-streamlit-e2e-evidence/planning.md
T

1.9 KiB

BAT-004 Planning

구현 전략

  1. REQ-004를 Testing 요구사항으로 정리한다.
  2. 운영 DB와 실제 금융 파일을 배제한 synthetic fixture DB를 evidence script가 직접 생성한다.
  3. Streamlit은 JARCA_LEDGER_DB_PATH=<fixture.sqlite3>로 기동한다.
  4. /usr/bin/google-chrome-stable headless + Chrome DevTools Protocol로 대상 페이지를 열고, 화면 텍스트 로드 완료를 확인한 뒤 screenshot과 DOM snapshot을 저장한다.
  5. UI/dashboard 영향 batch의 QC gate 기준을 문서화한다.

Design Gate

  • Profile: batch-lite
  • 판단 근거: 신규 도메인 기능이나 DB schema 변경 없이 검증 스크립트와 문서 기준을 추가한다.
  • 설계 문서 별도 작성 여부: 별도 design.md는 만들지 않는다. 구현 결정은 이 planning 및 REQ-004에 충분히 국소적으로 기록한다.

Evidence Gate 기준

Batch 유형 최소 evidence Gate 판정
Streamlit UI 또는 dashboard/app.py 영향 Browser screenshot + DOM snapshot + manifest 누락 시 BLOCK 또는 재검증
비-UI service/MCP/parser 변경 pytest/py_compile 중심, browser evidence 선택 browser 누락은 비차단
docs-only 변경 문서 diff/review browser evidence 불필요
Chrome 환경 장애가 입증된 UI 변경 AppTest + HTTP 200 + 실패 원인 로그 PASS_WITH_NOTES만 허용

리스크와 완화

  • Chrome/DevTools 기동 실패: 실행 전 Chrome 경로를 검증하고 명확한 오류를 출력한다.
  • Streamlit 렌더링 지연: HTTP 200 대기 후 CDP에서 page 제목 텍스트가 실제 DOM에 나타날 때까지 대기한다.
  • 민감정보 노출: script가 기본 운영 DB 경로를 거부하고 synthetic fixture만 생성한다.
  • dependency 증가: Playwright/Selenium을 추가하지 않고 현재 dashboard extra에 이미 존재하는 websockets를 사용한다.