디자인 결정 기록
DDR-01 · 초기 웹의 구성을 브랜드 기준으로 유지한다
- 결정: 사진·박스형 로고·흰 카드·회색 운영 배경·분할 로그인과 붉은 예약 CTA를 원본과 맞춘다.
- 근거: R1 사용자가 지정한 초기 React 화면과 실제 360/1024/1440 비교 캡처. 홈페이지 1440에서는 전체 높이 2736과 주요 구획을 대조했다.
- 기각: 기본 CoUI 데모 테마를 그대로 제품 스타일로 사용한다.
- 가역성: 중앙 AppTheme와 사이트 CoreComponentTheme에서 조정한다.
- 신뢰도: high.
DDR-02 · 작은 흰 CTA 글자의 대비를 보장한다
- 결정: Flutter primary를 #e2222f로 미세 조정한다. 장식용 큰 브랜드 글자는 원본 #e52330을 유지한다.
- 근거: R4 CoreContrast 원색 4.438:1, 조정색 4.548:1. 라이트·다크 6개 역할 조합의 실제 대비 테스트가 통과했다.
- 기각: 실패한 대비를 반올림해 AA 통과로 보고한다.
- 가역성: package/resources의 중앙 색상 슬롯만 바꾼다.
- 신뢰도: high.
DDR-03 · 발행된 라이브러리의 차이를 공개한다
- 결정: Figma는 발행 CoUI 인스턴스와 기존 토큰으로 조립하고, 정확한 브랜드 팔레트와 이탤릭 로고 글꼴 차이는 L1로 추적한다.
- 근거: R2 연결 라이브러리에는 정확한 SONAX 팔레트와 로고 이탤릭 스타일이 없다. 편집 가능한 박스형 마크는 Inter Extra Bold Italic으로 재현했다. 앱 본문은 번들 Pretendard다.
- 기각: 부품 detach·화면 이미지 평탄화·공용 라이브러리의 임의 수정.
- 가역성: 발행 토큰/글꼴이 보강되면 해당 연결을 갱신한다. 런타임 구현은 AppTheme의 정확한 브랜드 색을 사용한다.
- 신뢰도: high. Figma와 실제 렌더가 완전히 같은 색·글꼴이라는 주장에는 사용하지 않는다.
DDR-04 · 작은 화면의 긴 동의 문구를 줄바꿈한다
- 결정: 긴 동의 라벨에 유연한 너비를 주고 좁은 화면의 보조 동작은 의미가 있는 아이콘 버튼으로 표시한다.
- 근거: R3 scale-invariant-layout와 실제 아랍어·1.3배 전체 캡처에서 발견한 수평 넘침. 버튼의 접근성 이름과 실제 동작을 유지한다.
- 기각: 글자를 줄이거나 잘라서 넘침 검사를 통과시킨다.
- 가역성: 해당 행의 Flexible과 반응형 버튼 표현을 바꾼다.
- 신뢰도: high.
DDR-05 · 골든에서도 실제 다국어 글꼴을 사용한다
- 결정: 헤드리스 골든의 마지막 폴백 슬롯에 웹 호스트와 동일한 LocaleFallback 파일을 로드한다. Pretendard는 주 글꼴이다.
- 근거: R2 기능 패키지의 FontManifest에는 호스트의 Roboto가 없어 아랍어가 비었다. 웹은 Roboto 전역 폴백, 네이티브 테스트는 CoUI의 명시적 GeistSans 폴백 이름을 사용한다.
- 기각: 빈 글자가 찍힌 이미지를 RTL 검증이나 디자인 비교 성공으로 집계한다.
- 가역성: package/test_driver의 로더를 라이브러리의 명시적 국제화 폴백 API로 교체한다.
- 신뢰도: high. 실제 글자 확인과 전체 매트릭스 결과는 별도 검증 보고서에 기록한다.
DDR-06 · 발행 Figma 표의 컬럼 한계를 조합으로 보완한다
- 결정: 기존 연결 Table 인스턴스 두 개로 점주 화면의 여섯 컬럼을 구성하고, 모바일에는 가로 탐색 영역을 둔다.
- 근거: 발행 Table은 세 컬럼과 고정 예제 행을 제공하며 헤더·본문 데이터 속성을 노출하지 않는다. Stat도 라벨·값 속성이 없어 기존 텍스트 자식의 내용을 재정의한다.
- 대안 검토: 라이브러리 연결을 유지하는 조합을 선택했다. 컬럼 수·행 밀도·데이터 속성은 공급 라이브러리 개선 후보로 기록한다.
- 가역성: 해당 속성이 발행되면 연결 인스턴스의 속성으로 전환한다. 현재 런타임은 실제 고객 전체 목록을 표시하고, Figma는 편집 가능한 예제 데이터를 표시한다.
- 신뢰도: high. Figma 표가 실제 데이터와 동기화된다는 주장은 하지 않는다.
DDR-07 · 제품 아이콘을 오프라인으로 등록한다
- 결정: 제품에서 사용하는 공식 Lucide SVG 14개를 라이선스와 함께 resources에 모으고 세 호스트와 골든에서 같은 레지스트리를 등록한다.
- 근거: 기본 번들은 CoUI 자체 UI 아이콘만 보장한다. 제품 아이콘은 외부 Iconify 조회를 기다리며 초기 프레임과 테스트에서 비어 있었다.
- 가역성: 같은 아이콘이 라이브러리 번들에 발행되면 중앙 등록을 제거할 수 있다. 화면 코드의 CoUI Icon 호출은 유지한다.
- 신뢰도: high. 실제 release 화면과 CI 기준 이미지에서 아이콘을 확인했다.