← 목록
AI 2026-07-12 4KB 읽기 5분

CrownyAI 시작페이지 — game.crowny.org 8종 서비스 타일 추가 (I4)

개요

bundle/start 시작페이지(.tiles 블록)에 game.crowny.org 8종 서비스(아카데미/광고스튜디오/코드생태계/세일즈/커머스/자동화/카피/뉴스레터) 타일을 추가하고, 학습 매니페스트 기반 "지능 N" 배지를 배선했다.

드리프트 검사 결과

  • SSOT: /Users/ef/CrownyBrowser/bundle/start/index.한선
  • 작업 전 hanseonc_high index.한선 → crownyc run 재생성물과 현행 index.html을 diff → 완전 일치 (diff exit 0). index.html에 수동 편집으로 인한 드리프트 없음.
  • index.html.bak(mtime 17:32, index.html·index.한선보다 늦음)은 diff 결과 전혀 다른 구조(구버전 "premium-v1" 카드 디자인 — Crowny<span>Browser</span> 헤더, Bank/INT/Market/Play/Mind/Security 카드형 빠른링크)임을 확인. 이는 2026-07-12 확정된 새 디자인(무엇을 도와드릴까요 히어로 + .tiles) 이전의 스테일 백업으로 판단, 현재 index.html(신규 승인 디자인과 일치)에 병합할 내용 없음 → 그대로 보존, 건드리지 않음.

무엇을 했는지

  1. .tiles CSS를 display:flex; gap:20px(줄바꿈 없음, 12+ 타일 시 잘림) → width:min(640px,92%); flex-wrap:wrap; justify-content:center; gap:20px 16px로 교체(모바일 92%뷰포트에서도 자동 줄바꿈, 미디어쿼리 불필요).
  2. .tile-itemwidth:64px 고정(줄바꿈 정렬), .tileposition:relative(배지 절대배치 기준) 추가.
  3. 신규 .svc-badge(작은 골드 필 배지, top:-6px right:-6px) 스타일 추가.
  4. .tiles 블록에 8개 <a class="tile-item" data-svc="..."> 타일 추가 — 기존 4타일(크라우니집사/프렌즈/라이프/비즈) + "+" 추가 타일은 그대로 유지, 새 8타일은 그 사이에 삽입:
- data-svc=academy → https://game.crowny.org/academy (제목=아카데미, title 속성=AI·금융 아카데미) - data-svc=ad → /ad (광고스튜디오, UGC 광고 제작) - data-svc=build → /build (코드생태계, 한선씨 개발 생태계) - data-svc=sales → /sales (세일즈, 세일즈 훈련·보상) - data-svc=commerce → /commerce (커머스, 원스탑 커머스) - data-svc=auto → /auto (자동화, AI 워크플로 자동화) - data-svc=copy → /copy (카피, AI 카피라이팅) - data-svc=letter → /letter (뉴스레터, 뉴스레터 발행·구독) - 제목(서비스명)은 .lb 라벨로 시각 표시, 부제(설명)는 title 속성(호버 툴팁)으로 배선 — 기존 64px 타일 디자인 규격을 깨지 않는 선택.
  1. 페이지 하단 <script>에 새 IIFE 추가: fetch('https://game.crowny.org/api/ai/manifest') → 실패 시 http://127.0.0.1:9775/api/ai/manifest 폴백 → 그것도 실패하면 조용히 무시(catch 빈 블록). services[].route("/academy" 등)를 data-svc 값과 매칭해 learn_stats.records가 있으면 해당 타일에 "지능 N" 배지 주입. NodeList 순회는 .forEach 대신 for 루프로 작성(엔진 호환 안전).

재생성 및 검증 (실측)

cd /Users/ef/CrownyOS/crownyc
./hanseonc_high /Users/ef/CrownyBrowser/bundle/start/index.한선 > /tmp/index_final.toau
./crownyc run /tmp/index_final.toau > /Users/ef/CrownyBrowser/bundle/start/index.html
  • 컴파일: 1011 토큰 파싱, 44161 큐브 생성, exit 0
  • 실행: 로드: 44161 cubes, exit 0, 출력 219줄
  • grep -c 'href="https://game.crowny.org/' index.html8
  • grep -o 'class="tile-item' 카운트 → 13 (기존4 + 신규8 + 추가1)
  • <script> 블록 추출 후 node --checkexit 0 (개행 풀림 함정 없음 확인)
  • tools/디자인대조.sh index.html대조: PASS 4 / FAIL 0

관련 파일

  • /Users/ef/CrownyBrowser/bundle/start/index.한선 (SSOT, 수정)
  • /Users/ef/CrownyBrowser/bundle/start/index.html (재생성물, 커밋 대상)
  • /Users/ef/CrownyBrowser/bundle/start/index.html.bak (스테일 구버전 백업, 미변경·미삭제)
  • /Users/ef/CrownyBrowser/tools/디자인대조.sh (게이트, PASS)

잔여 이슈

  • 배지 매칭은 services[].route가 정확히 "/academy" 등 8종 경로와 1:1이어야 동작 — 매니페스트 스키마 변경 시 재확인 필요.
  • 앱 재기동(빌드 반영 확인)은 이 작업 범위 밖(메인 세션 통합검증에서 수행) — 본 서브에이전트는 재기동하지 않음.
  • index.html.bak 정리 여부는 미결정(요청 범위 밖) — 다음 세션이 필요시 삭제 판단.