TARGETF4B2 PARTIALQA 0/5 VERIFIEDR12 · 13/21 PASS COMPLETEiOS · 管理单聊、群聊、草稿、归档与未读的用户

会话、文件夹与未读收敛

以本地快照首屏、HTTP 列表真值和连续实时游标组成可解释的会话入口

MainTabView.chats · ConversationListViewmatrix-x-chat-ios对照 CURRENT · matrix-conversations →
R12 · KNIFE 13 / 21

会话、文件夹与未读收敛 · 原生页面级细化任务包

以本地快照首屏、HTTP 列表真值和连续 realtime 事件组成可解释的会话入口。

CURRENT ROUTE

MainTabView.chats · ConversationListView

CURRENT SOURCE

MatrixXChat/Features/Conversation/ConversationListView.swift

CURRENT API

/im/chat/basic/multiple · /websock/open

WORK MODE

sync · K12

ENTRY

五 Tab 消息入口、通知深链或搜索返回。

SUCCESS OUTPUT

打开有权限的 chatById,或完成带 revision 的归档、置顶、静音命令。

INTERACTION MODEL

Local snapshot → HTTP reconcile → realtime event → unread/folder revision → route。

A11Y

可读未读数、固定 rotor 顺序、滑动动作的等价菜单、Dynamic Type 和 reduced motion。

TELEMETRY

conversation_list_view · folder_change · reconcile_result;不记录标题和消息摘要。

CURRENT SOURCE + RUNTIMEiOS 257e604 · API 9e22253
  • matrix-x-chat-ios origin/main 为 257e604a5073b1ecab0f905d7ec59dfb78960639;本地 feat/p1-knives-1-8@56c8481 落后 main 86 个提交并有 3 个分支独有提交,不能作为最新 CURRENT
  • iOS main 可数 1,711 个 Swift 文件、617 个 `struct …: View`、682 个 Features Swift 文件、530 个 *Tests.swift 与 19 个 workflow 文件;App Store/TestFlight 采用哪个 build 本轮没有证明
  • im-core origin/main 与 EC2 production 均为 9e222534fcf6786a517f81936a2133bae7053e4d;源码有 225 个 Go 文件、78 个 Go test 文件、56 个 SQL migrations 和 405 个注册 HandleFunc
  • EC2 有 4 个 im-core runtime 容器加 PostgreSQL、Redis、NATS、MinIO;api.reits.tech 的 /healthz、/readyz、/api/v1/meta/app、/im/healthz 均返回 200,WebSocket 独立转发到 18081
  • 主 App 锁定 Enterprise 1.0.47、Wallet 1.0.22、MiniApp 1.0.33、Plugin UI 1.0.34;新 tag 或插件仓最新代码不等于主 App 已消费
  • 所有预览用户、会话、计数、游标、企业、动态、余额与小程序行情都是 REVIEW FIXTURE;只用于 UI/状态评审,不是生产数据或线上截图
api.reits.tech health/ready/meta/im-health = 200/200/200/200 · App Store exact build not proven
IMPLEMENTATION GAPPRODUCT QA 0 / 5
  • 当前客户端未证明持久 device ACK cursor 与 replay_complete 消费
  • 会话行中的用户、未读、草稿和 cursor 都只能用 fixture
  • 跨设备归档/置顶/静音的 revision 与重复事件测试未成为发布证据
REVIEW FIXTURE ≠ production data · branch-only ≠ main · newer SDK tag ≠ consumed SDK
126-STATE PROGRAM / THIS SCREEN

九态挂在当前原生页面的数据、权限、游标、插件或回执上,不使用通用遮罩冒充交互完成

QA 0 / 5 VERIFIED
READYConversationSnapshot 合同可评审

ConversationSnapshot native workspace

R12-CONVERSATION-READY→ 查看 sync contract
LOADING正在读取 ConversationSnapshot

ConversationSnapshot independent regions

R12-CONVERSATION-LOAD→ 保留原生导航上下文
EMPTY当前关系范围没有会话

ConversationSnapshot result

R12-CONVERSATION-EMPTY→ 查看合法下一步
PARTIAL ERRORConversationSnapshot 部分依赖未收敛

ConversationSnapshot dependency rail

R12-CONVERSATION-PARTIAL→ 只重试失败分区
ERRORConversationSnapshot 请求失败

ConversationSnapshot request

R12-CONVERSATION-ERROR→ 安全重试
OFFLINE离线只读 · ConversationSnapshot

ConversationSnapshot safe snapshot

R12-CONVERSATION-OFFLINE→ 等待网络恢复
FORBIDDEN当前主体不能访问 ConversationSnapshot

ConversationSnapshot authorization

R12-CONVERSATION-DENY→ 返回安全页面
CONFIRM确认归档、删除或变更通知状态?

ConversationSnapshot impact sheet

R12-CONVERSATION-CONFIRM→ 确认或取消
SUCCESSConversationMutationReceipt 已返回

ConversationSnapshot receipt

