![[의존성의 방향을 따라 3/5] OpenRewrite와 Claude가 코드를 변환한다](https://flex.team/blog/og/main.jpg)
AI
[의존성의 방향을 따라 3/5] OpenRewrite와 Claude가 코드를 변환한다
두줄요약
OpenRewrite로 규칙 기반 변환을 먼저 적용하고, 실패한 빌드는 Claude가 보완했습니다. 빌드 가드레일 안에서 50개 레포를 안전하게 버전업하는 구조를 설명했습니다.
구조와 흐름
- Updater가 각 레포의 코드 변환을 맡고, OpenRewrite와 Claude를 역할 분담해 사용
- OpenRewrite는 AST 기반 결정론적 변환으로 공통 변경과 표준 마이그레이션 처리
- Claude는 빌드 실패나 규칙으로 표현하기 어려운 예외 수정에 투입되고, 결과는 빌드 가드레일로 검증
해결 방법
- init script로 각 레포 수정 없이 OpenRewrite를 외부 주입해 일괄 실행
- 공식 rewrite-spring과 내부 커스텀 rewrite-recipes를 조합해 조직 고유 변환까지 반영
- recipe를 테스트 가능, idempotent, compose 가능하게 설계해 안전성과 재사용성 확보
적용해볼 점
- 텍스트 치환보다 AST 기반 변환으로 오작동 범위 축소
- 비즈니스 판단이 필요한 변경은 AI에 맡기되 빌드 검증을 반드시 결합
- 반복 적용 가능한 recipe로 대규모 레포 업그레이드 자동화
