피드로 돌아가기
akm 0.6.0: Clean Break to Stash, Quieter CLI, Easier Migration
Dev.toDev.to
DevOps

도메인 모델 단일화를 통한 v1 대비 아키텍처 복잡도 제거 및 정교화

akm 0.6.0: Clean Break to Stash, Quieter CLI, Easier Migration

IT Lackey2026년 5월 5일5intermediate

Context

pre-v1 단계에서 'source', 'kit', 'stash'라는 세 가지 중복 용어가 혼재하여 데이터 모델의 모호성 발생. 이로 인해 문서화 비용이 증가하고 신규 기능 설계 시 일관성 없는 인터페이스가 채택되는 병목 지점 형성.

Technical Solution

  • 데이터 모델 내 콘텐츠 소스를 'stash'라는 단일 명사로 통합하여 Config, Wire format, CLI, Docs 간 인터페이스 일치
  • Registry Index Schema v3 도입을 통한 kits[] 필드 제거 및 stashes[] 필드 단일화로 데이터 전송 효율 최적화
  • stash.lock 파일을 akm.lock으로 변경하고 자동 복사 로직을 구현하여 사용자 마이그레이션 비용 최소화
  • boolean 타입의 disableGlobalStashes를 'merge' 또는 'replace' 전략을 선택하는 stashInheritance 열거형으로 확장하여 상속 제어 정밀도 향상
  • Workflow Parser에 서술형 문구 허용 로직을 추가하여 유효성 검사 오류를 방지하고 사용자 경험 개선

1. 도메인 모델 내 유사 개념이 중복 존재한다면 이를 단일 용어로 통합하는 Refactoring 검토

2. 단순 Boolean 플래그가 복잡한 동작을 제어한다면 전략 기반의 Enum 구조로 변경 고려

3. Breaking Change 도입 시 자동 마이그레이션 스크립트를 제공하여 사용자 이탈 방지

원문 읽기