R12-CONVERSATION-SUCCESS→ 查看回执
R12 BOUNDARY本刀只完成 14 张 Matrix Communication/Ecosystem 页面、126 个页面状态和 iOS/main/branch/pinned-SDK/production 分轨;不使用真实账号登录,不读取消息、联系人、企业、动态或资产,不执行关系、群组、订阅、资金或 bridge 写操作,也不把 REVIEW FIXTURE、feature-only 提交、新 SDK tag 或健康检查冒充 App Store 客户端完成。
UI STUDIOtarget-matrix-conversations
iOS390 × 844100%
100%
MainTabView.chats · ConversationListView
TARGET UI390 × 844FIT 100%
R12 DESIGN CANDIDATEtarget-matrix-conversationsREVIEW FIXTURE · NOT LIVE DATA
9:41●●● ⌁ ▰
E07 · NATIVE EVIDENCE OPENIOS SOURCE / CURRENT PROD API257e604 · 9e22253
API PRODUCTIONhealth/ready/meta/im-health 200IOS RELEASEApp Store build not proven

消息

REVIEW FIXTURE · 对账状态未证明 cursor sample
⌄已归档的会话3
协
产品协作群

Yuki:重放完成,缺口为 0

⌖
数
数据平台

[草稿] 我整理了数据契约…

R
REITs Research

✓ UI-CI-report.pdf

订
Matrix Order

预约 BK-0482 已确认

CURRENT GAP客户端持久 ACK cursor 与 replay completion 消费没有 exact build 证据。
REFERENCE VIEWPORT390 × 844Dynamic Type · safe area
PRIMARY TASK打开会话主操作、权限与完成反馈必须同屏可验证
DATA CONTRACTConversationSnapshotready / loading / empty / error 使用同一 fixture
ACCESSIBILITYVoiceOver + 44pt焦点顺序、可读名称、对比度进入 UI CI
VISUAL BASELINETARGET · 2026-07-18桌面/移动、浅色/错误态按稳定 Screen ID 留档

IMPLEMENTATION MAP

目标定义与下一轮逐页细化入口

当前处于 B1/B2:可以拆出架构、设计、交互和 QA 任务,但完成 D01–D12、通过 B3/B4 之前,不得宣称页面已经可以照稿实现。

01

页面区域

  • 导航动作
  • 查询与文件夹
  • 同步证据
  • 归档入口
  • 会话时间线
  • 当前协议缺口
  • 根导航
02

用户动作

  • 打开会话
  • 切换文件夹
  • 搜索
  • 新建聊天
  • 归档/置顶/静音
  • 重试同步
03

必须状态

  • 通信状态已就绪
  • 安全快照同步
  • 当前范围为空
  • 部分内容未同步
  • 本次同步失败
  • 离线只读快照
  • 关系或权限不允许
  • 高影响操作确认
  • 服务端回执已完成
04

数据契约

  • ConversationSnapshot
  • FolderFilter
  • UnreadCursor
  • DraftState
  • ReplayCursor
  • DeviceRealtimeSession
  • ConversationMutationReceipt

TARGET MODULES

目标页面必须交付的模块

  1. 01搜索
  2. 02会话文件夹
  3. 03同步/游标状态
  4. 04归档
  5. 05置顶与静音
  6. 06草稿
  7. 07未读
  8. 08五 Tab

PRODUCT ROUTE INDEX

Matrix X Chat · Communication 的 28 个稳定 Screen ID

同一产品内的页面共享 token、导航和状态语言,但每个 Screen ID 保留自己的字段、数据契约和 QA 基线。

01
登录入口LoginView · AuthFlow
iOS
02
会话列表MainTabView.chats · ConversationListView
iOS
03
聊天室AppRoute.chatById · ChatView
iOS
04
联系人MainTabView.contacts · ContactsListView
iOS
05
工作台MainTabView.workspace · PluginRegistry.workspace
iOS
06
全局搜索SearchView
iOS
07
新的朋友AppRoute.friendRequests · FriendRequestsView
iOS
08
群聊详情GroupChatDetailView
iOS
09
用户资料AppRoute.userProfile · UserProfileView
iOS
10
应用市场WorkspaceView · AppMarketView
iOS
11
朋友圈DiscoveryView · MomentFeedView
iOS
12
钱包AppRoute.wallet · WalletPluginHostView(.home)
iOS
13
设置与隐私MainTabView.profile · SettingsView
iOS
14
小程序容器PluginRegistry.miniApp · IMMiniAppViewShell
iOS
15
手机号 / 邮箱登录与设备验证LoginView · AuthFlow
iOS
16
会话、文件夹与未读收敛MainTabView.chats · ConversationListView
iOS
17
消息时间线、重放与发送回执AppRoute.chatById · ChatView
iOS
18
联系人、关系与群组入口MainTabView.contacts · ContactsListView
iOS
19
全局联系人、群聊与消息搜索SearchView
iOS
20
好友请求与并发关系决策AppRoute.friendRequests · FriendRequestsView
iOS
21
群资料、成员与权限控制GroupChatDetailView
iOS
22
联系人资料、隐私与会话授权AppRoute.userProfile · UserProfileView
iOS
23
企业工作台与应用编排MainTabView.workspace · PluginRegistry.workspace
iOS
24
企业应用市场与订阅WorkspaceView · AppMarketView
iOS
25
朋友圈媒体与可见性时间线DiscoveryView · MomentFeedView
iOS
26
钱包资产、资金动作与强认证AppRoute.wallet · WalletPluginHostView(.home)
iOS
27
账号、设备、隐私与本地设置总览MainTabView.profile · SettingsView
iOS
28
小程序可信运行容器PluginRegistry.miniApp · IMMiniAppViewShell
iOS