Files
web-page-backend/CHECK_POINT.md
gahusb fc1ebf134d docs(checkpoint): oversight 프론트 배포 완료 반영
ActivityTimeline 프론트 NAS 라이브 반영 완료(SSH 직접 배포, Z: 매핑 우회).
56d0f5b 위 새 커밋 — feat/co-gahusb-team-bus가 56d0f5b를 base로 의존하므로
amend 대신 신규 커밋.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-12 07:23:45 +09:00

8.3 KiB
Raw Blame History

web-backend CHECK_POINT

NAS Docker (Synology Celeron J4025 2C 2.0GHz, 18GB). 16+ 컨테이너(14 서비스 + Redis + frontend + deployer). 2026-06-12 갱신 — 5/18 CPU 진단·NAS↔Windows 분산부터 6/12 음악 파이프라인 신뢰성까지 반영. 운영 세부(DB·스케줄러·env·함정)는 memory/service_<name>.md가 authoritative. 이 파일은 무엇이 끝났고 다음에 뭘 하나의 보드.


완료 타임라인 (5/18 → 6/12)

5/18~22 — CPU 진단 + NAS↔Windows 분산 + 로또 자율화

  • CPU 폭주 즉시 5건: 09:00 cron 5분 스태거링(insta/lotto/youtube/realestate) · lotto Monte Carlo 08:30 이동 · insta Playwright Semaphore(1) · healthcheck 60s · uvicorn --workers 1 · realestate 수집 병렬화
  • Redis 분산 (박재오 7결정): Redis 컨테이너 신설(7-alpine 256MB AOF) · insta/music/video-lab을 queue:*-render push 게이트웨이로 전환(렌더는 Windows web-ai 워커) · internal webhook + nginx 3-layer 차단 · stock webai_cache TTLCache
  • video-lab 신설 (18801) — Windows video-render의 NAS 짝 (sora/veo/kling/seedance)
  • 로또 능동 시그널 v1 — lotto_signals/baselines, z-score, urgent/digest 텔레그램, cron 4종
  • weight-evolver 자율 학습 v2 — weight_trials/auto_picks, 주간 generate→apply→evaluate 루프

5/25~26 — tarot/saju 분리·신설 + UI

  • tarot-lab 분리 (18250) — agent-office에서 독립, Claude 3-card
  • saju-lab 신설 (18300) — saju-web TS→Python 포팅, lunar↔solar 내장, 궁합 포함
  • saju UI v1 + v2 리디자인 + fortune_scores/lucky/monthly_flow 추가
  • image-lab public gateway + /media/image/ 정적 서빙 · tarot max_tokens 2800 truncation fix

5/28 — 공유 로그 인프라

  • _shared/access_log 공용 모듈 (lotto/stock/music/insta/realestate 5종) — ring buffer + middleware + /logs/recent
  • agent-office /agents/{id}/logs가 서비스 로그 merge · 매일 03:00 agent_logs 90일 retention

5/31 — 자율 인텔리전스 2종 (스마트에이전트 1·2번)

  • 로또 자가학습 백테스트·캘리브레이션 v3 — backtest_runs/winner_calibration, forward 가상구매 3전략, ε-게이팅 lift 학습, 일요회고 cron. 역대 캘리브레이션 백필 1197/1197 (6/11)
  • 주식 보유종목 인텔리전스 — holdings_signals, market_events/news_issues/portfolio_health, decide_action 매트릭스, EOD(16:50)+브리핑(08:30) cron

6/01~06 — 보안 + 인스타 카드뉴스

  • nginx CVE 대응 (CVE-2026-42945 · CVE-2026-9256 → 1.30.2)
  • 인스타 카드뉴스 품질 고도화 v2 + zip 패키지(10 PNG + caption.txt) + 글자수 가이드

6/11 — 자율 발급 + 오버사이트 (스마트에이전트 3번)

  • 인스타 자율 카드 발급 — 4신호 선별(selection.py) + Claude Haiku 카드가치 판단 + 승인 게이트 + 발행 상태머신. 텔레그램 issue_approve/reject/regen 콜백. autonomous_issue 기본 OFF
  • 에이전트 횡단 오버사이트(백엔드)GET /api/agent-office/activity 통합 피드 + 필터(agent_id/type/status/days). main 2c2828c 배포
  • CLAUDE.md 카탈로그 슬림화(966→484, 서비스별 메모리 분담) · packs jti SQLite 영속화 · lotto deep CuratorError fallthrough fix

6/12 — 음악 파이프라인 신뢰성·복구 (직전 작업)

  • 자동 재시도: orchestrator step 3회 backoff 재시도(publish 제외 — 업로드 비멱등)
  • 수동 재개: POST /api/music/pipeline/{id}/retry — 실패 step 판별·재개, retrying 레이스 가드, publish+업로드완료 시 409
  • 실패 알림: agent-office youtube_publisher가 신규 failed 감지 → 텔레그램 ⚠️실패 + [🔄재시도] 인라인 버튼 → music-lab retry 프록시
  • 커밋·push·자동배포 완료 (main = origin/main)

