Files
project-base/.gitignore
T
ttipo c5d165275c feat: 응답 계약 정의와 페이지네이션·추적 ID 추가
세 클라이언트가 공유하는 계약 중 정의가 빠져 있던 부분을 채운다.

- 목록 응답 형태를 {items, pageInfo} 로 고정하고 커서/오프셋 쿼리 DTO 제공
- @SkipTransform() 으로 스트림·204 등 래핑하면 안 되는 응답을 제외
- ApiStandardResponse/ApiErrorResponse 로 Swagger 문서를 실응답과 일치시킴
  (컨트롤러는 raw 를 반환하지만 실제 응답은 래핑되어 문서가 어긋나 있었다)
- RequestIdMiddleware 로 모든 요청에 x-request-id 부여
- API 설계 규약(api-design.md) 신설 — REST 경로·쿼리·날짜/ID 표현·버전 관리

또한 .gitignore 의 data/ 패턴이 모든 depth 에 매칭되어
flutter/lib/features/user/data/ 의 소스가 커밋되지 않던 문제를 함께 고친다.
(user_provider.dart 가 import 하는 파일이 저장소에 없어 flutter analyze 가 깨져 있었다)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-17 14:30:07 +09:00

55 lines
1.2 KiB
Plaintext

# ==========================================
# 환경 변수 (민감정보) — 절대 커밋 금지
# ==========================================
.env
.env.*
!.env.example
!.env.*.example
# ==========================================
# 도커 영속 데이터
# ==========================================
# ⚠️ 루트 기준으로 고정한다(앞의 /). 'data/' 로 두면 모든 depth 의 data 디렉터리가 무시되어
# flutter/lib/features/<도메인>/data/ 같은 소스 코드까지 커밋되지 않는다.
/data/
!/data/.gitkeep
/db-data/
/redis-data/
# ==========================================
# 의존성/빌드 산출물
# ==========================================
node_modules/
dist/
build/
coverage/
.tsbuildinfo
*.tsbuildinfo
# ==========================================
# 로그
# ==========================================
logs/
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# ==========================================
# IDE / OS
# ==========================================
.idea/
.vscode/*
!.vscode/extensions.json
!.vscode/settings.json
.DS_Store
Thumbs.db
# ==========================================
# 캐시
# ==========================================
.cache/
.eslintcache
.npm/