AppRoute.userProfile · UserProfileView
联系人资料、隐私与会话授权
将资料可见性、好友关系、共同群聊和消息/通话动作绑定到当前服务端授权
联系人资料、隐私与会话授权 · 原生页面级细化任务包
将资料可见性、好友关系、共同群聊和消息/通话动作绑定当前服务端授权。
MatrixXChat/Features/Contacts/UserProfileView.swift
/app/api/account/request-info · contact/block|remove|report
relationship · K12
联系人、群成员、搜索或消息头像。
进入授权会话/通话,或返回关系 mutation receipt 并清理缓存。
Profile request → visibility decision → relationship snapshot → action authorization → receipt。
头像/关系/隐私标签可朗读,隐藏信息不留占位泄露,危险动作有明确对象。
profile_view · action_authorized · relationship_result;不记录可见资料值。
- 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/状态评审,不是生产数据或线上截图
- 预览人物、UID、共同群、关系来源和在线状态都是 fixture
- 删除/拉黑后资料、消息、通知和索引授权撤销需要端到端传播证据
- 语音/视频入口还需成员关系、设备能力和 call route 联合验收
九态挂在当前原生页面的数据、权限、游标、插件或回执上,不使用通用遮罩冒充交互完成
AuthorizedProfile native workspace
R12-PROFILE-READY→ 查看 authorization boundaryAuthorizedProfile independent regions
R12-PROFILE-LOAD→ 保留原生导航上下文AuthorizedProfile result
R12-PROFILE-EMPTY→ 查看合法下一步AuthorizedProfile dependency rail
R12-PROFILE-PARTIAL→ 只重试失败分区AuthorizedProfile request
R12-PROFILE-ERROR→ 安全重试AuthorizedProfile safe snapshot
R12-PROFILE-OFFLINE→ 等待网络恢复AuthorizedProfile authorization
R12-PROFILE-DENY→ 返回安全页面AuthorizedProfile impact sheet
R12-PROFILE-CONFIRM→ 确认或取消AuthorizedProfile receipt
R12-PROFILE-SUCCESS→ 查看回执target-matrix-user-profileIMPLEMENTATION MAP
目标定义与下一轮逐页细化入口
当前处于 B1/B2:可以拆出架构、设计、交互和 QA 任务,但完成 D01–D12、通过 B3/B4 之前,不得宣称页面已经可以照稿实现。
页面区域
- 资料导航
- 身份与关系
- 快捷动作
- 备注和共同群
- 隐私可见性
- 授权边界
- 危险动作
用户动作
- 发消息
- 语音/视频
- 修改备注
- 查看共同群
- 删除好友
- 拉黑/举报
必须状态
- 通信状态已就绪
- 安全快照同步
- 当前范围为空
- 部分内容未同步
- 本次同步失败
- 离线只读快照
- 关系或权限不允许
- 高影响操作确认
- 服务端回执已完成
数据契约
- UserProfile
- RelationshipState
- MutualGroupSummary
- ProfileVisibility
- ConversationAuthorization
- BlockReportCommand
- RelationshipReceipt
TARGET MODULES
目标页面必须交付的模块
- 01身份与在线窗口
- 02关系状态
- 03消息/通话
- 04备注
- 05共同群聊
- 06资料可见性
- 07关系来源
- 08删除/拉黑/举报
PRODUCT ROUTE INDEX
Matrix X Chat · Communication 的 28 个稳定 Screen ID
同一产品内的页面共享 token、导航和状态语言,但每个 Screen ID 保留自己的字段、数据契约和 QA 基线。
LoginView · AuthFlowMainTabView.chats · ConversationListViewAppRoute.chatById · ChatViewMainTabView.contacts · ContactsListViewMainTabView.workspace · PluginRegistry.workspaceSearchViewAppRoute.friendRequests · FriendRequestsViewGroupChatDetailViewAppRoute.userProfile · UserProfileViewWorkspaceView · AppMarketViewDiscoveryView · MomentFeedViewAppRoute.wallet · WalletPluginHostView(.home)MainTabView.profile · SettingsViewPluginRegistry.miniApp · IMMiniAppViewShellLoginView · AuthFlowMainTabView.chats · ConversationListViewAppRoute.chatById · ChatViewMainTabView.contacts · ContactsListViewSearchViewAppRoute.friendRequests · FriendRequestsViewGroupChatDetailViewAppRoute.userProfile · UserProfileViewMainTabView.workspace · PluginRegistry.workspaceWorkspaceView · AppMarketViewDiscoveryView · MomentFeedViewAppRoute.wallet · WalletPluginHostView(.home)MainTabView.profile · SettingsViewPluginRegistry.miniApp · IMMiniAppViewShell