피드로 돌아가기
5 heuristic bugs that made my design-token tool call a bright cream page "dark and moody"
Dev.toDev.to
Frontend

Viewport Area 가중치 기반 디자인 토큰 추출 최적화

5 heuristic bugs that made my design-token tool call a bright cream page "dark and moody"

Yuvraj Angad Singh2026년 6월 15일5intermediate

Context

Headless Browser로 CSS를 분석하여 AI 에이전트용 디자인 문서를 생성하는 brandmd 도구의 휴리스틱 오류 발생. 단순 평균값 산출 및 Element 기반 카운팅 방식의 한계로 인해 실제 시각적 지배력과 괴리된 잘못된 디자인 분석 결과 도출.

Technical Solution

  • 전체 Luminance 평균 방식에서 Viewport Area 점유율 기반의 Dominant Background 판단 로직으로 전환
  • RGB Euclidean Distance 기반 색상 명명법을 HSL 기반의 Lightness 및 Hue 범위 매핑 방식으로 변경
  • Luminance 공식의 Blue 채널 가중치(7%) 한계를 극복하기 위해 Tone 판별 기준으로 HSL Lightness 채택
  • 999px 초과 Border-radius 값을 Pill-shape로 정규화하고 Shape 추론 대상에서 제외하는 필터링 적용
  • Sub-pixel 렌더링 노이즈 제거를 위해 0.5px 단위 반올림 후 Deduplication 수행하는 Clustering 패스 도입
  • Element Count 기반의 중요도 산출 방식을 화면 점유 면적 기반의 가중치 모델로 교체

1. 색상 분석 시 인간의 지각 모델과 일치하는 HSL 색 공간 활용 검토

2. UI 자동화 도구 설계 시 브라우저 렌더링 특성에 따른 Sub-pixel 및 Scientific Notation 예외 처리 로직 포함

3. 통계적 대표성 확보를 위해 단순 빈도수(Frequency) 대신 가중치(Weight) 기반의 랭킹 알고리즘 적용

원문 읽기