bibimbap/.atp/work-session/20260629-171042/report.md

69 lines
4.1 KiB
Markdown

---
schema_version: 2
sid: 20260629-171042
started_at: 2026-06-29T17:10:42+09:00
ended_at: 2026-06-29T17:14:00+09:00
verified_by_me:
code_change: '없음 (docs-only) — verification/graph-refresh 비해당'
doc_change: 'docs/development/local-dev-setup.md 에 "코드·JSP 변경 후 재빌드·재시작" 함정 섹션 추가'
needs_user_verification:
- '앱 재배포 완료(orchestrator 수행, 신 PID 99638 라이브). 사용자 최종 스모크: 테스트계정 로그인 → 더미 게임 상세 좋아요 → 새로고침·탐색 목록에서 카운트 유지 확인. 미로그인 클릭은 이제 401(정상).'
retrospective:
lesson: 'handoff-committed-code-needs-rebuild-restart-step (memory 기록 + 가이드 docs-sync)'
signal_source: negative
user_request: |
테스트계정의 테스트 게임(더미)에서 좋아요를 테스트하는데 안 됨.
(직전 세션 20260629-151216 좋아요 서버 영속화 수정의 실환경 스모크 실패)
related_session: 20260629-151216
invocations: []
decisions:
- id: D1
axis: 'dev 앱 구동 방식'
choice: 'spring-boot:run(호스트 JVM) → docker compose app 컨테이너 전환'
decided_by: user
at: 2026-06-29T17:28:00+09:00
note: |
docker compose build app (이미지 빌드 성공) → 호스트 PID 99638 종료 → docker compose up -d app.
bibimbap-app Up(8080), Started BibimbapApplication, db 서비스(schema dev) 연결. 더미 데이터 동일.
스모크: POST /game/1/like→403, GET /→200.
이후 코드 변경 재배포 = docker compose up -d --build app (가이드 compose 행 참조).
주의: db 볼륨 기존 init(12일 전) 이라 schema.sql 의 UNIQUE 변경은 미적용 — 별도 마이그레이션 항목.
user_signals:
positive: []
negative:
- signal: '"애초에 니가 해줬어야함. 안했다면 가이드에 기재할것" — 좋아요 수정 후 돌던 dev 앱 재빌드/재시작을 orchestrator 가 안 했고, 그 필요성도 needs_user_verification 에 명시 안 함'
structural: true
class: '코드 검증(컨테이너 L1)과 실행중 앱 반영 사이 갭 — verified_by_me 는 PASS 였으나 사용자가 보는 실행 인스턴스에 미반영. 재배포 단계 누락 + 미고지'
note: '증상(로그아웃인데 좋아요 눌리고 목록 0)이 구 localStorage JSP = 미재배포 확증. 코드 결함 아님.'
diagnosis:
root_cause: '돌고 있는 dev 앱이 구 버전(수정 커밋 fa6a301 미반영). 증상=수정 전 localStorage 동작 그대로.'
evidence: '로그아웃 상태에서 좋아요가 클라이언트 토글되고 목록 카운트 0 그대로 = 신 JSP(서버 fetch+401) 아님 = 구 JSP 서빙 중.'
not_a_bug: '신 코드는 L1 PASS. game_likes/like_count/엔드포인트 정상. 재배포만 필요.'
resolution: |
구동 방식 실측: spring-boot:run (homebrew openjdk@21, target/classes, --spring.profiles.active=dev), IDE 아님.
orchestrator 가 재배포 수행: 오프라인 재컴파일 → 구 프로세스 종료(PID 52251) → spring-boot:run 재기동(신 PID 99638).
라이브 확인: POST /game/1/like (CSRF 없음) → HTTP 403 (신 엔드포인트 존재 확정. 구앱이면 404), GET / → 200.
(중간 오발견: javap 를 JAVA_HOME 없이 실행해 "toggleLike 없음"으로 오독 → 소스/커밋/클래스 재확인으로 정정. 코드 정상.)
open_items: []
---
# Advisor Invocation Decision Log
- advisor: requirements-advisor
decision: skip
rationale: '버그 진단 세션. 증상 양상 확정이 먼저 — AskUserQuestion 으로 직접 수렴.'
checked_at: 2026-06-29T17:11:00+09:00
# 초기 가설 (확정 전)
- H1 (유력): 앱 미재빌드/미재시작 — 변경(toggleLike 엔드포인트 + 신 JSP)이 커밋만 됐고 돌고 있는 dev 앱은 구 WAR. 증상이 수정 전과 동일할 것.
- H2: 미로그인 상태 → 401.
- H3: 더미 게임이 실제 games row 임은 확인(seed-dev.sql, is_visible=true) → 404 카탈로그 폴백 이론 약함.
- H4: game_likes/like_count 스키마·seed 이슈 (UNIQUE 미적용은 기능 차단 아님).
# Summary
(진행 중)
# Invocations
# Decisions