CrownyAI 브라우저에 크라우니EV(crowny://ev) 장착
개요
ev.crowny.org:9616(Crowny EV, 커스텀 오더 EV 스튜디오)를 CrownyAI 브라우저에 crowny://ev 스킴으로 장착. 어제(2026-07-17) 완료된 크라우니홀(crowny://hall, 9606)·크라우니CAD (crowny://cad, 9609) 장착 공정을 crowny-ai-content.m에서 1:1로 미러링했다. EV도 홀/CAD와 마찬가지로 서버 API에 의존하는 라이브 서버형 도구이므로 오프라인 self-contained 번들 사본은 만들지 않고,https://ev.crowny.org를 loadRequest로 활성탭에 직접 로드한다.무엇을 했는지
crowny-ai-content.m (AI_SRC, make ai 타깃) — 5지점 (CAD 코드 바로 옆에 나란히)
- normalizeURLString: —
crowny://ev*/이브이/ev/크라우니EV/크라우니이브이→
crowny://ev 정규화 (cad 블록 뒤, nexus 블록 앞에 추가)
- caOpenEvInActiveTab 신규 메서드 — caOpenCadInActiveTab과 완전히 동일한 구조
loadRequest:[NSURLRequest requestWithURL:...https://ev.crowny.org]
→ 탭 갱신 → 알림 post). t.urlString = @"crowny://ev", t.title = @"크라우니EV".
- navigateTo: 디스패치 — cad 분기 바로 뒤에 EV 별칭
caOpenEvInActiveTab 호출 분기 추가
- AI홈 타일 — 시작페이지 HTML tiles div에 CAD 타일과 '+' 추가 타일 사이에
<a class='tile' onclick="location.href='crowny://ev'">...EV...</a> 추가
- 북마크 시드 v12 — 기존 v9(tree)/v10(hall)/v11(cad) 게이트 규약 그대로,
crowny.ai.bookmarksSeeded.v12 UserDefaults 게이트로 crowny://ev 북마크 1회 삽입
(index MIN(7, count)). v11=cad가 최댓값임을 grep으로 확인 후 v12를 신규 채번했다.옴니바(주소창) 서비스명 매칭은 위 normalizeURLString/navigateTo 자체가 담당(기존 서비스와 동일 패턴 — 별도 자동완성 리스트 없음).
src/앱목록.psv — EV 행 신규 추가
EV|url:https://ev.crowny.org|-|-|-|커스텀 오더 EV 스튜디오 (Crowny EV) 를 홀 행 바로
다음(27번째 줄)에 추가. HYBRID 변종 = raw URL WKWebView 탭으로 오픈.src/EV연결.한선 (신규, 한선씨 동반 SSOT)
캐드연결.한선의 자매 파일. "서비스명 문자열 → crowny://ev로 갈지" 4상 판정:- 티(이브이별칭인가) —
crowny://ev*/이브이/ev/크라우니EV/크라우니이브이→ 즉시 확정 - 타(타서비스별칭인가) — 홀/캐드/스페이스/트리/오피스/빌딩/ERP/투데이/넥서스 등 기존 확정
- 옴 — "이브이"/"ev" 부분포함이나 정확매칭 아님(예: "커스텀 오더 이브이 문의", "everest") →
- 음 — 그 외 무관 → 이관/통과
CROWNY_STRICT=1 ./hanseonc_high src/EV연결.한선 > /tmp/ev연결.toau && ./crownyc run /tmp/ev연결.toau
→ STRICT 경고 0, EV연결 판정 검증: 16/16 / [결과] 티 — 전체 통과.관련 파일
/Users/ef/CrownyBrowser/native/crowny-ai-content.m— 5지점 배선(normalizeURLString,
/Users/ef/CrownyBrowser/src/앱목록.psv— EV 런처 카드 행 신규(27번째 줄)/Users/ef/CrownyBrowser/src/EV연결.한선— 4상 라우팅 판정 SSOT(신규, 자체시험 16/16)/Users/ef/CrownyDoc/projects/2026-07-17-crownyai-cad-앱장착.md— 이번 작업이 미러링한
검증
cd /Users/ef/CrownyOS/crownyc && CROWNY_STRICT=1 ./hanseonc_high src/EV연결.한선 > /tmp/ev연결.toau
./crownyc run /tmp/ev연결.toau—EV연결 판정 검증: 16/16/[결과] 티 — 전체 통과cd /Users/ef/CrownyBrowser/native && make ai— 컴파일 에러 0(사전존재 무관 경고 1건
cbButlerTextHeight unused, crowny-ai-butler.m — 이번 작업이 건드리지 않은 파일),
CrownyAI 바이너리 생성 확인(573K)
- grep으로 5지점 각각 파일:줄 근거 확인(위 "무엇을 했는지" 절)
- 앱목록.psv EV 행 중복/충돌 없음(grep 재확인, 1행만 존재)
- GUI 실행 검증 생략(작업 지시에 따라) — cliclick 등 GUI 자동화 금지 원칙 + 신규 Cocoa
크라우니코드 lookup/learn
- lookup:
crownycode-learn.sh search "라이브서버 별칭 라우팅 4상"→ MISS(학습DB/패턴DB 모두
- learn:
crownycode-learn.sh add EV연결_별칭라우팅_4상판정 "<EV연결.한선 전문>"→ 학습완료,
잔여 이슈
- EV 전용 브릿지(.js) 및 팬아웃 연동(ERP/Today 이벤트버스 구독) — 후속 트랙(홀/CAD와 동일
- 실사용자 세션에서 crowny://ev 클릭 시 실제 WKWebView 렌더 확인(이번엔 코드 경로로만 검증)
- 넥서스(crowny://nexus)는 여전히 북마크 시드가 없음(v11=cad, v12=ev가 순서대로 선점) —