MAKITTHandoff
Handoff Boards
finishedargo-claim-sync

Argo Claim Sync — E2E Handoff 보드

Argo Claim Sync — E2E Handoff 보드

  • ARGO 클레임 API surface 리서치 (코드) — cancel + exchange-return endpoint, DTO, state requirement (2026-05-03)
  • Cancel 풀루프 dev e2e (CO0000000365524, PAID → CANCELED) (2026-05-03)
  • ARGO claim API 의 storeItemId 강제 차단점 발견 — option D 적용 (argo-oms 067c99c03) (2026-05-03)
  • State requirement 매핑 — 반품/교환 = DELIVERY_START | ORDER_FINISHED | UNPROCESSABLE
  • Kafka 토픽 카탈로그 정리 (KafkaTopics.java)
  • docs/spec/argo/claim.md 신규 작성 + README 인덱스 + 기술 교훈 #9
  • option D 적용 (canonical store_item getOrCreate) — argo-oms commit 067c99c03 → makitt + deploy-dev 머지 push (2026-05-03)
  • 부분 cancel storeItemId 검증 통과 (CO0000000365527 PAID → CANCELED)
  • 반품 storeItemId 검증 통과 (이전 차단점 해소)

2026-05-06 사이클 (이번 세션) ✅

  • dev pasta carrier setup — pasta.vendor row INSERT + internal-api/logistics-delivery-mapping (cache evict 동시). 2-layer Redis cache 함정 발견 + 문서화
  • backfill SQL — option D 이전 sync 된 11건 OSI store_item_id 정상화
  • 반품 풀 lifecycle e2e — RN0000004300: 등록 → instruction → 강제완료. RETURN_COMPLETED + RETRIEVE_COMPLETED 도달
  • 교환 등록 + replacement order — EX26050600001164, 새 replacement order CO0000000365563 생성, EXCHANGE_REQUESTED 진입
  • OUTBOUND-진행 중 cancel — CO0000000365462 (PRODUCT_PREPARATION → CANCELED). 일반 cancel API 가 wms 까지 자동 전파
  • 4 state machine + Kafka 토픽 매트릭스 문서 — claim-state-machine.md 신규
  • /argo-test SKILL.md 업데이트 — return-order / exchange-order action 본 spec
  • 메모리 신규 — reference_pasta_carrier_pick.md, feedback_aws_sso_proactive.md
  • claim.md §6 갱신 — 모든 e2e 사례 + dev setup SQL

다음 사이클

2026-05-06 후반 사이클 ✅ (이번 세션 — 양방향 코드 작성)

  • 양방향 spec — README.md §1~§9 + README.test.md (e2e 시나리오 + 함정)
  • Phase 2: MAKITT outbound dispatcher — OrderClaimRequestedArgoDispatcher 신규
    • makitt.domain.v1 OrderClaimRequested 구독 → makitt-order-event (eventType 분기) publish
  • Phase 3: ARGO consumer 분기 — MakittOrderEventConsumerContainer switch 확장 (cancel/return/exchange)
    • OmsInternalMakittClient.processClaim — internal HTTP 호출
    • InternalMakittOrderController — /cancel, /returns, /exchanges 엔드포인트
    • MakittClaimSyncApplication — cancel 본 구현 (return/exchange 는 stub, 다음 사이클)
  • Phase 4: ARGO callback producer — MakittClaimStateChangeProducer 신규
    • KafkaTopics.MAKITT_CLAIM_STATE_CHANGE 토픽 상수 신규
    • MakittClaimStateChangeMessage DTO 신규
    • ArgoKafkaProducerConfig 에 bean 추가
    • cancel 후 channelId=11200 한정 발행
  • Phase 5: MAKITT inbound consumer + handler
    • PartnerClaim 엔티티 + PartnerClaimKey + Repository + Service 신규
    • ArgoClaimStateChangeConsumer (raw 적재 + platform event publish)
    • ArgoClaimStateChangedHandler (OrderClaim.markResolved + Order.approveCancel)
  • 빌드 검증 — argo-oms + makitt-server compileJava 모두 SUCCESS

Phase 6 — E2E 검증 ✅ (2026-05-06 완료)

  • argo-oms 배포 — makitt 브랜치 commit + deploy-dev 머지 push
  • 양방향 풀체인 검증 — 5 cancel + 2 return + 1 exchange ARGO 전이 모두 callback publish
  • OutboxRelay → makitt.domain.v1 → handler 풀체인 — FLUSHDB + toggle 후 정상 동작 (handler received 로그 + state mapping path 도달 확인)
  • idempotency — Glue Schema Registry typed payload + HandlerIdempotencyService 본 구현

후속 사이클 → README §11 backlog

  • B1 환불 (Toss/Stripe) — P0
  • B2 셀러 admin 클레임 UX — P0
  • B3 부분 cancel/return/exchange — P1
  • B4 ARGO-initiated 콜백 (makittClaimId null 분기) — P1
  • B5 반품 wms-단계 자연 진행
  • B6 교환 풀 path
  • B7 CS / 문의 sync
  • B8 정산 sync

OrderClaimRequested platform event (이미 카탈로그 등재) 발행 → MAKITT dispatcher → ARGO open-api → OMS 처리. 양방향 sync 로 ARGO state 변화도 MAKITT 으로 회신 (PartnerClaim 패턴).

1. ARGO 측 클레임 outbound 토픽 (MAKITT 채널)

매 state 전이마다 oms-private-order-projection-event 1개만 발행 ({internalId, type} 얇은 알림).

cms-sales-channel-*-save-request 토픽들은 INBOUND 방향 (외부 → ARGO) — argo-cms 의 Cafe24/Coupang/Naver Mapper 가 외부 응답 번역해서 발행. 콜백용 outbound 가 아님.

2. pasta carrier 결정 + 2-layer cache

pasta /delivery-company/pick 는 fulfillment 셀러에 대해 logistics_delivery_mapping SSOT. 캐시:

  • 외부: @Cacheable("api:delivery-company:pick", key=vendorCode) Redis 30분 TTL — [] 도 캐시
  • 내부: logistics-delivery-mapping:<VENDOR> Redis list

dev 신규 셀러 setup: pasta vendor INSERT + POST /internal-api/logistics-delivery-mapping (vault token, save + 양 cache 동시 처리)

3. ARGO → MAKITT 콜백 path 권장

신규 makitt-claim-state-change 토픽 (ARGO 측 작은 PR + MAKITT 측 PartnerClaim consumer). 상세: claim-state-machine.md §7.4

비어 있음

당신이 처리할 항목

docs / spec / finished / argo-claim-sync / e2e.md