결제로직.한선을 server.js 전체 로직과 1:1 대응하도록 확장. 동시에 server.js의 메모리 저장소 3개를 SQLite로 전환.
기존 14개 함수에 24개 함수 추가 → 총 38개 함수:
| 영역 | 추가 함수 | 대응 server.js |
|---|---|---|
| 한선코드 | 한선코드생성, 한선코드파싱, 한선코드만료확인 | buildHanseonCode, parseHanseonCode |
| 초대 | 초대코드생성, 초대코드검증, 초대사용, 초대담보부여 | /api/invite/* |
| 분쟁 | 분쟁생성, 분쟁가능여부, 분쟁판결 | /api/dispute/* |
| OTP | OTP생성, OTP검증 | /api/auth/otp/* |
| 등록 | 등록티어결정, 윤리선언해시, 카드생성 | /api/card/register |
| 관리자 | 카드정지, 카드해제 | /api/admin/card/* |
| 스토어 | 스토어가격, 스토어결제메모 | /api/store/* |
| 대시보드 | 목표진척, 전환율 | /api/invite/dashboard |
| 보안 | 속도제한체크, 논스확인, 결제취소가능 | rate limit, nonce |
| 저장소 | 이전 | 이후 |
|---|---|---|
pay_requests | db.pay_requests = {} (메모리) | savePayRequest() / getPayRequest() (SQLite) |
otps | db.otps = {} (메모리) | saveOtp() / getOtp() / deleteOtp() (SQLite) |
verified_phones | db.verified_phones = {} (메모리) | saveVerifiedPhone() / getVerifiedPhone() / deleteVerifiedPhone() (SQLite) |
efcard_한선코드_생성파싱 패턴 등록efcard_초대_분쟁_OTP 패턴 등록/Users/ef/crowny-card/src/결제로직.한선 — 38함수 431줄/Users/ef/crowny-card/server.js — SQLite 전환 (pay_requests/otps/verified_phones)/Users/ef/crowny-card/CLAUDE.md — 커버리지 표 갱신hanseonc_high 결제로직.한선 → 컴파일 통과 (505KB TOAU)node --check server.js → 문법 통과/api/health, /api/stats → 정상 응답 (카드 16, 결제 7, 담보 5)