1.4 KiB
1.4 KiB
KBX Problem Contract v14
Problem Family
validation
business-rule
conflict
permission
not-found
integration
system
Validation
Field/Grid 입력 오류.
{
"type": "validation",
"title": "입력값을 확인하세요.",
"errors": [
{
"field": "orderQty",
"rowKey": "line-7",
"code": "INSUFFICIENT_STOCK",
"message": "출고 가능 수량은 8개입니다."
}
]
}
Business Rule
Field 하나로 귀속되지 않는 정상적인 업무 거부.
Conflict
Optimistic Concurrency 및 상태 충돌.
Permission
사용자는 기능 존재를 알 수 있지만 실행 권한이 없는 경우 UX에서 명확히 표현할 수 있다. 최종 Enforcement는 Backend다.
Not Found
Lookup Resolve나 Entity 직접 진입에서 공통 처리한다.
Integration
외부 연계 실패. retryable이 명시된다.
System
예상하지 못한 시스템/네트워크 실패. 사용자에게 Stack Trace 대신 correlationId를 제공한다.
Retry 판단
validation → 입력 수정
business-rule → 업무 Action
conflict → 최신 데이터 재조회
permission → 자동 Retry 금지
not-found → 자동 Retry 금지
integration → retryable=true일 때 정책에 따라 재시도
system → retryable=true일 때만 안전 재시도
HTTP Status 숫자만으로 WMS Retry Queue를 결정하지 않는다.