티옴타톡 — 발견 피드+게이트+예약 서버 통합 (§② 완성)
개요
tok.tiomta.com:9979 티옴타톡 서버에 발견 피드(회차예약.한선) 엔진을 실배선하고, 게이지단계 offset 버그를 정본(§H1 offset=8)으로 교정, 데모 장면 6건을 시드했다.무엇을 했는지
A. 게이지단계 offset 교정 (회차예약.한선)
- 기존
raw = 90 + 델타(offset=9, 잘못된 테스트케이스로 구현됨)를
raw = 80 + 델타(offset=8, 스펙 §② 정본)로 교정.
- 셀프테스트 6케이스 갱신: n=cap→80, n=cap/3→70, n=3×cap→90(상한클램프),
- CROWNY_STRICT=1 컴파일 경고 0, 단독 실행 셀프테스트 58/58 PASS.
B. 서버 통합 (티옴타톡서버.한선)
가져오기 "회차예약.한선"추가.- 원장훅 실배선: 회차예약.한선의
_원장훅회차스텁을 서버 파일 안에서
원장기록() 호출로 교체
(컴파일러가 "이름 충돌(name conflict)" 경고를 내지만 마지막 정의가 이기는
의도된 오버라이드 — 파일 간 함수명 충돌 하드에러 함정과는 다른 케이스).
- 신규 라우트 6종:
GET /api/feed/scenes(장면+게이지단계 JSON),
GET /api/member/<ID>, POST /api/member/level, POST /api/reserve,
GET /api/reserve/my/<회원>, GET /앱 · GET /앱/발견.html(정적 서빙).
- 기존 라우트(threads/thread/send/recommend/mam/ladder/balance/verify)·
C. 시드 데이터
data/scenes.psv6장면 시드(에스텔크림v3 cap6561/울푸드발효액 cap5000/
- 기존 자체시험 픽스처(members.psv/reserved.psv) 제거, scenes.psv만 유지.
D. 종단 검증 (임시 포트 19979 sed 사본, 원본 소스는 9979 유지)
- 3파일 CROWNY_STRICT=1 컴파일 경고 0(단 _원장훅회차 의도된 재정의 경고 1건은 예외).
/health200,/api/feed/scenes6장면(SCN001 cap=6561·count=2187→gaugeStep=70 확인),
/api/reserve
(L0 403 · 헤더누락 403 · L1 성공 201+원장높이 1 · L1→L2 자동전이 확인 ·
고마워요 4인 400), /api/reserve/my 200, /앱·/앱/발견.html
200 + Content-Type: text/html; charset=utf-8 + 51414바이트 정상 서빙.
- 회귀:
/api/tok/threads200,/api/ledger/verify200, 미등록 경로 404.
신규 VM 함정 발견 (가드레일 템플릿 갱신 대상)
- 비교식 그리고(AND) 복합조건은 각 피연산자를 괄호로 감싸야 함 —
만약 (a == b 그리고 c > d)는 무한루프(잘못된 우선순위 파싱).
만약 ((a == b) 그리고 (c > d))로 반드시 감쌀 것.
- 비교식 결과를 변수에 직접 대입하면 무한루프 —
변수 x = (a == b)단독도
만약/동안 조건 절에서 직접 평가하고 변수에 먼저 담지 말 것.
- BUF_WRITE(버퍼쓰기) 인자 순서 오문서화 — hanseonc_high.c 주석 테이블은
버퍼쓰기(버퍼,위치,값)이라 적혀 있지만, crownyc.c 실제 구현(opcode391)은
버퍼,문자열핸들,오프셋 순으로 pop한다. 즉 3번째 인자를 정수 오프셋으로,
2번째 인자를 문자열 핸들로 취급 — 정수 바이트값을 직접 쓸 수 없다
(문자열이 통째로 오프셋 위치에 복사됨). 바이트 단위 버퍼 조립은 이 API로
시도하지 말 것(이번 세션 URL퍼센트디코더 시도 → 폐기, 대신 알려진 고정
경로 2종을 대문자 비교 리터럴 매칭으로 우회).이 3건은 ~/.claude/templates/한선씨-가드레일.md에도 반영 필요(다음 세션 담당).
관련 파일
/Users/ef/crowny-tiomta/tok/회차예약.한선— 게이지단계 offset 교정 + 셀프테스트 갱신/Users/ef/crowny-tiomta/tok/티옴타톡서버.한선— 회차예약 라우트 6종 통합, 원장훅 실배선/Users/ef/crowny-tiomta/tok/data/scenes.psv— 데모 장면 6건 시드/Users/ef/crowny-tiomta/tok/스펙.md— 정본 계약(변경 없음, 참조만)
잔여 이슈
- 라이브 9979 서비스(.toau)는 이번 세션에서 재컴파일/재기동하지 않음 —
hanseonc_high 재컴파일 후 LaunchAgent 재기동 필요
(기동 시 TIOMTA_LEDGER_LIB=1 TIOMTA_TOK_LIB=1 TIOMTA_CELL_LIB=1 TIOMTA_ROUND_LIB=1
4개 게이트 전부 plist EnvironmentVariables에 있는지 확인 — 하나라도 누락되면
기동마다 해당 엔진 자체시험이 돌며 data/ 를 rm -f 함).
- URL 퍼센트디코딩은
/앱·/앱/발견.html2개 고정 경로만 대문자 리터럴