티옴타 공유·소개자 시스템 (729 결 카드)
개요
tiomta.com(:9878) 서비스를 정상화하고, 티옴타테스트 결과를 729가지 결 카드로 공유하는 소개자(referral) 시스템을 구축했다. 제미나이 플래시 라이트 기반 기본 상담을 티옴타 컨텍스트로 강화했다.무엇을 했는지
1. 서비스 정상화
- :9878이 죽어 있어(응답 000) 재기동.
.env(GEMINI 키) 로드 후node server.js. - health/진단/제미나이 모두 정상 확인.
- keepalive 버그 수정:
tiomta-keepalive.sh가 .env 없이 재시작해 제미나이 키가 빠지던 문제 → 재시작 전.env자동 로드하도록 패치.
2. 기본 상담 (제미나이 플래시 라이트 + 티옴타 컨텍스트)
POST /api/consult신설: gemini-flash-lite-latest에 티옴타 시스템 프롬프트(9유형·729좌표·결 관점, 평가/진단 금지) + 대화 히스토리 + (선택)테스트 결과를 주입.- 기존
/api/ai/lite는 컨텍스트 없는 raw 호출 → 환각 발생./api/consult가 상담 전용.
3. 729 결 카드 + 공유/소개자
- 티옴타테스트(test.html, 120문항·6좌표)는 T/O/A 3진 × 6자리 = 729 verse를 산출 → 그대로 카드번호 1..729.
verseToCard(): 각 자리 T=0/O=1/A=2(U→1), base3 폴드 +1.POST /api/share/create(로그인 불필요): 결과를 카드로 영속화.ref파라미터로 소개자 체인 기록(소개자 invitees +1).GET /api/share/:id(공개): 소개자의 기본 테스트 결과(동기/상태/접점 라벨 + 카드).GET /api/share/:id/detail(로그인 필요, 401 게이트): 6차원 전체 해석./r/:id→share.html랜딩.
4. 프론트엔드
public/share.html 신규: 소개자 초대 화면 + 729 카드 비주얼(T/O/A/U 색·도형) + 기본 결과 + CTA 2종./test.html?ref=:id (로그인 없이)public/test.html 통합: ?ref= 캡처, 결과 시 공유 생성 → 카드번호 표시 → 공유하기(소개자 되기) 버튼(navigator.share/클립보드).검증
- 공유 생성 → 카드 #147(TOAUTA), 기본 공개 OK, detail 무로그인 401 OK.
- 소개자 체인: B(ref=A) 생성 → A.invitees=1 확인.
.한선동반(공유카드.한선) 컴파일·실행 → 카드 147 (JS와 패리티 일치).- share.html/test.html 임베드 JS 문법 검사 통과.
관련 파일
/Users/ef/crowny-tiomta/server.js— consult/share 라우트, verseToCard, share 저장/Users/ef/crowny-tiomta/public/share.html— 공유 랜딩(신규)/Users/ef/crowny-tiomta/public/test.html— ref 캡처 + 공유 생성/버튼/Users/ef/crowny-tiomta/공유카드.한선— 729 카드 로직 동반(컴파일 OK)/Users/ef/crowny-tiomta/tiomta-keepalive.sh— .env 로드 패치- 데이터:
data/shares/<id>.json
잔여 이슈
- detail의 6차원 해석은 현재 라벨 나열 수준 → 제미나이 메인으로 풍부한 서술 생성 가능.
- 소개자 보상(맘/포네) 연동 미구현 — invitees 카운트만 기록.
- 카드 #N별 고유 디자인/이름(729종) 데이터셋 미작성(verse-tree.json 연계 여지).
- 한선씨 게이트웨이(:9898)로 점진 이관 대상(현재 잔여 Node.js).
추가: 클로드 밸런스 GUI/UX 개선 (2026-06-09)
사용자 요청 — "클로드를 사용하는 것 같은 밸런스의 GUI/UX, 이모지도 클로드 연계 서비스처럼 미투전략".
적용 디자인 시스템 (warm kraft + coral)
- 배경: 크라프트 아이보리
#F4F2EC/ 카드#FBFAF7(클로드.ai paper 톤) - 프라이머리 액센트: 클로드 코랄/클레이
#D97757(기존 골드는 O·옴 시그니처로 보존) - 디스플레이 폰트: 세리프(
Tiempos/Georgia/Nanum Myeongjo) — 헤딩·카드·시나리오. 본문은 Söhne/Pretendard - 다크모드: 보라-블랙(
#0F0D14) → 클로드 웜브라운(#1F1E1C/#262521) - 이모지 미투: 클로드 스파클
✳모티프 중심(헤더 마크·카드 워터마크·공유 버튼). 🔗🔔🎴 등 잡다한 이모지 정리, 테마토글 🌙→☾ - TOAU 시그니처 보존: T(녹)·O(금)·A(코랄레드)·U(보라) 데이터 컬러 유지
적용 파일
public/share.html— 전면 재디자인 (공유 랜딩)public/test.html— 인라인 토큰 라이트/다크 교체 + 세리프 헤딩/시나리오 + 공유 카드/버튼 이모지 정제
검증 (헤드리스 크롬 스크린샷)
/tmp/share_light.png,/tmp/share_dark.png,/tmp/test_light.png— 라이트/다크 모두 클로드 연계 룩 확인. JS 문법 통과, 서빙 200.
추가 2: 글리프·폰트 정제 + index 동기화 (2026-06-09)
사용자 지정 디테일:
- TOAU 글리프: 티 △ · 옴 ○ · 타 ▽ → 속 빈(hollow) 중립색(초록·빨강 제거), 한글 자모(ㅁ·ㅇ) 느낌. 음만 작은 채워진 원 ●. SVG
fill:none;stroke:currentColor(음=fill:currentColorr≈3.6). 슬롯·답변 컬러 배경 중립화. - 폰트: 문항(시나리오·질문)+대화(버블) 폰트 통일(sans, 세리프 금지). 답변 글씨 +10%(→15~15.5px), 문항·대화 −10%(버블 13.5px·시나리오 14.5px·질문 12.5px). 디스플레이 헤딩/카드/모달 제목만 세리프.
- index.html(=
/진입) 동기화: 구버전 베이지+채운색 → 클로드 밸런스로 통일. 시작 모달 제목·버튼 초록→보라 그라데이션 제거(세리프 코랄), 헤더 그라데이션 코랄→골드,--bg3alias 추가.
public/index.html, public/test.html, public/share.html — 3페이지 일관.
검증: /tmp/share_v2.png(글리프), /tmp/test_preview.png(답변·문항·대화), /tmp/index_v2.png(모달). JS 문법 통과.추가 3: TOAU 4모드 테스트 패밀리 (2026-06-09)
사용자 요청 — 같은 729 결과, 도출 방식만 다른 4가지 테스트(TOAU). 한 번 한 사람이 다른 것도 해볼 수 있게.
4모드 (4상균형3진 매핑)
| 상 | 모드 | 문항 | 게이트 | 경로 |
|---|---|---|---|---|
| 티 T △ | 빠른 테스트 | 6 (1/좌표) | 무료 | /flow.html?mode=fast |
| 옴 O ○ | 스탠다드(현재) | 120 | 무료 | /test.html |
| 타 A ▽ | 놀이 테스트(아이) | 6 이모지 | 무료 | /flow.html?mode=play |
| 음 U ● | 딥 테스트 | 12 | 프리미엄(tier∈premium/pro) | /flow.html?mode=deep |
구조
- 공용 러너
flow.html: fast/play/deep 한 파일. 모드별 문항은행(Q_FAST/Q_PLAY/Q_DEEP), 6좌표 dominant 집계 → verse →/api/share/create→ 729 카드 + 공유. deep은/api/metier 체크로 게이트(비프리미엄 업셀+로그인). - 허브
tests.html: 4모드 카드(속 빈 글리프 △○▽ + 음 ●), 기본/유료 배지,?ref통과, 교차 진입. - 결과 동일성: 모든 모드가 TYPE_MAP/STATE/ITF 동일 맵으로 6좌표→동일 729. cardNo 검증(TTTTTT→1, TOAUTA→147).
- 교차 유도: 각 결과에 "다른 방식으로 또" 버튼. index 모달·test 결과에 허브 링크. flow 결과에 나머지 3모드 버튼.
- index.html 표준 동기화:
/진입 표준 테스트에도 공유카드(createShareIdx/doShareIdx) 이식 — test.html과 동일 동작.
관련 파일
public/flow.html(신규·러너),public/tests.html(신규·허브)public/test.html(허브 링크),public/index.html(공유 이식 + 모달 허브 + 결과 허브)
검증 (헤드리스)
/tmp/hub.png(4모드),/tmp/fast.png(티 카드UI),/tmp/deep_gate.png(음 프리미엄 게이트),/tmp/play.png(타 이모지). JS 5파일 문법 통과, 공유생성 cardNo 정상.
잔여
- 딥 결과의 detail 깊은 서술(제미나이 메인) / 놀이 결과 아동용 표현 / 표준(test.html)·index.html 테스트 엔진 이중구현 통합 여지.
추가 4: 테스트 정교화 (2026-06-09)
- 빠른(티): 6→27문항(9×3라운드). 전 연령용 재미있는 시나리오, 라운드 진행감("라운드 N/3"), 좌표당 4~5표로 정확도↑.
- 놀이(타): 아이 눈높이 쉬운 말 + 큰 히어로 이모지(64px) + 큰 글씨(26px) + 큰 선택지(이모지 34px).
- 딥(음): 12→18문항(좌표당 3개), 내성적 다층 질문, 6문항×3라운드 페이싱.
- flow.html roundSize 로직(라운드 표시·라운드브레이크 격려 화면) 추가. 헤드리스 검증 완료.