Files
lixi f5457c2f4c
CI / docs-build (push) Successful in 2m2s
docs: M3 第三波收口——报告 21~27 入档挂导航
- 21~26 Flutter 社区接入五单 + 字典 v3 白名单(flutter 286→502、api 325→334)
- 27 收口总表:社区 demo 三页消亡、M3 四条验收标准逐条取证、
  乐观更新与媒体链路端到端、实现期修正记录
- device-verification.md 的 M3 四项真机步骤已由各单收口补全

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-09-10 14:48:33 +08:00

3.4 KiB

27 M3 第三波收口:Flutter 社区接入完成

执行日期:2026-09-09 交付:冻结契约 v1.3.0 下社区全页面族接入真实后端,社区 demo 数据消亡


0. 概要

工单 交付 提交(flutter dev) 测试
T3-12 数据层 19 操作 DTO/Client/Repository + 9 新错误码 + ToggleSync + CursorPage 上移 core 19bd8c1 286→347
T3-13 媒体上传客户端 MediaUploader 六态 + 孤儿防护 + 降质阶梯 + 凭据过期重取 1441f01 →379
T3-14 Feed 替换 四态 + 尾部三态 + 曝光浏览段聚合 + SignedNetworkImage 8aac8c5 →421
T3-15/16 详情与互动 整页替换 + 真九宫格大图 + 评论区 + ToggleSync 跨页一致 + 互动 8 事件 92524da / f873acf →458
T3-17 发布页 PostComposePage + 草稿两路径 + gating + 发布漏斗 8 事件 9892b65 →502
字典 v3 白名单(api) EventDictionary 22→42 事件 + 7 锁死事件边界 api dev@8089c06 api 325→334

波末状态:patbond-flutter 502 测试全绿、analyze 0 问题、format 无 diff;patbond-api 334 测试全绿。

1. 里程碑意义

  • 社区 demo 在三页全面消亡:AppState.posts/publishPost/updatePost 及其持久化整体退役;home Feed、post_detail、create 发布半边全部真实后端驱动(create 页仅余 AI 生成模拟,属 M4 范围零改动)
  • M3 验收标准逐条取证:发布后另一客户端可见(T3-17 双 App 实例实测)、重复点赞不重复计数(后端真并发 + 前端 ToggleSync)、分页不丢不重(T3-14 游标专项 + 26 帖实测)、删除/隐藏不出 Feed(后端谓词 + 40403 防枚举)
  • 媒体链路端到端:选图→压缩→预签名直传 MinIO→confirm→引用发帖→预签名 GET 展示,四次 compose 实测无契约偏差;签名 URL 缓存 key 剥离(SignedNetworkImage)全仓生效
  • 乐观更新完整落地:ToggleSync(乐观翻转/单飞合并最终意图/代次守卫/服务端权威终态收敛)+ 三层视觉抑制(240ms 弹性动画/失败零动画跳变/对账静默替换),Feed 与详情页共享实例同帧一致
  • 埋点 v3 端到端:客户端挂接 21 事件(feed 2 + 互动 8 + 媒体 3 + 发布漏斗 5 + page_viewed 页名增量),后端白名单 42 事件承接,7 个被否决事件在字典层锁死

2. 实现期修正与发现

  • T3-13 抓修 T3-12 遗留缺陷:media 两步上传端点在 user 服务(:8082),T3-12 误挂 community 客户端(:8084 无 media 路由,真链路必 404);compose 实测暴露,增 mediaApi 分端口直连修正
  • T3-14 测试暴露两处真 bug:尾部失败态被滚动自动重试冲掉、回前台不开新曝光段
  • T3-17 两步发布定型:createPost(draft) → PATCH published,使「发布失败但草稿已保存」成为事实而非话术
  • 桌面替身局限记录:Linux 桌面无 image_picker/compress 平台实现(用替身)、platform=linux 使埋点整批 400(既有预期),两者均已写入真机验证清单前置

3. 遗留与下波

  • 完整草稿列表与自动保存(26 号 §7)、大图「下滑关闭」手势(photo_view 复评)、话题功能(ADR-018 剪出)
  • uploading 超时清理定时任务、429 Retry-After 分支(待后端限流)
  • 第四波收官:E2E 烟囱(社区全链路 + M3 四条验收标准取证)→ M3 收官总结 + feature-checklist 增补;真机四项已在 device-verification.md 备齐步骤,待设备到位执行