nomadcode/agent-ops/rules/project/domain/http-api/rules.md
2026-05-19 10:27:13 +09:00

38 lines
1.1 KiB
Markdown

# http-api
## 목적 / 책임
HTTP routing, middleware, handler, server entrypoint를 담당한다.
## 포함 경로
- `internal/http/` — router, middleware, handler
- `cmd/server/` — 서버 실행 진입점
## 제외 경로
- `internal/workflow/` — 업무 유스케이스
- `internal/storage/` — DB 접근
- `internal/scheduler/` — job queue 실행
## 주요 구성 요소
- `NewRouter` — chi router 구성
- `Handler` — HTTP 요청을 workflow 호출로 변환
- `loggingMiddleware` — 요청 로그 처리
- `cmd/server/main.go` — 의존성 조립과 서버 실행
## 유지할 패턴
- handler는 입력 파싱, 응답 변환, 에러 매핑에 집중한다.
- 업무 규칙은 workflow service에 위임한다.
## 다른 도메인과의 경계
- **workflow**: API endpoint는 workflow service를 통해 유스케이스를 실행한다.
- **persistence/scheduler**: HTTP 계층에서 DB나 River client를 직접 조작하지 않는다.
## 금지 사항
- HTTP handler에 상태 전이 규칙을 중복 구현하지 않는다.
- router에 외부 adapter 호출 로직을 직접 넣지 않는다.