Files
tongxunruanjian/docs/acceptance/b171-batch2.md
T
2026-08-20 04:22:18 +08:00

95 lines
6.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# B-185 / B-171 第二批交互补齐验收与回退
分支:`agent/agent/7b089146`
基线:`fb58da6`B-171 第一批完成点)
架构:B-90;视觉:B-91 `changlian-visual-spec-v2.md`
本批不换标、不部署、不发安装包;LiveKit 未迁。
## 提交主题(可逐项 `git revert`
从新到旧回退:先 B-189,再 B-188 验收补记与 `d9d5853`,再原第二批验收提交,再按下表从下往上 `git revert`
| 主题 | SHA | 主要文件 |
|---|---|---|
| 状态线性图标与 toast/断网横幅动效 Token | `ce2a3ae059be4de480b73ee585d36a051b303fd0` | `app_tokens.dart``state_views.dart` |
| 手机会话页:搜索、+ 菜单、长按置顶/删除、去掉置顶角标 | `7f131457f7f5d0a30ca81414c7dc94ede6f59d84` | `conversation_view.dart` |
| 通讯录部门分组、职务行、申请窄屏 | `49b346d375e9b9b62c3a59c6f6970c7facfba94b` | `contacts_logic.dart``contacts_view.dart``friend_requests_view.dart` |
| 聊天输入区、语音气泡、大图、录音与字号映射 | `3b87812db8945c3b7fa6d4c0eddddb35f5ab10f3` | `chat_*.dart``apply_official_styles.dart` |
| 工号查询防抖、控制器生命周期、开关、资料页工号 | `26622676ed4f4898385d8e9e686296eb56adf4be` | `add_colleague_page.dart``app_pages.dart``company_login_page.dart``my_info_view.dart``personal_info_view.dart` |
| 断网横幅恢复后 300ms 收起、底栏 12px | `d1657ea29f0fc59f248f2108d7cfb9bcc239921e` | `home_view.dart` |
| PC 第二批登录/会话/聊天/添加同事/职务行/i18n | `a44537da4e8ce7b5b17b491c05592ad21cdd0bca` | `pc-client/src/pages/**``ApplicationItem``i18n``global.scss``docs/acceptance/pc-boundary.md` |
| 第二批验收记录 | `a4d21ef36777440812c6746cd792eeaf7685cd5c` | `docs/acceptance/b171-batch2.md` |
| B-188 定点返工:PC 会话置顶改 `setConversation` | `d9d5853f73aa8060c9ed768c326f00d691847e3e` | `pc-client/src/pages/chat/ConversationSider/ConversationItem.tsx` |
| B-188 验收补记 | `e40ece1` | `docs/acceptance/b171-batch2.md` |
回退 B-188:先 `git revert e40ece1`,再 `git revert d9d5853f73aa8060c9ed768c326f00d691847e3e`
## B-189 语音区返工(相对 `e40ece1`
依据:B-187 打回三项阻塞 + 输入框/`按住 说话` 底色 `searchBg`。不处理其余黄色建议。
| 主题 | SHA | 主要文件 |
|---|---|---|
| 未听红点、录音浮层入场/取消区、50–60s 时限、searchBg | `15d7f1935e38c18d127319346cf03d278b596b2c` | `chat_voice_*.dart``chat_item_view.dart``chat_input_box.dart``apply_official_styles.dart``styles.dart` |
回退 B-189:先 `git revert` 本补记提交,再 `git revert 15d7f1935e38c18d127319346cf03d278b596b2c`
静态核对(对照代码,非运行):
- 未听红点:接收且 `message.isRead == false` 时在气泡右侧 8px `danger`;播放走既有 `_playVoiceMessage` + `_markMessageAsRead`,不另造状态。
- 浮层入场:150ms ease-out 透明度 0→1`Styles.motionOf` 接到 `AppMotion.reduce` / `AppDuration.overlay`;取消区保持 `rgba(0,0,0,0.7)` 黑卡,仅垃圾桶与提示改 `danger`;切换时长走 `AppDuration.overlaySwitch`
- 50s:计时改 `warning` 文案「还可说 N 秒」;60s:既有 `ChatRecordVoiceView` 中断→dispose→一次 `onCompleted`,toast「已达最长 60 秒,已自动发送」。实例级 `_completed` 避免重复发送;timer 在 dispose 取消。
- 输入框与「按住 说话」底色改为 `Styles.c_F2F3F5``AppColors.searchBg`,不再用 `c_F0F2F6`/`chatBg`
## 检查
- `dart format` / `flutter analyze` / Android debug+release**未跑。** 本环境 PATH 中无 `flutter`/`dart`/`java`,不推定通过。
- PC `npm run lint` / `vite build`B-189 未改 PC、未重跑。B-188 当时 `npm run build` 通过,见下节。
- 运行截图:无 Flutter 工具链、无测试账号、无客户端进程,**未截图、未实测**未听红点/播放清除/取消手势/50–60s 倒计时/到限自动发送与 toast。不得推定通过。
### B-188 定点返工检查(2026-08-20
- 改动:`IMSDK.pinConversation(...)``IMSDK.setConversation({ conversationID, isPinned: !conversation.isPinned })``deleteConversationAndDeleteAllMsg` 未改。
- PC `npm run build`**通过**vite `✓ built in 31.30s`,随后写出 `dist-electron/**`)。
- `npx tsc --noEmit`(实际调用 `node node_modules/typescript/bin/tsc --noEmit`):`ConversationItem.tsx` **无本批新增错误**(无 TS2551 / `pinConversation`)。
- 会话右键「置顶/取消置顶」:**未实测**(无登录运行环境、无客户端进程),不得推定通过。
- 黄色建议:未处理。
`tsc --noEmit` 上游存量错误(非本卡引入,未修):
- `src/hooks/useGroupMembers.ts` TS18047 ×3`latestFetchState.current` possibly null
- `src/layout/LeftNavBar/About.tsx` TS2345 ×2`OnUploadLogsProgress` 回调类型)
- `src/pages/chat/queryChat/useHistoryMessageList.tsx` TS18047 ×1
- `src/pages/common/ChooseModal/ChooseBox/index.tsx` TS18047 ×2
- `src/pages/common/RtcCallModal/index.tsx` TS2786`LiveKitRoom` JSX
- `src/pages/common/RtcCallModal/RtcControl.tsx` TS2786 ×2`TrackToggle`
- `src/pages/common/RtcCallModal/RtcLayout.tsx` TS2786`VideoTrack`
- `src/pages/common/UserCardModal/index.tsx` TS2345
- `src/utils/imCommon.ts` TS2322 ×11`string | undefined``string`
## 越界比对(对比 `e26abad`
零改动:`mobile/``pc-client/src/store/``pc-client/src/layout/MainContentWrap.tsx``pc-client/src/pages/chat/queryChat/ChatFooter/useSendMessage.ts``pc-client/src/pages/chat/queryChat/useHistoryMessageList.tsx``account-service/`
`pc-client/electron/`:仅既有 `main/windowManage.ts``minWidth=1080``minHeight=680`(B-171 特批),本批未再改 electron。
`pc-boundary.md` 已扩到与 B-90 / B-185 一致:登录窗、chat **展示**`AddColleague.tsx` 列入可改;发送/历史/store/SDK 初始化仍冻结。PC 聊天顶栏去掉「语音通话」入口;RTC 死代码未删。
B-189 改动限于 `mobile-next/openim_common` 语音/输入部件、Token 接线、`mobile-next/lib/pages/chat/chat_view.dart` 自定义语音气泡防双重气泡,以及本验收记录。
## 未验证(缺账号环境,禁止推定通过)
- HTTP 正确密码登录
- 双向消息收发
- 服务端好友申请 `status=2`
- LiveKit / 语音通话(本阶段不迁、PC 不建设)
- 登录窗独立 360×480:受 electron 冻结限制,本批只改登录页展示,未改窗口尺寸
- B-189 全部录音/未听红点运行时表现
## 品牌
未换标。手机登录仍按开关保留 OpenIM 标识。不增删品牌资源。
功能质检与视觉审核须重新执行,本卡不自行宣布整批通过。