2026-07-14T05:18:07.909Z
ZERRO Mobile Review Portal
검수자가 오늘 어디서 시작하고 무엇을 판단해야 하는지 먼저 보여주는 human-readable entrypoint입니다.
root UX index node/report target
17 aged over 48h; source freshness is separate
aws-s3 #910 ZERRO dev smoke bucket 기준 real AWS S3 smoke strict gate 재통과, #908/#926 btalk-dev Google Vision OCR smoke 재통과. production document/media signed read URL은 별도 provider slice
문서 정본은 Markdown/JSON이고, HTML은 generated review snapshot입니다. 화면 검수는 UX Flow와 Figma visual audit에서, 실행 증거는 Maestro/agent-device/backend-wire artifact에서 확인합니다. provider/backend/realtime 대기는 화면 미구현과 분리해서 판단합니다.
오늘의 검수 큐
검수자가 먼저 봐야 할 실패, 오래된 증거, provider/backend 대기 항목입니다.
dispatcher-cancel-conflict-action, dispatcher-cancel-conflict-visible, processor-inbound-backend
경과 시간 경고 오래된 Maestro 실행17개 flow가 48시간보다 오래됐습니다. 이 경고만으로 source stale을 판정하지 않습니다.
연동 대기 2 pending clusterscontract push backend registration/storage/delivery, production provider credentials/values, production realtime broker/replay policy
연동 대기 1 realtime runtime bootstrap coveredstomp APP foreground STOMP transport class와 root runtime bootstrap은 Web/backend PcChatRealtimeEventSchema와 /topic/chat/{roomId}를 재사용한다. Expo push permission/token payload skeleton은 APP 알림 설정 surface에 연결됐고, push backend registration/storage/delivery와 production realtime broker/replay policy는 후속
pixel-perfect보다 화면 목적, hierarchy, 불필요한 문구/box/line 여부를 검수합니다.
직전 10개 goal evidence
tracked contract와 local manifest를 결합한 source-bound 검수 보드입니다. 경과 시간은 source freshness와 분리합니다.
G001-mobile-driver-fs-120-spring-endpoint
fresh local evidence운전자 업무 시작 전 차량 변경과 conflict 경계
Issue #973 PR #983 6fec2e9c
G002-mobile-dispatcher
fresh local evidence배차 가능한 날짜가 없는 요청의 취소 happy/conflict
Issue #974 PR #984 b7c86ed7
G011
fresh local evidencelifecycle 알림 CTA와 header/Android Back 복원
Issue #975 PR #988 6591a5b8
G004-mobile-chat-cursor-pagination
fresh local evidence채팅 과거 메시지 cursor pagination
Issue #976 PR #994 6cbd1d16
G005-mobile-chat-same-session
fresh local evidence같은 APP session의 첨부 실패 재시도와 멱등 저장
Issue #977 PR #995 4e314d34
G006-mobile-auth-more
fresh local evidenceMore 계정 정보와 bearer logout 후 보호 route 차단
Issue #978 PR #996 0c98a706
G007-mobile-driver-fs-119
fresh local evidence운전자 운반건 반납 modal/result와 conflict 보존
Issue #979 PR #997 d149af8a
G008-mobile-quality-backend-mode-mock-mut
fresh local evidencebackend mode 실패 시 local mock mutation 누출 차단
Issue #980 PR #998 c0e4bce0
G009-mobile-e2e-app-lifecycle-evidence-cl
fresh local evidence직전 lifecycle goal의 backend/proxy/mock evidence aggregate closure
Issue #981 PR #999 14b5ccc2
G010-mobile-release-280-read-only-android
fresh local evidenceAndroid native/build/store 상태의 read-only preflight
Issue #982 PR #1000 743131d7
역할별 검수 입구
역할을 고른 뒤 화면 hierarchy와 상세 evidence로 들어갑니다.
화면/계약별 판단표
UX Flow의 긴 backend wire board를 검수자용 3축 상태로 접은 표입니다.
| Surface | 사용자 목적 | Surface 상태 | Integration 상태 | 최신 evidence | 다음 action |
|---|---|---|---|---|---|
| Auth / role entry | 필요. 실제 APP 진입과 RBAC context의 기준 | 화면 검수 가능 | backend 연결됨 | #981 source-bound auth-more-logout-backend + role-shell-coverage, docs/70-progress/CURRENT.md auth/session entries |
#982 Android release preflight 뒤 multi-company/duties 확장 전까지 현 상태 유지 |
| Emitter request / history / detail / cancel | 필요. lifecycle spine 시작점과 cancel conflict 기준 | 화면 검수 가능 | backend 연결됨 | emitter-request-backend, emitter-cancel-backend, backend tests |
Olbaro는 #664, PDF/file provider-ready 구현은 PROVIDER_ADAPTER_CONTRACT.md 기준 후속 slice |
| Dispatcher pending board | 필요. emitter request가 dispatcher 미배차로 보이는 projection | 화면 검수 가능 | backend 연결됨 | dispatcher-pending-backend, docs/20-contracts/API_CONTRACT.md dispatcher slice |
production realtime broker/replay policy |
| Dispatcher assignment / confirm | 필요. 미배차 -> planned dispatch -> 운전자/처리자 projection 전환 | 화면 검수 가능 | backend 연결됨 | #813, #822, dispatcher-runtime-client.test.ts, local HTTP proof artifacts/mobile/backend-wire/cycle1-http-proof.txt, Maestro dispatcher-assignment-backend |
production realtime broker/replay policy |
| Dispatcher pre-dispatch cancel | 필요. 배차 가능한 날짜가 없는 미배차 요청을 배차담당자가 명시적으로 취소 | 화면 검수 가능 | backend 연결됨 | #974, DispatchBoardCancellationFlowTest, dispatcher-runtime-client.test.ts, dispatcher-dispatch-cancel-model.test.ts, Maestro dispatcher-cancel-happy-backend / dispatcher-cancel-conflict-backend |
assigned-row cancel/reassign은 backend board가 canonical requestId를 제공하는 계약 이후 진행 |
| Driver assignment / proof / OCR | 필요. 배차 확정 이후 현장 수행 proof persistence | 화면 검수 가능 | provider 대기 | #981 source-bound driver-vehicle-change-backend happy/conflict + driver-decline-backend + mock driver-dispatch-sheet; #980 backend-mode 대표 mutation request sequence와 전체 mock snapshot 불변 guard; #979 DriverFlowTest와 decline adapter evidence; #973 driver vehicle backend/APP tests |
#982 Android release preflight; provider evidence는 별도 issue |
| Processor inbound / weighing / treatment | 필요. 반입/계근/처리 결과의 운영 정본 | 화면 검수 가능 | provider 대기 | #824, #862, #885, #895, approve backend binding pass, treatment backend binding pass, processor weighing mutation pass, actionability projection pass, 발번 대기 handoverId detail/photo-exception regression, ProcessorInboundScreenFlowTest, MobileBackendLifecycleSmokeTest, HandoverScreenFlowTest, WeighingIntakeFlowTest, processor-contract-adapter.test.ts, processor-inbound-workflow-action.test.ts, local HTTP proof artifacts/mobile/backend-wire/processor-approve-http-proof.txt and artifacts/mobile/backend-wire/processor-treatment-http-proof.json, Maestro processor-inbound-backend, Maestro processor-weighing-backend |
계근 완료 후 입고 승인 handoff device proof, real AWS/GCV provider runtime |
| Cross-role lifecycle backend smoke | 필요. 역할별 endpoint가 하나의 handover spine으로 이어지는지 확인 | 화면 검수 가능 | backend 연결됨 | #832, #834, MobileBackendLifecycleSmokeTest |
production realtime broker/replay policy |
| Notifications / chat lifecycle cards | 필요. 역할 간 상태 변경 전달과 unread/read-state | 부분 구현 | provider 대기 | #981 source-bound Android lifecycle-chat-notification-proof, chat-cursor-pagination, chat-attachment-retry-backend, common-chat-flashlist; #975, #976, #977 notification target/pagination/same-session contracts; existing backend evidence #834, #836, #838, #841, #914, #918, #920, #924, MobileBackendLifecycleSmokeTest, ChatRoomFlowTest, NotificationFanoutFlowTest, ChatNotificationFlowTest; APP runtime/realtime/push/attachment focused tests |
#982 Android release preflight; process-death attachment 복구와 durable offline queue, production remote media signed read URL/retention, Expo push delivery/backend registration/storage, OS push tap role/session restore, production realtime broker/replay policy remain separate |
| External providers / files / OCR / map / location | 필요하지만 backend domain slice와 별도 provider decision | 화면 검수 가능 | provider 대기 | PROVIDER_POLICY.md, PROVIDER_ADAPTER_CONTRACT.md, LOCATION_TRACKING_CONTRACT.md, scripts/provider-readiness-doctor.mjs, scripts/floci-s3-smoke.mjs, scripts/aws-s3-real-smoke.mjs, scripts/google-vision-ocr-smoke.mjs, FileUploadSessionFlowTest, OcrJobFlowTest, HandoverScreenFlowTest, ChatRoomFlowTest, app-chat-surface.test.ts, chat-runtime-client.test.ts, mobile-document-access.test, mobile-external-handoff.test, domain.test, driver-contract-adapter.test, processor-contract-adapter.test, mobile-http.test, emitter-emission-detail-screen.tsx, pnpm provider:doctor, pnpm provider:doctor -- --run-local-s3, pnpm provider:doctor -- --run-real-s3 --s3-bucket=<dev-bucket> --strict, pnpm provider:doctor -- --run-gcv --gcv-image=<sample>, #926 provider readiness regression, Maestro processor-weighing-backend, OCR/map/upload/provider-state flows |
production remote media URL enforcement, document share 권한, map/phone/support opener source/audit, production storage secret/retention enforcement, #664 Olbaro, #666 deployment로 분리 |
상태 라벨 해석
화면 검수 가능 · 부분 구현 · 미구현
최신 · 실패 · 누락 · 오래됨
mock 기준 · backend 연결됨 · provider 대기 · 결정 필요
Raw evidence 링크
사람이 먼저 읽는 포털과 raw report를 분리합니다.
Source of truth
HTML이 아니라 아래 Markdown/JSON이 정본입니다.