# ========================================================================
# S-CANVAS .gitignore
# ========================================================================

# ───────────────────────────────────────────────────────────────────────
# 1. 자격 증명 / 시크릿 (절대 커밋 금지)
# ───────────────────────────────────────────────────────────────────────
gcp-key.json
*-credentials.json
*-service-account.json
.env
.env.*
*.pem
*.key

# ───────────────────────────────────────────────────────────────────────
# 2. Python
# ───────────────────────────────────────────────────────────────────────
__pycache__/
*.py[cod]
*$py.class
*.so
*.egg
*.egg-info/
.Python
.pytest_cache/
.mypy_cache/
.ruff_cache/
.coverage
htmlcov/

# 가상환경
venv/
env/
.venv/
ENV/
.python-version

# ───────────────────────────────────────────────────────────────────────
# 3. PyInstaller 빌드 산출물
#   (scanvas_maker.spec, build.bat 은 추적 — 빌드 재현용)
# ───────────────────────────────────────────────────────────────────────
build/
dist/
*.manifest
# scanvas_maker.spec 외 자동 생성 spec 만 차단하려면 아래를 활성화:
# *.spec
# !scanvas_maker.spec

# ───────────────────────────────────────────────────────────────────────
# 4. 런타임 데이터 (DB · 로그 · 캐시)
# ───────────────────────────────────────────────────────────────────────
# SQLite Job 이력
*.db
*.db-journal
*.sqlite
*.sqlite3
scanvas_jobs.db
egview_jobs.db

# 로그
*.log
scanvas_harness.log
scanvas_diagnostic.log
egview_harness.log
egview_diagnostic.log
Build_log.txt

# DEM / 타일 / VLM 캐시
cache/
!cache/.gitkeep

# ───────────────────────────────────────────────────────────────────────
# 5. 런타임 생성 이미지 (Step 2~4 산출물)
#   매 실행 시 재생성 — 추적 불필요
# ───────────────────────────────────────────────────────────────────────
capture_for_ai.png
capture_textured.png
depth_map.png
lineart_map.png
guide_composite.png
rendered_birdseye.png
satellite_temp.png
error.png
error*.png

# ───────────────────────────────────────────────────────────────────────
# 6. 구버전 / 미사용 자료 (EG-VIEW 시절 잔존물)
# ───────────────────────────────────────────────────────────────────────
_unused/
SCREENSHOT_LOG/
scratch/

# ───────────────────────────────────────────────────────────────────────
# 7. 대용량 / 선택적 자산
# ───────────────────────────────────────────────────────────────────────
# 로컬 GeoTIFF DEM (NGII 5m 등) — 수백 MB
cache/dem/local.tif
*.tif
*.tiff
!Design/*.tif
!Design/*.tiff

# 대용량 DXF 샘플은 SAMPLE_CAD/ 하위만 추적, 그 외 *.dxf 는 차단하고 싶다면:
# *.dxf
# !SAMPLE_CAD/**/*.dxf

# ───────────────────────────────────────────────────────────────────────
# 8. IDE / 에디터 / AI 코딩 도구
# ───────────────────────────────────────────────────────────────────────
.vscode/
.idea/
*.swp
*.swo
*~
.cursorrules
.claude/
.aider*
.cursor/

# Jupyter
.ipynb_checkpoints/
*.ipynb_checkpoints

# ───────────────────────────────────────────────────────────────────────
# 9. OS 메타파일
# ───────────────────────────────────────────────────────────────────────
# Windows
Thumbs.db
ehthumbs.db
Desktop.ini
$RECYCLE.BIN/

# macOS
.DS_Store
.AppleDouble
.LSOverride
._*

# Linux
*~
.fuse_hidden*
.Trash-*

# ───────────────────────────────────────────────────────────────────────
# 10. 백업 / 임시
# ───────────────────────────────────────────────────────────────────────
*.bak
*.backup
*.orig
*.tmp
*.temp
~$*
