## 작업 유형 developer-experience ## 왜 필요한가요? - `npm run build`가 `next/font/google`의 JetBrains Mono fetch 실패로 외부 네트워크에 의존한다. - Next.js 16에서 `middleware.ts` file convention이 deprecated 되어 build 신호 품질이 떨어진다. - `NEXT_PUBLIC_BASE_URL`, `NEXT_PUBLIC_API_URL` 참조 정책이 파일마다 달라 하네스와 로컬 실행 전제조건이 흔들린다. ## 작업 범위 - route: root layout, sitemap, user OG image, login/user badge 관련 URL 참조 - component: build/runtime env를 참조하는 최소 consumer 정리 - hook/store: 없음 - test/harness: local font asset 추가, `proxy.ts` 전환, env helper/README/.env.example 정리 ## 완료 조건 - [ ] JetBrains Mono가 로컬 font asset으로 전환되어 `npm run build`가 외부 font fetch 없이 성공한다. - [ ] `middleware.ts`가 `proxy.ts`로 전환되어 deprecated 경고가 제거된다. - [ ] `NEXT_PUBLIC_BASE_URL`, `NEXT_PUBLIC_API_URL`가 공용 helper 기준 필수 env로 정리된다. - [ ] README와 `.env.example`에 로컬/프로덕션 실행 전제조건이 문서화된다. ## 검증 방법 - `npm run lint` - `npx tsc --noEmit` - `npm run build` - 관련 문서/설정 diff 확인 ## 리스크 및 의존성 - 리스크: 폰트 자산 추가 시 시각적 회귀 가능성, env fail-fast 도입으로 기존 암묵적 fallback 제거 - 백엔드 의존성: 로컬 실행 시 `NEXT_PUBLIC_API_URL=http://localhost:8080` 필요 - 후속 작업: `GRC-04` Playwright harness 도입 전에 build/runtime 기준선 재사용
작업 유형
developer-experience
왜 필요한가요?
npm run build가next/font/google의 JetBrains Mono fetch 실패로 외부 네트워크에 의존한다.middleware.tsfile convention이 deprecated 되어 build 신호 품질이 떨어진다.NEXT_PUBLIC_BASE_URL,NEXT_PUBLIC_API_URL참조 정책이 파일마다 달라 하네스와 로컬 실행 전제조건이 흔들린다.작업 범위
proxy.ts전환, env helper/README/.env.example 정리완료 조건
npm run build가 외부 font fetch 없이 성공한다.middleware.ts가proxy.ts로 전환되어 deprecated 경고가 제거된다.NEXT_PUBLIC_BASE_URL,NEXT_PUBLIC_API_URL가 공용 helper 기준 필수 env로 정리된다..env.example에 로컬/프로덕션 실행 전제조건이 문서화된다.검증 방법
npm run lintnpx tsc --noEmitnpm run build리스크 및 의존성
NEXT_PUBLIC_API_URL=http://localhost:8080필요GRC-04Playwright harness 도입 전에 build/runtime 기준선 재사용