← 목록
기타 2026-06-13 3KB 읽기 3분

2026-06-13 AMENA 포털서버 시연 4탭 UX 백엔드 API

개요

/Users/ef/crowny-amena/포털서버.한선에 시연 4탭(미션/지갑/에이전트/동료채팅) API 8개 추가.

작업 내용

  • 백업: 포털서버.한선.bak-appux-20260613
  • 신규 API (GET 4, POST 4):
  • GET /api/missions — 오늘날짜/streak/성경구절/퀴즈(정답미포함)/미션4건 state
  • POST /api/mission/complete — M1/M3/M4 즉시T, M2 퀴즈정답대조, 맘원장 append, 스트릭≥3 보너스+2, dedup
  • GET /api/wallet — 맘원장.dat 잔액+최근10건 역순+krw 반값()
  • POST /api/agent/chat — 6단계 역순 덮어쓰기 의도분류, 인사맘1 dedup
  • GET /api/contacts — 연락처.dat → JSON
  • GET /api/chat/messages — 메시지.dat 양방향 필터
  • POST /api/chat/send — 정화+append, demo01~09 자동답장, M4 자동완료
  • GET /app — _파일서빙("app.html")
  • 공통 헬퍼 추가: _쿼리값, _반값, _인증순수id, _누적맘조회, _필드, _오늘날짜, _날짜순환, _N번째줄, _완료체크, _스트릭, _텍스트정화, _연락처역할, _자동답장
  • 관련 파일

    • /Users/ef/crowny-amena/포털서버.한선 — 메인 소스 (1225줄)
    • /Users/ef/crowny-amena/포털서버.한선.bak-appux-20260613 — 백업
    • /Users/ef/crowny-amena/data/미션.dat, 퀴즈.dat, 성경플랜.dat, 연락처.dat
    • /Users/ef/crowny-amena/data/맘원장.dat — SSOT 맘 원장 (기존 4컬럼 포맷 유지)
    • 런타임 생성: 미션완료.dat, 메시지.dat

    발견한 함정

    • hanseonc_high 35단계 중첩 아니면{ 체인 → parser 오류. 해결: 역순 단일 만약 덮어쓰기 패턴으로 평탄화
    • 스트릭보너스 원장줄 포맷: 날짜|id|스트릭보너스|2|누적 (5컬럼) — _누적맘조회탐=id+"|" 매칭이 "날짜|" prefix 때문에 미매칭 → 포함(줄,탐)==0 조건이 올바르게 작동함

    검증 결과

    • 컴파일: OK (exit 0, 871KB toau)
    • /api/health: T
    • /api/missions: T (퀴즈 정답미포함 확인)
    • /api/mission/complete M1: T reward=3
    • dedup: T (dup:1)
    • M2 정답: T reward=2
    • M2 오답: T state=A explain 반환
    • M3: T reward=5
    • /api/agent/chat 인사: T +1맘
    • 인사 중복: T reward=0
    • 게스트 인사: T reward=0
    • "안녕 미션 뭐야" → mission: T
    • 엉뚱한말 → unknown: T
    • /api/contacts: T 9건
    • /api/chat/send+자동답장: T (demo03 수학코치 자동답장)
    • M4 자동완료: T
    • /api/wallet: T balance=12 history=5건
    • 401 케이스들: T
    • 라이브 9921 미영향: T

    잔여 이슈

    • _오늘날짜() Tomohiko 알고리즘이 현재시각()+KST로 계산하나, VM 내부 현재시각()이 1970-base 확인 필요 (테스트 결과는 2026-06-07 → VM내부 시간이 다를 수 있음. 프런트엔드에서 클라이언트 날짜를 POST로 보내는 방식 검토 권장)
    • app.html 파일은 아직 미생성 — /app 라우트는 현재 404 반환