📜 시스템 히스토리 — Shopee 2.0의 탄생
wiki/pages/meta/decisions-log.md · cases/good · cases/bad 직접 인용입니다. 추측 0건.
핵심 통계 통계
시스템 진화의 정량적 지표 — Sprint·케이스·자산·코드라인.
index.html 라인 진화 (P7 → P8)
| 시점 | 라인 수 | 변화 | 비고 |
|---|---|---|---|
| 2026-05-15 이전 | 22,232 | — | 모든 기능 단일 파일 |
| 2026-05-15 Sprint A~C | ~17,142 | −5,090 | promo sub-panel 7개 분리 |
| 2026-05-16~17 (2.0 출범) | ~17,000 | 분산 | /2.0/ 13 페이지 신규 |
2.0 인프라 자산 규모
| 자산 | 라인 | 역할 |
|---|---|---|
_shell.js | 583 | 인증·라우팅·api()·Modal·FAB·단축키 |
_shell.css | 645 | 레이아웃·Modal·Mobile·FAB |
_tokens.css | 156 | 색·간격·모서리·이징 토큰 |
_publish.js | 471 | 8국 publish + polling + compliance |
_promo.js | 2,032 | 8 sub + 13 modal + xlsx 도구 |
_settings.js | 566 | 7 섹션 + 권한 3등급 |
manual.html | 817 | 14 섹션 정적 매뉴얼 |
Phase −1 — 선사 시대 (학습 + shopee-manager 첫 구축) P-1 2026-03-27 ~ 2026-04-20
강의 수강 + 첫 시제품 제작 + shopee-manager 컨테이너 운영 시작. 본격 가격·정책 결정 이전의 *학습과 인프라 기반 마련* 단계. 실제로는 약 25일간 풍부한 사전 작업이 존재.
시간선
- 2026-03-27샤인택스 사업자 강의 —
쇼피 사업자 강의_샤인택스 26.3.27.pdf. 사업자 등록·세무·VAT 환급 기초. - 2026-04-03쇼피 강의 보조 자료 (
shopBG.jpg) 저장 - 2026-04-04가격 계산기 HTML 첫 제작 —
shopee_price_calculator.html(이후 calc.html 진화의 시드) - 2026-04-09쇼피 SG 카탈로그 PDF 분석 (
sg-11195002-bmlg7-mm9pyahrjpqndb.pdf) - 2026-04-12디지털 프리덤 쇼피 4기 강의 자료 수강 본격화:
- 동남아역직구 쇼피 초대장 4기 PDF
- 쇼피 완전정복 1~4주차 PDF (VAT 영세율·샵파워·CB값·페널티·바우처·AMS·DTS·FBS·CS·Mass·세무·정부지원)
- KRCB 쇼피 셀러 월렛 사용자 가이드 (PPTX)
- 등록된 브랜드 리스트 (XLSX)
- 2026-04-18shopee-manager 구축 세션 — 318 메시지 중요:
- 이미
shopee-auth컨테이너 (port 3001) 운영 중 server.js·match.py·nominate_config.js·patch_nominate.py가동/nominate/rows/:countryendpoint +nominateCache구조 캐싱- 도메인
auth.netkilink.me.kr운영 - 이전 세션
discount_nominate이미 존재 — 즉 그 이전부터 작업 누적 - 핵심 페이지 첫 버전 저장:
index.html·register.html·nominate.html·category.html - SG 카테고리 첫 캡처 (
shopee_categories_SG.json)
- 이미
- 2026-04-19첫 실제 Shopee 업로드 세션 — Excel xlsx 3차 작업:
- 01:18 · 12:38 · 14:07 — 동일한 날 3번 업로드 시도 (반복 수정)
2026_04_19_*_Shopee_upload.xlsx+ 원본 xlsx 페어 보존
- 2026-04-20 12:49~12:53Shopee Open API 425건 JSON 캡처 —
raw/shopee/api/(_all_apis.json6.5MB 포함). 가격·재고·프로모션·물류·광고 모든 API 표준 응답. - 2026-04-20 20:46~20:51Shopee 셀러센터 티켓 시스템 분석 —
raw/shopee/tickets/:_all_ticket_docs.json(77KB) — 티켓 카테고리 전수- 11종 카테고리 JSON (Onboarding / APP Management / Seller Auth / Sandbox / Instant Mart / CB Shop / Feature APIs / Push / Data Security / Troubleshoot / Chatbot)
- debug console html/png 2장 (Playwright 자동화 흔적)
이 시기에 이미 갖춰져 있던 자산
| 구분 | 자산 | 상태 |
|---|---|---|
| 인프라 | NAS UGREEN + Mac Mini + Tailscale | 운영 중 |
| 컨테이너 | shopee-auth (port 3001) | 운영 중 (4-18 확인) |
| 코드 | server.js + match.py + nominate_config.js | 4-18 운영 |
| UI | index.html + register.html + nominate.html + category.html | 4-18 첫 버전 |
| 도메인 | auth.netkilink.me.kr | 운영 중 |
| 학습 | 샤인택스 강의 + 쇼피 4기 4주차 PDF | 수강 완료 |
| API 레퍼런스 | Shopee Open API 425건 JSON | 4-20 전수 캡처 |
| 운영 데이터 | 4-19 실 Shopee 업로드 xlsx 3회 | 실 업로드 완료 |
| 티켓 분석 | 셀러센터 티켓 11종 카테고리 JSON | 4-20 캡처 |
discount_nominate"이 존재 — 즉 4-17 이전부터 작업이 누적되어 있었으나, 트랜스크립트는 외부 시스템에 있어 본 위키에는 보존되지 않았습니다. 4-18은 우리가 직접 보존한 가장 이른 세션.
Phase 0 — 출발선 (위키 기준 시드) P0 2026-04-21 직전 시점 (위키 seed)
위키 시스템이 구축된 5-04 시점에 seed-overview.md로 캡처된 "출발선" 환경 정의. 실제 코드/운영은 Phase −1부터 누적되어 있었음.
인프라 스택
- NAS: UGREEN DXP4800 Plus — 내부
192.168.0.19/ 공인125.129.111.169 - Mac Mini:
stitch@gilgeunbaeui-Macmini - 컨테이너:
shopee-auth(port 3000) — 통합 운영 서버 - 외부: Tailscale (사설 VPN), Notion (일일/주간 자동 리포트)
기존 자료 자산
- Shopee Open API 엔드포인트 JSON 425건
- Integration Guide (CNSC·KRSC·global_product)
- 쇼피 4기 강의자료 4주차
- 원가계산기·Report·registration tool
- shopee-crawler 소스코드
Phase 1 — 가격·카테고리 기반 정립 P1 2026-04-21 ~ 04-26
가격 시스템과 카테고리 시스템의 기반이 정립된 시기. 국가별 특이사항(VN/MX) 인지 + autoPrice/systemPrice 분리의 단초.
결정 시간선
- 04-21VN/MX
is_free미지원 발견 → 무료배송 분기 추가 - 04-21TH FDA 자동화:
attr_id=100963"N/A" 자동 입력 - 04-22가격 시스템 분석 완료 (
raw/shopee/system/shopee_pricing_analysis.md) - 04-22모든 상품 디스카운트 프로모션 필수 참가 결정 정책
- 04-22카테고리 시스템 동적 로드 — 구 21개 hardcoded → 2,539 leaf
- 04-26REVIEWING 상태 이슈 인지 — Shopee 임시 락, 가격 수정·프로모션 거부
Phase 2 — SSOT + Wiki + 승인 룰 P2 2026-04-29 ~ 05-04
시스템의 진실원천(SSOT)이 *Shopee 셀러센터 실가격*으로 확정되고, "항상 승인 먼저" 룰이 강한 약속으로 자리잡고, NAS·Wiki 시스템이 구축된 핵심 전환점.
2026-04-29 — 강한 승인 룰 수립
결정: "*항상 승인 먼저*" (feedback_always_ask_approval.md). 모든 파일 수정·복원·배포는 사전 설명 + 승인 후 실행, 예외 없음.
2026-05-03 ~ 05-04 새벽 — 가격 시스템 진화 (8 시각 결정)
| 시각 | 결정 |
|---|---|
| 19:30 | 시나리오 1·2 (셀별 보정 + 모달) 첫 구현 |
| 20:30 | "한 화면에서 처리" — G-USD 컬럼 도입 |
| 21:00 | base를 USD 환산값으로 강제 → 전체 over → CEO 강한 지적 |
| 21:15 | base = autoPrices 우선으로 복귀 (정확) |
| 21:30 | "글로벌 가격 수정이 더 낫다" — USD 인상 = 정가 비례 인상 합의 |
| 22:00 | "USD 수정 시 정가·할인율 변화 시각 확인" 요구 |
| 22:30 | "내가 봐야할 정가는 쇼피의 가격" — Shopee SSOT 원칙 수립 SSOT |
| 23:00 | update-price 라우트가 8개국 product/update_price 호출 |
| 23:30 | A+C 결합 — 미리보기 진입 시 자동 sync + 야간 batch |
2026-05-03 (오후) — NAS 단일 저장소 결정
- 감열식 포장주문서 CSS 개선 (도트 게인 진단)
- shopee-docs 통합 자료 NAS 이전 (13 카테고리 ~120M)
- "앞으로 모든 자료는 NAS" 정책 수립 (
feedback_save_to_nas.md)
2026-05-04 새벽 — Wiki 시스템 구축
- LLM Wiki 시스템 (
/volume1/docker/wiki/) 구축 - 모든 작업·메모리·시스템 지식의 위키화 결정
- 옵시디언 vault 연동 (Tailscale → NAS mount)
Phase 3 — 5팀 워크플로우 정착 P3 2026-05-04 ~ 05-06
CEO + 5팀 (기획·재무·개발·검증·운영) 에이전트 워크플로우 정식 도입. Sprint Contract와 4 Grading Criteria가 도입되고, 검증팀 외부 평가 사이클이 3차 통과로 정착.
2026-05-04 오후 — 5팀 도입
| 팀 | 헌장 |
|---|---|
| 📋 기획 | 빠름·추측 금지·의도 파악·설득까지·맡은 일에 철저 |
| 💰 재무 | 정부 지원사업·VAT·정산서 마진 검증 |
| 🛠 개발 | 핵심 + 획기적 사고·자기개발·기획팀 경유·절대 기준 유지 |
| 🔍 검증 | 만든 사람 말 안 믿음·증거 중심·yes-man 거부 |
| 📦 운영 | 매일 같은 일 같은 품질·이상 즉시 알림 |
2026-05-04 저녁 — 5팀 첫 협업 실험 ⭐
- Task: 7개 과거 사고 → 회귀 하네스 케이스 정식 변환
- 결과: 통과 — 7건
cases/bad/+ 7건harness/cases/+ 인덱스 갱신 - 본 실험 자체가 좋은 케이스로 등록
2026-05-06 — 5팀 정의 7개 항목 일괄 업그레이드
CEO 옵션 2 선택: 🔴 + 🟡 모두 진행. 추가된 자산:
- Sprint Contract (위험 🟠 이상) — 기획팀 명세 후 개발팀+검증팀이 Done 정의 사전 협상
- 4 Grading Criteria — Spec Fidelity / Translation / Compliance / Completeness 1~5점
- 검증팀 자체 prompt 강화 트리거 — N=3회 누적 시 구조 재검토
- cron 룰 명시 + 페널티 책임 분리
- 재무팀 AI 비용 추적 트래커
2026-05-06 새벽 — 검증팀 외부 평가 3차 사이클 ⭐ 시스템 검증
| 사이클 | 점수 | 판정 | 잔존 결함 |
|---|---|---|---|
| 1차 | 14/20 | ❌ 실패 | HIGH 1 / MED 1 / LOW 1 |
| 2차 | 14/20 | ❌ 실패 | 잔존 4건 |
| 3차 | 20/20 | ✅ 통과 | 모든 evidence 확인 |
Phase 4 — KMC Tier 2 + v2 Design Handoff P4 2026-05-07 ~ 05-09
KMC batch 138건 100% 성공. Claude Design handoff 워크플로우 표준화. Production critical bug 2건 즉시 fix.
2026-05-07 — Tier 2 batch e2e (5/5) PASS
- Office Phase 2.5: Playwright KMC e2e (Sweeteen 등록 통과)
- 기초세트
ca_id=4010105건 첫 통과 — items.json 320→325 (+5건 SC-11) - fail=0, blocks=0. 도메인 C — 17/20 (비가중) 통과
- attribute update 76/109 완료, host worker E2-B + admin token endpoint 추가
2026-05-08 새벽 — Tier 2 batch 401020 138건 ⭐ 마일스톤
다만 5팀 흐름 위반 회고 →
feedback_patch_loop_anti_pattern.md 회귀 룰 추가 (위험 🟠 작업 fail 시 즉흥 patch 반복 금지, 3회 후 STOP + baseline 복원).
2026-05-08 오후 — autoSync race + Sprint A1~D + S
- items.json 자동 push 4경로 차단 (
feedback_no_auto_saveitems.md) - attribute 154건 보강 / publish stuck 401+274 → 0
- ship_order 90% 인프라 5단계 완성
- BTS 4건 atomic merge, weight 정규화, KPI 카드
2026-05-09 오전 — 5 sprint 신규 자산 패턴
- v2 디자인 페이지 패턴 — Claude Design handoff URL → gzip 번들 → production 변환
- TSC DA220 인쇄 통합 — 송장+포장 통합 raster, 1.5mm 여백, DOM reverse
- LAN 디바이스 모니터링 (router-monitor) — ARP+ping host script + Notion state alert
- 외부 디바이스 → 집 LAN 자원 호출 패턴 (NAS proxy + JWT) — Cloudflare → NAS → LAN
- Shopee Violation 처리 패턴 — 8종 분류 + bulk update + 선제 정리
2026-05-09 오후/저녁 — 2 Production Critical Bug Fix
Assignment to constant variable throw → publish 전체 실패. line 3711 const → let 분리로 해결. CEO 21건 unpublished 사고의 root cause.
okCount=0 + failCount=0 + pendingCount=0일 때 success로 오인. 3 위치 patch (positive 명시 체크 + 결과 0 → fail 분류).
결과: 21건 unpublished → 6 → 0 (모두 publish 완료) · Thatsall 프로모션 모니터링: 8국 / 2,018 item / 평균 34.3% 할인
Phase 5 — 5팀 초강도 + Schedule + iOS 쇼피박스 P5 2026-05-10 ~ 05-12
5팀 4단계 게이트 도입으로 위험 작업 안정성 강화. Schedule 탭 신규. iPhone 16 Pro LiDAR mesh로 박스 자동 측정 앱 배포.
2026-05-10 — 5팀 초강도 운영 프로토콜
CEO 승인 요청 형식 표준화: 의도 1줄 + 권고 1개 + 트레이드오프 1줄 + Yes/No (옵션 매트릭스 금지, 복잡함은 LLM 내부에).
2026-05-10 ~ 05-11 — Edu Hub + Local LLM RAG
- Local LLM RAG + Antigravity MCP 도입
- Edu Hub 326 article 정리
- Schedule 탭 신규 (5 phase) — 시간 기반 운영 리듬
- KMC sanitizer newline 버그 fix, server.js 패치 5건
2026-05-11 — Schedule 확장 + 가격 용어 확정
- Schedule 4-section / 통화 토글 / refresh
- 월마감 7-col + 정확도 + launchd sync
- items.json ↔ Shopee weight sync 73건
- parcel weight cron 정착
- 가격 용어 6개 정의 (CEO 확정) — 원가·정가·판매가·정산금액·순수익·수익율
- 원가·무게 정의 불변 룰 — CEO 전용 수정 권한
feedback_cost_immutability.md (2026-05-11)
2026-05-12 — KMC sprint 8건 + 검증 룰 형성
KMC fail-storm 영구 fix를 위한 8 sprint 누적:
- paused default / Gate 1 it_id / timeout / AbortController×2
- Patch v2 / fail-storm 완화 / token chmod 644
- kmc-batch-rules skill v3 정착 — 큐 / worker / Gate 1~3 / JWT 갱신 / hang 패턴 단일 진실원천
검증 룰 형성: "모든 업무 후 검증 의무 — 50% 사고 절감 룰" (feedback_verification_step_completion.md). CEO 직접 인용 2회 (2026-05-12, 2026-05-16).
2026-05-12 ~ 05-13 — iPhone 쇼피박스 앱 배포 ⭐ 신규 자산
- iPhone 16 Pro LiDAR mesh 자동 박스 측정 + Scale calibration
- WKWebView로 HTML 가격 계산기 통합
- CLI 빌드+설치 명령 (1분), Free Provisioning 7일
- hardcoded RATES USD 누락 사고 →
feedback_hardcode_data_completeness.md회귀 룰 추가 - AI 비용 sprint 5종 (A/B/C/D Sub1/F P1+P2a) 누적 + prompt skill 인프라 정착
Phase 6 — 채팅·번역·알림 P6 2026-05-13 ~ 05-14
sellerchat 8국 활성화, Gemma 8개국 자동 번역 wrapper, 주문/채팅 신규 알림 시스템 구축 (SSE + Pushover iPhone/Watch).
2026-05-13 — Phase A SG + Phase B-1~4 + Gemma 번역
- sellerchat 마이그레이션 7포인트
- 채팅 위젯 3-pane (목록·대화·번역)
- Gemma 8개국 번역 wrapper:
- Mac Mini ollama
gemma4:e4b-mlx-bf16 - LRU 1000 + TTL 24h, AbortController 10s
- e-commerce system prompt, warm 1.6~1.8초
- Mac Mini ollama
- Sprint 10건 + 사고 6건
신규 회귀 룰 R5 / R7 중요
new Function( 금지. vm.compileFunction 직접 실행 필수. HTML script 블록 전체 0 errors 의무. bare newline 사고 학습.
/chat/ /admin/internal/ 등 인증 endpoint는 authFetch() 필수. 단순 fetch() 직접 호출 금지. 401 사고 학습.
2026-05-13 ~ 05-14 — 주문/채팅 알림 시스템
- calc.html LOGISTICS 분리 + obfuscate
$'replace 함정 사고 정정- voice cloning 실패 — Coqui XTTS-v2 등 무료 모델은 전문 성우 톤 재현 불가. ElevenLabs/Clova 상용 + CEO 직접 생성이 정공
- ntfy → Pushover 전환 (외부 서비스 임의 선택 금지 룰 도출)
2026-05-14 — Shopee 알림 시스템 + AMS
ordercall / chatcall 첫 push cache
- Sprint 7건 + 사고 2건 + AMS PASS 17/20 + UI 19/20
- Nginx X-Real-IP 환경 가정 실측 의무 — 인증 명세 작성 전
docker logs | grep ip:실측 - NAS host script INTERNAL_PORT 의무 — host process는 Docker host port (3001) 의무, container 내부는 3000
- Shopee 캠페인 API 매트릭스 정리 — 셀러 직접 7종 보유
- Shopee 부피무게 divisor 6000 = KR 공식 확정 (외부 3rd party 5000 충돌 주의)
- AI 무게 추정 INDUSTRY BASELINE — Red Stag 2026 + ABO 147K CC BY 4.0 후보
Phase 7 — 페이지 분리 + Path Routing P7 2026-05-15
index.html 22,232 → ~17,000줄로 5,000+ 라인 분리. Path Routing 전환 (# 제거). 검증 룰 9건 신규 (R-NEW-1~9 + QA-R-8/9).
13 Sprint 누적
- Sprint A·B·C 7개 sub-panel 분리 (promo split)
- Sprint Promo Unified 옵션 B 채택 — 옵션 A 시각 회귀로 반려, CEO 의도 미부합
- Path Routing 전환 —
#라우팅 →/calc /schedule /orderspath, server.js catch-all 추가 - 알람 status 확장 — UNPAID 제거 + READY_TO_SHIP 추가 (38시간 0 알람 근본 원인 해결)
신규 회귀 룰 9건
| 코드 | 룰 | 학습 사고 |
|---|---|---|
| R5 | JS 문법 검증 vm.compileFunction 의무 | Phase B-4 bare newline |
| R7 | fetch authFetch 인증 헤더 일관성 | Phase B-1 401 사고 |
| R-NEW-1 | Sprint Contract 통과 기준 ID 사전 grep | Sprint B Gate 3 |
| R-NEW-2 | onclick + forEach 배열 동시 처리 | Sprint B Gate 4 |
| R-NEW-3 | 페이지 분리 시 sessionStorage 토큰 handoff | Sprint A·B |
| R-NEW-4 | sub-panel 분리 전 함수 의존성 전수 grep | Sprint C-1·C-3 (cosmeticCat 재발) |
| R-NEW-5 | Gate 0 사전 grep — 정의 + 호출처 둘 다 | Sprint C-6·C-7 |
| QA-R-8 | 검증팀 CEO 의도 직접 인용 + 명세 반려 권한 | Sprint Promo Unified |
| QA-R-9 | UX 변경 sprint baseline diff 의무 | Sprint Promo Unified 시각 회귀 |
Phase 8 — Shopee 2.0 본격 출범 P8 2026-05-16 ~ 05-17
v2 폐기 → 2.0 자체 인증으로 정공 변환. Shell 인프라 + 13 페이지가 단 2일 만에 출범. Sprint 9~27 완성.
2026-05-16 — Shopee 2.0 본격 출범
- v2 폐기 → 2.0 자체 인증 + Schedule/Dashboard/Orders status-centric 정공 변환
- Phase B: 원가/수익/수익율 통합 / Phase C: 통합 송장 직송
- v1 helper 가정 사고 5건 → 룰 강화 6 체크리스트
- 오후: 14 sprint 평균 19.2/20 + 사고 4건 (외부 source 알람·multiline name·TSC 50.75mm·모델 ID)
- Gemma vs Claude 검증 → Claude 채택
- sellerchat 8국 활성
- Sprint 13 calc 2.0 (1110 lines, B1~B4b-2)
2026-05-17 새벽 — Sprint 14 Publish 흐름 완성
CEO 전권 부여 후 Phase A→B-1→B-2→B-3→C 통째 완성:
| Phase | 핵심 내용 |
|---|---|
| A | _publish.js 471 lines 신규, _publish_static.js (SHOPEE_COUNTRIES 8개국 + FLAGS) |
| B-1 | pubGlobalSkuRegister + renderQueue + _registerOnce + bindBatchBar |
| B-2 | needAttrs 모달 (_showAttrModal) |
| B-3 | COMPLIANCE_PATTERNS 17개 (TW 中文 7 + EN 6 + SHOP CLOSURE 1 + 번역 위험 3) + rate limit retry <4 |
| C | 8국 publish + polling (delays [2,4,8,16]s, pending===0 종료) |
백로그 4건 자율 처리: Detail Images publish 통합 / SHOP CLOSURE confirm 다이얼로그 / polling progress bar / AT 17 명세 정정 (19/20으로 상향)
2026-05-17 오후 — Sprint 15~27 대형 13 sprint ⭐ 평균 19.7/20
| Sprint | 완성 자산 | 점수 |
|---|---|---|
| 15-promo | claude.ai/design handoff → /2.0/promo (832 jsx → 769+510+124 vanilla) | 19/20 |
| 16-promo | 28 stub → 실 authFetch 매핑 (+406 lines) | 19/20 |
| 17-promo | 9 modal 입력 form (+819 lines) | 20/20 |
| 18-promo | xlsx 캠페인 도구 (SheetJS) — 8국 통계 | 19/20 |
| 19-login | 2-col + hero + 8국 flag + 비번 토글 + Enter submit | 20/20 |
| 20-settings | 7 섹션 + 권한 3등급 (auth/captain/admin) | 19/20 |
| 20-fix | localStorage 진실원천 통일 + DEFAULT_* v1 직접 인용 | PASS |
| 21-manual | 14 섹션 정적 매뉴얼 (Sprint 9~21 이력) | 20/20 |
| 22-mobile | iPhone HIG 6 항목 (16px input·44×44·safe-area·100dvh) | 19/20 |
| 23-fix | 모바일 audio noop stub + 🔔 제거 + span 통일 | PASS |
| 24 (B~F) | 디자인 일관성 + 사용편의성 인프라 (_tokens+21 / _shell.css+156 / _shell.js+85) | 19/20 |
| 25 | api() wrapper 6 페이지 마이그레이션 + R7 위반 4건 정정 | 20/20 |
| 26 | Shell.confirmModal + promptModal Promise helper (11건) | 19/20 |
| 27 | FAB + 전역 단축키 11종 (g+d/s/o/h/c/p/r/f/i/m + ?) | 20/20 |
server.js 사고 2건 즉시 정정
/config/fees POST → cfg.fees 저장 / 사용 cfg.settings.fees nested 불일치. cfg.settings 키 자체 미존재 → calc-margin-prices RATES_CFG/FEES_CFG/VOUCHER_CFG 모두 빈 {} → 가격 계산 0. line 4838-4841 / 1540 / 13887 정정.
260517KWKK77W4 송장 인쇄 시 "package should print first" 에러. line 6525 / 10131 4단계 흐름 추가 — get_shipping_document_parameter → get_tracking_number → create_shipping_document → poll get_shipping_document_result (20×2s) → download_shipping_document.
2.0 시스템 완성 매트릭스 (Sprint 9~27)
- Sprint 9: Shell + login + 인증
- 10: Schedule · 11: Orders · 12: Dashboard
- 13: Calc (Phase A~B4e + C + D)
- 14: Publish (Phase A~C + 백로그 4건)
- 15~18: Promo (handoff + endpoint + modal + xlsx)
- 19: Login (handoff redesign)
- 20: Settings (+fix)
- 21: Manual (14 섹션)
- 22~23: Mobile (HIG + audio fix)
- 24~27: 디자인 일관성 + api()/Modal 마이그 + FAB+단축키
핵심 결정 인덱스 색인
날짜순 단일 진실원천 결정 표. 출처는 wiki/pages/meta/decisions-log.md.
| 날짜 | 결정 | 출처 |
|---|---|---|
| 2026-03-27 | 샤인택스 사업자 강의 (세무·VAT 기초) | lectures/쇼피 사업자 강의_샤인택스 26.3.27.pdf |
| 2026-04-04 | 가격 계산기 HTML 첫 제작 (calc.html 시드) | lectures/shopee_price_calculator.html |
| 2026-04-12 | 디지털 프리덤 쇼피 4기 1~4주차 PDF 수강 | lectures/쇼피 완전정복 1~4주차 |
| 2026-04-18 | shopee-manager 318 메시지 세션 (이미 server.js/match.py 운영) | internal/conversation_2026_04_18.json |
| 2026-04-19 | 첫 실제 Shopee 업로드 xlsx 3회 | system/2026_04_19_*_Shopee_upload.xlsx |
| 2026-04-20 | Open API 425건 + 셀러센터 티켓 11종 JSON 캡처 | raw/shopee/api · tickets |
| 2026-04-21 | VN/MX is_free 분기 | country-quirks |
| 2026-04-22 | 모든 상품 프로모션 필수 | discount-promotion-required |
| 2026-04-22 | 카테고리 동적 로드 (2,539 leaf) | shopee-auth 라우트 |
| 2026-04-26 | REVIEWING 상태 처리 | reviewing-state |
| 2026-04-29 | "항상 승인 먼저" 룰 | feedback_always_ask_approval |
| 2026-05-03 | NAS 단일 저장소 | feedback_save_to_nas |
| 2026-05-03 22:30 | Shopee SSOT 원칙 | decisions-log |
| 2026-05-04 새벽 | Wiki 시스템 구축 | seed-overview |
| 2026-05-04 오후 | 5팀 워크플로우 도입 | team-roles-history-map |
| 2026-05-06 | Sprint Contract + 4 Grading | grading-criteria |
| 2026-05-06 03:55 | 검증팀 3차 통과 (Anthropic harness 원리 검증) | 2026-05-06-qa-grading-criteria-domain-lock |
| 2026-05-08 | Tier 2 batch 138건 100% | 2026-05-08-tier2-batch-401020-138pass |
| 2026-05-09 | v2 Design handoff 표준화 | reference_claude_design_handoff |
| 2026-05-09 | publish-countries const → let (critical bug fix) | 2026-05-09-publish-countries-const-bug |
| 2026-05-10 | 5팀 4-Gate 초강도 운영 | feedback_team_high_intensity |
| 2026-05-11 | 원가·무게 불변 + 가격 용어집 | reference_pricing_glossary |
| 2026-05-12 | KMC fail-storm 영구 fix + iOS 쇼피박스 앱 | reference_iphone_shopee_box_app |
| 2026-05-13 | Gemma 8국 번역 채택 | reference_chat_widget_gemma_translate |
| 2026-05-14 | 주문/채팅 알림 시스템 (SSE + Pushover) | reference_shopee_alert_system |
| 2026-05-15 | Path Routing 전환 (# 제거) | server.js catch-all |
| 2026-05-15 | QA-R-8/9 (CEO 의도 검증 + baseline diff) | feedback_qa_ceo_intent_verify |
| 2026-05-16 | Shopee 2.0 본격 출범 | /2.0/ 페이지군 |
| 2026-05-17 | Sprint 14 Publish 완성 + Sprint 15~27 일괄 | decisions-log |
| 2026-05-17 | Shell 인프라 정착 (api / Modal / FAB / 단축키) | /2.0/_shell.{js,css} |
일별 대화 로그 (Claude Code 자동 분석) 로그
~/.claude/projects/-Users-stitch/*.jsonl 파일에서 자동 추출한 실제 대화 기록. 각 일자 첫 user 메시지 = 그날의 의도. 매주 일요일 23:00 자동 갱신.
일별 첫 의도 (CEO 첫 메시지로 본 그날의 시작)
| 날짜 | 세션 (시작~끝) | L · Tools | CEO 첫 의도 |
|---|---|---|---|
| 04-18 | 14:18~03:23 (3개) | 5585L · 1298 | "ssh root@192.168.200.1 로 접속해서 /volume1/docker/shopee-manager/ 폴더 구조 보여줘 / 우리 조금전까지의 대화 기억하고 있니?" — shopee-manager 첫 분석 + CLAUDE_1.md 컨텍스트 인계 (5팀 시드 이전) |
| 04-20 | 03:25~15:36 (1개) | 30,221L · 7489 최대 | "stitch@gilgeunbaeui-Macmini shopee-crawler % cd ~/Desktop/shopee-crawler node crawl.js 🚀 Shopee API 문서 크롤러 시작 ✗ 치명적 오류: Unexpected token 'p', "pbpaste > "... is not valid JSON stitch@gilgeunbaeui-Macm" — shopee-crawler — Shopee Open API 425건 + 티켓 11종 전수 크롤링 (12시간 대장정) |
| 04-26 | 15:39~03:08 (1개) | 15,381L · 3897 대형 | "/volume1/docker/shopee-auth" — SMB 마운트 + REVIEWING 상태 인지 + 카테고리 동적화 |
| 05-02 | 03:09~07:34 (2개) | 1930L · 397 | "어제에 이어서 일을 진행하려고 하는데 지억하고 있니? / 이전세션에서 하던일을 가져와봐" — 세션 재개 + 이전 컨텍스트 복원 |
| 05-03 | 07:35~03:13 (1개) | 2383L · 523 | "[Image #1] 이건 송장 출력시 함꼐 출력되는 포장주문서인데 구분선이 출력이 안되고 국기 그래픽도 음영이 있는 부분은 인쇄가 안되는것 같은데 감열식은 음영이 출력안되나?" — 감열식 도트 게인 진단 + NAS 단일 저장소 결정 |
| 05-04 | 03:14~06:05 (1개) | 1929L · 409 | "[Image #1] 현재 구동중인게 있는데 통합이 가능할것 같아" — Wiki 시스템 구축 + 5팀 도입 |
| 05-05 | 06:07~00:37 (2개) | 3765L · 930 | "이전 대화 기억하니? / 2026-05-05 세션 작업 요약" — 메모리 룰 강화 + 쿠팡북마크 할인전 가격 사고 |
| 05-06 | 00:38~03:13 (2개) | 3796L · 812 | "apahfl qnffjdhk / [Image: source: /var/folders/2r/6mj79dcj3lj81cy1vr7r79v80000gn/T/TemporaryItems/NSIRD_screencaptureui_muL5E2/스크린샷 2026-05-06 오후 11.01.44.png]" — 5팀 7개 항목 업그레이드 + 검증 사이클 3차 통과 |
| 05-07 | 03:15~00:47 (1개) | 4311L · 431 | "메모리 읽어와서 다음단계 시작하자" — Tier 2 KMC batch e2e 첫 통과 (ca_id=401010, 5/5) |
| 05-08 | 00:48~07:50 (2개) | 3718L · 857 | "apahflqnffjdhktj tptuswnsqlgownj / drafts 5건 정식 case로 승격해줘" — Tier 2 batch 401020 138건 100% 성공 |
| 05-09 | 07:52~16:40 (2개) | 3760L · 934 | "메모리 불러와 다음 세션 시작하자 / 5개 팀을 효율적으로 운영" — Phase A~D 6 sprint + 2 critical bug fix (publish-countries const) |
| 05-10 | 16:41~08:26 (1개) | 2147L · 558 | "Schedule 탭 수정" — DTS 리미트 분석 + Schedule 탭 신규 |
| 05-11 | 08:28~03:36 (1개) | 2074L · 484 | "- chat-rate-monitor cron — 미등록 (CEO 결정 대기) - schedule-d1-monitor cron — 미등록 (CEO 결정 대기) 자세히 설명해줘" — 월마감 + 무게 audit + 가격 용어 6개 확정 |
| 05-12 | 03:37~08:42 (2개) | 3962L · 919 | "Base directory for this skill: /Users/stitch/.claude/skills/kmc-batch-rules # KMC batch 등록 룰 — 빠짐없는 단일 진실원천 자세한 원본 케이스는 `references/` 폴더 참조: - `references/cases-bad.md` — BAD 케이스 7건 (race, timeout, es / 세션길이를 늘릴수는 없니..?" — KMC fail-storm 영구 fix + iPhone 쇼피박스 LiDAR 앱 배포 |
| 05-13 | 11:09~03:41 (1개) | 1455L · 338 | "어제만든 쇼피박스라는 어플이 있는데 카메라부분만 제외하면 html은 누구나 사용이 가능하겠지?" — calc.html obfuscate + Gemma 8국 번역 wrapper |
| 05-14 | 08:46~09:34 (1개) | 1546L · 202 | "/Users/stitch/Downloads/프로덕트\ 캠패인\ 템플릿\ v2\ \(1\).xlsx 이건 프로덕트 캠페인시에 메시업데이트를 위한 각국가별 템플릿이야 일단 분석해봐 내가 어떻게 업무처리를 하고 있는지 그다음에 설명해줄께" — AMS Open Campaign + 주문/채팅 알림 (SSE + Pushover) |
| 05-15 | 05:27~04:35 (3개) | 3266L · 680 | "https://github.com/drivetechodyssey-tech/hermes-m5max-setup/blob/main/macbook-m5-simulator.html 이거 어떻게 볼수있어 / 메모리 불러와 계속 작업해야해" — Sprint A/B/C promo 분리 + Path Routing + QA-R-8/9 |
| 05-16 | 04:36~05:04 (3개) | 5137L · 1423 | "검증 소홀히 하지 말고 꼭 검증팀은 제역량을 다할것 진행해 / apahflfhemgkrh ekdmawkrdjq tlfgodgo" — Shopee 2.0 본격 출범 + sellerchat 8국 + Sprint 13 calc 2.0 |
| 05-17 | 05:46~14:55 (2개) | 2323L · 639 | "웹버전을 완벽히 구성후에 앱화하는것이 좋지 ㅇ낳을까..? / 옵시디언 데이터를 기반으로 현재 시스템 만들어온 과정을 날짜별로 절이해서 히스토리 페이지를 만들어줘" — Sprint 14~27 + history 페이지 + server.js 사고 2건 정정 |
상위 5 세션 (Tool 기준)
| 순위 | 날짜 | 라인 | Tools | 요지 |
|---|---|---|---|---|
| 🥇 1위 | 2026-04-20 | 30,221L | 7489 | shopee-crawler — Shopee Open API 425건 + 티켓 11종 전수 크롤링 (12시간 대장정) |
| 🥈 2위 | 2026-04-26 | 15,381L | 3897 | SMB 마운트 + REVIEWING 상태 인지 + 카테고리 동적화 |
| 🥉 3위 | 2026-04-18 | 5279L | 1244 | shopee-manager 첫 분석 + CLAUDE_1.md 컨텍스트 인계 (5팀 시드 이전) |
| 4위 | 2026-05-10 | 2147L | 558 | DTS 리미트 분석 + Schedule 탭 신규 |
| 5위 | 2026-05-09 | 2106L | 553 | Phase A~D 6 sprint + 2 critical bug fix (publish-countries const) |
~/.claude/projects/-Users-stitch/*.jsonl 파일 직접 파싱. Mac Claude Code CLI 세션 한정. claude.ai 웹 인터페이스 / Anthropic Console 작업은 미포함 (단, conversation_2026_04_18.json 318 메시지는 별도 export로 보존). 일부 일자 공백은 활동 없음이 아니라 *jsonl로 보존되지 않은 외부 세션*일 수 있음.
핵심 원칙 (시스템 진화의 DNA) 원칙
이 시스템이 27일 만에 안정적으로 진화할 수 있었던 11개 핵심 원칙. 각 원칙은 실제 사고에서 도출됨.
- Shopee 셀러센터 실가격이 SSOT — 자체 공식 X, Shopee API 응답 O P2
- autoPrices는 항상 최신 — sync 1시간 TTL + 야간 batch P2
- USD 변경 = 정가 비례 인상 — ratio = newUsd/prevUsd, 모든 국가 동일 적용 P2
- 검증해서 보고 — 사용자에게 떠넘기지 않음 P2
- 모든 자료는 NAS — Mac 로컬 단독 보관 금지 P2
- 위키는 영구 보존 — 세션·메모리·결정 모두 위키화 P2
- 항상 승인 먼저 — 파일 수정·복원·배포는 사전 설명 + 승인 후 실행 P2
- Anthropic harness 원리 — 작업자와 평가자 분리 (외부 평가 사이클) P3
- 위험 🟠 이상은 Sprint Contract — DoR + 4 Grading + 외부 재대조 + +α P3·P5
- R5/R7 + Gate 0 사전 grep — JS 문법 + authFetch + 의존성 전수 확인 P6·P7
- 단계적 완료 후 진행 — Sprint 묶음 처리 금지, CEO 응답 대기 P7
📝 출처: wiki/pages/meta/decisions-log.md · cases/good · cases/bad · pages/sessions/ · ~/.claude/projects/*.jsonl
마지막 자동 갱신: 2026-05-17 23:55 · 주기: 매주 일요일 23:00 (launchd) · Narrative 19/19일 · Gemma OFF (CEO 지시 2026-05-17)