Files
KArtSell.Aegis/docs/Design/kbx-foundation-v60-status-canonical-contract-hardening/docs/reconcile-v6.md
T
kjh2064 3f293d8aa8
deploy / deploy (push) Successful in 1m52s
deploy / notify (push) Successful in 1s
V13-FE-006: consolidate approved UI and contract hardening
2026-08-13 02:41:00 +09:00

1.5 KiB

KBX v6 — Reconcile Standard

원칙

대사는 사람이 OMS 화면과 WMS 화면을 번갈아 열어 숫자를 비교하는 작업을 시스템이 대신하는 기능이다.

모든 대사 Row는 다음 구조를 갖는다.

Reference → Expected → Actual → Difference → Reason → Resolution

대표 대사

  • OMS 주문수량 ↔ WMS 출고지시수량
  • OMS 출고지시 ↔ WMS 피킹/검수수량
  • 주문 할당수량 ↔ 재고 Reservation
  • WMS 실재고 ↔ ERP 재고 Snapshot
  • 외부 송장전송 요청 ↔ 판매채널 반영상태

데이터 구조

kbx.reconcile_items는 비교 결과 Projection이다. 원천 데이터를 복사해 새로운 진실로 만들지 않는다. source_id, target_id, evidence는 문제 원인을 추적하기 위한 근거다.

상태

  • matched: 일치
  • mismatch: 불일치
  • pending: 비동기 처리 중이라 아직 확정할 수 없음
  • resolved: 이전 불일치가 원천 정상화로 해소됨

비동기 시스템 주의

Outbox가 아직 소비되지 않은 순간의 차이를 곧바로 장애로 판단하면 False Positive가 많아진다. 각 대사 유형에 grace period를 두고, 정상적인 eventual consistency 시간 안의 건은 pending으로 분류한다.

예: OMS가 출고지시 Outbox를 Commit한 직후 WMS Inbox가 아직 수신하지 못한 3초 동안은 mismatch가 아니라 pending이다.

Exception 전환

조사가 필요한 mismatch만 COMMON-OPS-001로 전환한다. Reconcile 화면에서 원천 데이터를 직접 UPDATE하지 않는다.