스마트에이전트 3종 전부 가동: stock(보유종목) · insta(자율발급) · lotto(진화). CEO 오버사이트(통합 활동 피드) 백엔드 완료.


🔴 즉시 — 진행 중 / 대기

1. agent oversight 프론트 NAS 배포 — 완료 (2026-06-12)

  • web-ui ActivityTimeline(AgentOffice 우측 기본 패널) main 머지(d0bf5fd) → NAS 라이브 반영·검증 완료 (index.html 갱신 + AgentOffice 번들 nginx 200)
  • 배포 방법: Z: 매핑이 ! TTY로 안 돼서 SSH 직접 배포(bgg8988@gahusb.synology.me:2300, tar + scp -O → assets 교체). Synology SFTP off라 scp -O 필수, images/videos는 불변이라 미러 제외. 상세 → memory/feedback_windows_frontend_ssh_deploy.md

2. 운영 검증 (분산·자율 학습)

  • Redis 분산 E2E (NAS push → Windows 워커 → webhook 전체 흐름)
  • lotto weight-evolver 주간 사이클(월 generate+apply → 토 evaluate) 정상 동작 + evolution report 텔레그램(토 22:15)

🟡 미완성 큰 기능

Video Studio 프론트 /studio — 백엔드 완료, UI 미구현

  • 백엔드 완료·배포: image-lab(NAS 18802) + image-render(Windows web-ai) + video-lab(기존) (plans/2026-05-23-video-studio-backend.md 전부)
  • 빠진 것: web-ui React Flow 노드 캔버스(ImageGenNode → ImageToVideoNode). 백엔드 plan이 "프론트는 Plan 2"로 미뤘으나 Plan 2 미생성
  • spec: docs/superpowers/specs/2026-05-23-video-studio-node-canvas-design.md (untracked — 커밋 필요)
  • 목적: 무신사·우리카드 AI 영상 공모전 실전 제작 도구

🟡 후속 (직전 작업 범위 밖)

music 파이프라인 stuck 감지

  • 6/12 신뢰성 작업이 명시적으로 남긴 갭: *_running hang · *_pending 방치 · retrying 중 컨테이너 재시작 시 stuck(현 retry 가드가 state=failed라 재retry 불가)
  • 상세: memory/service_music.md "파이프라인 신뢰성/복구 — 범위 밖"

🟢 백로그 아이디어

  • Redis 큐 통합 모니터링 — agent-office에 queue:*-render/queue:paused 길이·상태 패널 (NAS↔Windows 작업 흐름 가시화)
  • weight-evolver 성과 대시보드 — auto_picks 적중 추이 + weight_base 진화 그래프 (자율 학습 실효성 검증)
  • lotto-signals 패턴 확장 — adaptive baseline + z-score + urgent 텔레그램을 stock(이상치)·realestate(경쟁률 급변)에 재사용
  • nginx internal 차단 표준화 — insta/music/video/image 3-layer 차단을 공통 include로 추출
  • agent-office 레거시 정리 — tarot_readings 테이블 잔존(tarot-lab 분리 후), seed "blog" 죽은 에이전트

보류 유지 (박재오 판단 대기)

  • stock 뉴스 스크랩 비동기화 — BackgroundScheduler I/O wait라 CPU 미미, 큰 리팩토링 vs 효과 불명확
  • lotto Monte Carlo 빈도(6→3회/일) — CPU 50%↓ vs 자율 학습 정확도 trade-off
  • 컨테이너 리소스 제한 — 박재오 금지(J4025 2C throughput 손해) · NAS 업그레이드 ⏸️ 보류(Redis 분산으로 우선순위↓)

🔧 진단 커맨드 (NAS bash)

top -b -n 1 | head -25                                  # CPU 상위
docker stats --no-stream                                # 컨테이너별 CPU/메모리
docker exec redis redis-cli PING                        # Redis 헬스
docker exec redis redis-cli KEYS 'queue:*'              # 큐 키 목록
docker exec redis redis-cli LLEN queue:insta-render     # 큐 길이
docker logs agent-office 2>&1 | grep -E "APScheduler|executing" | tail -50
docker exec insta-lab ps aux | grep chromium | wc -l    # (분할 후 0이어야 정상)

📚 참고

  • 메모리 인덱스: memory/MEMORY.md (14 서비스 × service_<name>.md authoritative)
  • Windows 워커 짝: web-ai 레포 (insta/music/video/image-render)
  • spec/plan: docs/superpowers/specs|plans/
  • docker-compose.yml: 루트

변경 이력

  • 2026-05-18: 페이지 신설. CPU 진단 즉시 5건 + 7결정 분산 가이드.
  • 2026-05-22: 분산·자율화 구현 반영. Redis 분할·lotto 능동시그널·weight-evolver.
  • 2026-06-12: 5/25~6/12 전체 작업 반영 — tarot/saju 분리·신설, _shared 로그, lotto v3 백테스트, stock 보유종목 인텔, nginx CVE, insta 카드뉴스 v2 + 자율발급, 에이전트 오버사이트, music 파이프라인 신뢰성. 미완성 큰 기능(Video Studio 프론트) + 후속(music stuck 감지) + 백로그 재편. 현재 트랙(oversight 프론트 배포) 명시.