Skip to content

refactor(arch): 헥사고날 아키텍처 폴더 위치 정렬#50

Merged
ppzxc merged 3 commits into
mainfrom
feature/mv-folder
Mar 24, 2026
Merged

refactor(arch): 헥사고날 아키텍처 폴더 위치 정렬#50
ppzxc merged 3 commits into
mainfrom
feature/mv-folder

Conversation

@ppzxc

@ppzxc ppzxc commented Mar 24, 2026

Copy link
Copy Markdown
Owner

Summary

  • internal/apidocs/internal/adapter/input/http/apidocs/로 이동
  • internal/config/InMemoryRuleConfigReaderinternal/adapter/output/config/ (패키지명 outputconfig)로 이동

Motivation

헥사고날 아키텍처(Ports & Adapters) 원칙에 따라 각 컴포넌트를 올바른 레이어에 배치한다.

  • apidocs는 HTTP 입력 어댑터이므로 adapter/input/http/ 하위로 이동
  • InMemoryRuleConfigReader는 출력 포트(RuleConfigReader) 구현체이므로 adapter/output/ 하위로 이동

Changes

  • internal/apidocs/internal/adapter/input/http/apidocs/ (패키지명 유지)
  • internal/config/rule_config_reader.gointernal/adapter/output/config/ (패키지명 outputconfig)
  • cmd/server/main.go, test/e2e/e2e_test.go import 경로 업데이트

Test plan

  • 빌드 확인 (go build ./...)
  • 전체 테스트 통과 (go test -race ./... -timeout 60s)

@ppzxc ppzxc left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

구조적 변경만 포함된 깔끔한 리팩토링입니다. 동작 변경 없음 확인.

✅ apidocs HTTP 핸들러가 adapter/input/http 하위로 올바르게 배치됨
InMemoryRuleConfigReader가 출력 포트 구현체로 adapter/output/config에 정확히 위치
✅ hot-reload Update() 호출부 정상 작동 확인
✅ 해결된 RED 주석 제거

사소한 지적:
cmd/server/main.gooutputconfig import가 알파벳 순서상 filequeue 앞에 위치해야 함 (config < filequeue < mariadb < sqlite < webhook)

@ppzxc ppzxc merged commit e202569 into main Mar 24, 2026
1 of 2 checks passed
@ppzxc ppzxc deleted the feature/mv-folder branch March 24, 2026 05:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant