Common Chat / 배출자·배차담당자·처리자 협업 채팅

역할 공통 채팅 surface와 provider-pending UX

배출자, 배차담당자, 처리자가 같은 chat room surface를 사용합니다. 운전자는 current Figma/Web 계약상 chat viewer가 아니라 배차 확인, 오늘 일정, 배차표, 알림 대상 역할입니다. 현재는 mock room/list/detail/read-state/attachment 중심이며, @kesha-antonov/react-native-chat wrapper, pagination, date-format search, contact sheet, emergency contact, provider-pending contact UX까지 검증됐습니다.

Maestro: emitter-chat Maestro: common-chat-flashlist Driver: not app chat surface Status: realtime backend pending
Roles

3 roles covered

emitter, dispatcher, processor chat entry와 room surface.

Messages

Mocked

read-state, pagination, local draft, attachment draft/remove/send.

Contact

Mocked

Expo UI BottomSheet, dialer provider-pending, emergency fallback.

Backend

Pending

realtime transport, backend read receipt, actual upload provider.

검수용 UX 흐름

1

채팅 화면을 가진 역할 진입

배출자, 배차담당자, 처리자의 홈 CTA 또는 bottom chat tab에서 {role}.chat.screen으로 진입합니다.

2

room list / room detail

room open, header back, Android Back, pagination load-more, date-format search를 검증합니다.

3

메시지와 첨부

mock attachment draft/remove/send와 composer keyboard-back boundary를 통과합니다.

4

연락처 / 긴급 연락처

profile tap으로 contact sheet를 열고, 실제 dialer 대신 provider-pending CTA와 emergency fallback을 표시합니다.

화면 evidence

emitter chat font large
Emitter chat

배출자 CS/채팅 진입점의 font-large clean evidence.

dispatcher chat flashlist
Dispatcher chat

공통 room feed와 FlashList 기반 surface.

processor chat flashlist
Processor chat

처리자 역할의 같은 공통 surface.

common chat responsive
Common chat responsive

공통 채팅 surface의 font scale 1.3 clean evidence.

processor contact bottom sheet
Contact sheet

Expo UI BottomSheet 기반 연락처.

common chat attachment surface
Attachment surface

첨부 draft/remove/send proof.

chat provider pending
Provider pending

real dialer/upload 없이 상태를 설명.

검증 기준

분류증거검수 포인트
Maestroemitter-chat, common-chat-flashlist, lifecycle-chat-notification-proof배출자/배차담당자/처리자 entry, room open, attachment, contact sheet, lifecycle room projection.
Static contract@zerro/mocks/domains/chat/app, mobile chat domain testsmock room/detail/read-state fixture를 backend 전 계약으로 고정.
Driver contractdriver-chat-not-app-surface운전자는 current app chat viewer가 아니며, 배차/운행/알림 경로로 처리합니다.
남은 범위realtime / upload / read-state persistenceSpring backend transport와 DB read receipt shape 결정 후 붙일 수 있음.