70 lines
4.2 KiB
Markdown
70 lines
4.2 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:
|
|
- '[완료 2026-06-29] 실환경 스모크 PASS — 사용자가 로그인 후 더미 게임 좋아요 클릭 → 탐색 목록 카운트 반영 확인. (docker compose dev override 환경)'
|
|
- '(잔여) game_likes UNIQUE 마이그레이션 운영 적용 — 중복 점검 후, DB 스키마 변경이라 사용자 확인 게이트.'
|
|
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
|