요청: GPU실opcode-crownyai-JS이행
- 날짜: 2026-06-22 23:01:16
- 작업 경로: /Users/ef/CrownyOS/crownyc
요청 본문
잔여 둘 다: ①GPU렌더러 스텁→실 렌더(VM 프레임버퍼 opcode) ②crowny-ai 관성 JS를 한선씨 SSOT로 이행
관련 산출
(클로드가 작업 결과를 이어 기록)
산출 결과 (2026-06-22)
트랙1 — GPU 스텁 → 실 프레임버퍼 렌더 ✅
GPU렌더러.한선이 "Apple Metal GPU" 문자열만 반환하던 스텁 → 한선씨 브라우저의 진짜 렌더 백엔드 = VM 프레임버퍼 실 래스터화.- cmd렌더러.한선 신규 (
/Users/ef/CrownyBrowser/src/): 브라우저 cmd(INIT/RECT/TEXT/END)를 실 VM opcode로 그림 — 화면초기화(346)/RGB사각형(358, 24비트)/RGB글쓰기(366)/화면저장(355→PPM). - 검증(실 픽셀): desktop-bg.cif → cmd → PPM(P6 320×200). 픽셀(5,5)=RGB(39,29,49) RECT 색과 정확 일치, 100% 커버리지. PNG 시각확인=데스크탑 배경(패널/별/수평선).
- HTML 페이지 → cmd → PPM(1280×800): 한글 텍스트 "크라우니브라우저" 실 렌더(VM 비트맵 자모).
- 의미: 한선씨 브라우저가 스텁이 아닌 실제 픽셀 이미지를 생성(HTML·CIF 둘 다). 실 Metal/Vulkan은 동일 표면의 가속 백엔드(별도).
트랙2 — crowny-ai 의미어필터 한선씨 SSOT ✅(1모듈)
crowny-ai AI코어 관성 JS(semantic-filter.js 222줄) → 의미어필터.한선 검증 SSOT화.- tier 결정 로직 동일 확인: cx≥5/code/reason→pro, cx≥2/write/biz→flash, else flashlite.
- 상담가중에 정체성 마커("나는 어떤"/"사람일까"/"나는 누구") 보강 → 6입력 tier 패리티 6/6 (한선씨==semantic-filter.js).
- 보더라인: 복잡도 점수는 JS=동적 누적사전 vs 한선씨=하드코딩 가중치라 수치 차이 가능. tier 결정(SSOT 핵심)은 동일·검증. 전 모듈 동적사전 공유는 잔여.
잔여(정직)
- 트랙1: 대용량 cmd 스트림(폰트 글리프 5953 RECT) 렌더는 청크 적용 필요(폰트글리프렌더.sh 패턴 재사용). GPU렌더러.한선 텍스처/셰이더 추상화 전면 실opcode화는 별도.
- 트랙2: crowny-ai engine 나머지 AI코어(gemini-router/ontology/report 등) + 16K줄 서비스 런타임 이행은 다회 작업(라이브 무중단 위해 판정SSOT 우선·런타임 보류 전략).
관련 파일
- /Users/ef/CrownyBrowser/src/cmd렌더러.한선
- /Users/ef/crowny-ai/의미어필터.한선 (상담가중 보강)