# KBX v35 Standard Traceability

| Standard intent | v35 implementation | Verification |
|---|---|---|
| 신규 화면은 Screen Type부터 선택 | `templateCode` 필수 + T01~T09 Recipe | Screen Governance / v35 Gate |
| Vertical Slice는 임의 Layout을 만들지 않음 | Recipe 기반 Scaffolder가 canonical Template/Component 조합 생성 | Scaffolder Gate |
| Predictable Layout | Template code와 runtime wrapper 일치 검증 | `KbxScreenFrame` / T09 Guard |
| Keyboard 표준 | Recipe별 기본 Command/Shortcut 유지 | Recipe contract / existing keyboard gates |
| Grid First | T01/T03/T04/T05/T06/T07 Scaffold가 `KbxDataGrid` 사용 | Scaffolder Gate |
| Exception Driven | Home Attention Queue + T06 Recipe | v35 Home Gate |
| Explicit State | 기존 v33 State Matrix + Recipe Recovery Policy | v33/v35 Gates |
| Permission은 Frontend UX + Backend 최종 Enforcement | Scaffolder write permission fail-closed, Permission Host 유지 | Scaffolder / Authorization Gates |
| 중요 변경은 Audit | T02/T03/T06/T07 Recipe required policies | Recipe contract |
| Excel 직접 DB Insert 금지 | T08 `staging-before-domain-write` | Recipe + 기존 Import Gate |
| WMS 중복 입력 방지 | T09 `idempotent-scan-command` + debounce/replay | v34 Barcode + v35 Recipe |
| AI/Runtime route를 신뢰하지 않음 | Notification route → Screen route allowlist 재검증 | AppFrame v35 Gate |
| Home은 업무 재진입 허브 | Dirty/Failure/Urgent/Running/Unread 우선순위 큐 | `buildKbxHomeAttention` |
| 재현성 | Recipe ↔ Canonical Test Scenario ID 연결 | Recipe generator / v35 Gate |
| 자동 검증 가능한 표준 | Screen Recipe Manifest를 Release Impact에 포함 | Release Governance |

## Source alignment

v35는 KBX Business UX/AX Standard의 9개 Screen Type, Exception Driven, Predictable Layout, Explicit State, Audit by Default 원칙을 구현 기준으로 사용한다.

KBX Design System의 Primitive → Business Component → Screen Template 계층과 Screen Definition of Done을 그대로 유지한다.

KBX Reference Screens의 OMS 주문관리, 주문등록, ERP 품목관리, 재고현황, WMS Picking, Excel Import, Reconcile 화면을 Recipe의 Canonical Scenario와 연결한다.

KBX Implementation Contract의 `70% 표준 Template + Schema / 20% Extension / 10% Custom`, Server Validation, Concurrency, Staging, Idempotency 경계를 변경하지 않는다.
