← 목록
기타 2026-07-07 3KB 읽기 3분

차트 검증카드 — matplotlib/Chart.js 대응 (파동① 존재≠동작 검증)

개요

크라우니 라이브러리세계 1:1 대응 계획(/Users/ef/crowny-rpnkit/라이브러리세계-1대1-계획.md)의 파동①(존재≠동작 검증) 작업 일환으로, matplotlib/Chart.js가 하는 차트(막대/선/파이) 생성을 한선씨(crownyc/libs)로 어떻게 대응시키는지 실측하고, 동작/비동작을 카드로 고정했다.

무엇을 했는지

  1. 인벤토리: libs/에서 차트 관련 파일 36개(4변형×10모듈) + 웹코드차트/웹코드데이터 확인.
  2. 실측 검증(헤드리스, crownyc run + PPM 픽셀 분석):
- 동작 확인(PASS): libs/외부어댑터.한선(Chart.js JS 문자열 생성 — 막대/선/도넛 3종 전부 정상), libs/차트라이브러리.한선(SVG <rect> 막대 렌더, 값→높이 정확 일치), GUI 내장 굵은선(8-arg RGB) 직접 호출 라인차트(316픽셀 그려짐 확인). - 비동작 적발(버그): - libs/차트.한선: 모듈 헤더는 "Chart.js HTML+JS 코드 생성기"라 정본처럼 보이지만 실제로는 RPN 방언(라벨/postfix)으로 작성돼 hanseonc_high 컴파일이 141개 에러로 실패. 완전 비동작. - libs/웹코드차트.한선/libs/웹코드데이터.한선: 네이티브 렌더 분기가 c27 5/4-arg 선긋기/원그리기에 RGB 3색을 얹어 7/6-arg로 잘못 호출 → 스택 오염(웹코드_파이차트) + 그려진 픽셀 0개(웹코드_라인차트, 실측 pixel scan). grep 결과 동일 패턴이 20개+ 웹코드 모듈에 광범위하게 퍼져있음(개별 실행검증은 차트 관련 2개만 수행). - 웹코드차트/데이터의 "웹" 렌더 분기(DOM opcode 790~798)는 WASM+브라우저 전용이라 헤드리스 crownyc로는 구조적으로 검증 불가(설계 한계, 버그 아님으로 구분).
  1. 크라우니코드 학습: 신규 3건 등록(외부어댑터_ChartJS_bar_line_pie_생성,
웹코드차트_선긋기원그리기_RGB인자오배치_버그, 차트한선_RPN방언_hanseonc_high_컴파일실패).

관련 파일

  • /Users/ef/crowny-rpnkit/라이브러리카드/차트카드.md — 대응표 + 검증 예제 8개 + 함정 7건 + 갭 4건
  • /Users/ef/crowny-rpnkit/라이브러리카드/차트검증.sh — 8/8 PASS 재검증 게이트
  • 근거 라이브러리: /Users/ef/CrownyOS/crownyc/libs/외부어댑터.한선(정본),
차트라이브러리.한선(SVG bar), 차트.한선(비동작), 웹코드차트.한선/웹코드데이터.한선(버그)

잔여 이슈 (파동② 입력)

  1. 최우선: 웹코드차트/웹코드데이터 및 grep 확인된 20개+ 웹코드 모듈의 선긋기/원그리기
RGB 인자 오호출 버그 수리(→ 굵은선/RGB원으로 일괄 치환).
  1. 차트라이브러리.한선의 SVG 렌더를 막대 외 라인/파이까지 확장(현재 막대만 구현).
  2. libs/차트.한선(RPN 방언) 처리 방침 결정 — 재작성/문서화/폐기 중 택1.
  3. DOM opcode(790~798) 기반 웹 렌더 경로의 WASM+headless 브라우저 왕복 검증(별도 파동, 브라우저
자동화 필요).