← 목록으로

개발가이드/sattie-maintainer-guide.md


SATTIE 유지보수 개발자 가이드

1. 문서 목적

2. 기술 스택/실행

./venv/bin/uvicorn app.sattie_api:app --reload --host 0.0.0.0 --port 6001

3. 디렉터리 구조

4. 생성기 설계(핵심)

4.1 랜덤 생성기

4.2 OSM 생성기

5. 레벨/포맷 규칙

6. UI-API 연계 포인트

7. 저장소/데이터 모델

7.1 랜덤 저장소

7.2 OSM 저장소

8. 운영 명령/검증 절차

8.1 기본 검증

python3 -m py_compile app/core.py app/sattie_api.py

8.2 서버 상태 확인

curl -s http://127.0.0.1:6001/health

8.3 문서 반영 확인

curl -s http://127.0.0.1:6001/openapi.json | jq '.paths["/osm/images/generate"].post.parameters'

9. 트러블슈팅

9.1 FastAPI Invalid args for response field

9.2 OSM 생성 실패(502)

9.3 TIFF 미리보기 깨짐

9.4 Swagger 문구가 즉시 안 바뀜

10. 변경 가이드

10.1 새 포맷 추가

  1. app/core.py의 포맷 검증/확장자 매핑 업데이트
  2. 생성 로직(_make_dummy_image 또는 OSM 생성 분기) 추가
  3. OpenAPI 설명 문구 업데이트 (app/sattie_api.py)
  4. UI 필터 옵션/설명 업데이트 (app/ui/index.html, app/ui/app.js)

10.2 새 레벨 추가

  1. 레벨 enum/정규식/매핑 수정
  2. 생성기(랜덤/OSM) 둘 다 반영
  3. 목록/다운로드/미리보기 엔드포인트 level 검증 수정
  4. UI 단계 가이드, 통계 카드 수정

10.3 Provider(예: Google) 추가 검토

11. 권장 품질 체크리스트

12. 현재 주의사항