# 2026-06-29 B2·B4·FE 작업 세션 핸드오프

**sid**: 20260629-175705 (resumed from 20260629-174807)
**완료 상태**: 3트랙 모두 완료·검증
**브랜치**: feat/v2
**최종 테스트**: `mvn test` 361 PASS

## 완료된 트랙

### B2 — 프로토타입 dead code 제거

- abstracts/ 패키지 4파일 삭제.
- fragments/header.jspf 삭제.
- game/GameCatalog.java 삭제.
- GameController.gameDetail() fallback 제거 → 없는 게임 ID = HTTP 404.
- ApiExceptionControllerAdvice에 ResponseStatusException 핸들러 추가(404 status 보존).
- GameLikeControllerTest.gameDetailThrowsNotFoundWhenGameMissing 추가.
- 런타임 스모크: /game/99999=404, /game/3=200.

### B4 — 의존성/세션/운영 하드닝

- Spring Boot 3.5.14-SNAPSHOT → 3.5.16 GA.
- pom에서 spring-snapshots repository·pluginRepository 제거.
- OWASP dependency-check-maven 12.2.2 비bind 추가.
- application.properties: ibatis TRACE→WARN, HttpOnly·SameSite=Lax 추가.
- application-dev.properties 신규(ibatis TRACE).
- application-live.properties 신규(cookie.secure=true).
- 런타임 Set-Cookie 확인 완료.

### FE — 프론트엔드 디자인 개선

- index 검색 `<details>` 접이식(prefill 시 open).
- 다크모드 input 테두리 대비 강화(login·signup·index·game-detail).
- 체크박스 터치타깃 1.15rem(login·signup).
- 브라우저 스모크 확인.

## 주요 결정

| ID | 결정 |
| --- | --- |
| D-B2-404 | 없는 게임 ID = HTTP 404 (ResponseStatusException(NOT_FOUND)). 사용자 확정. |
| D-B4-cve | CVE 스캔 = OWASP Dependency-Check 비bind. autoUpdate=false, CVSS>=7 실패. 사용자 확정. |
| D-B4-multipart | multipart 1GB 유지. 리스크 문서화: docs/security/multipart-size-risk.md. 사용자 확정. |
| D-B4-cfgloc | application-{profile}.properties 신규. db.properties 공존. |
| D-test-mockfix | BibimbapApplicationTests GameLikesMapper @MockBean 누락(B3 사전결함) 1줄 보강. |

## 이월 없음

이번 세션의 open_items(dev override online prefetch 함정)는 development/local-dev-setup.md에 노트 추가 완료.

## 참조

- 구현 이력: [changes/2026-06-29-b2-b4-fe-hardening.md](../changes/2026-06-29-b2-b4-fe-hardening.md)
- 보안 체크리스트: [security/security-remediation-checklist.md](../security/security-remediation-checklist.md)
- OWASP DC: [security/owasp-dependency-check-guide.md](../security/owasp-dependency-check-guide.md)
- Multipart 리스크: [security/multipart-size-risk.md](../security/multipart-size-risk.md)
