docs(task13): 补齐 meeting/notify API 文档 + Playwright UI 回归结果

## API 文档(Task 13 前漏补)
- docs/api/frontend/meeting.md §9 邀请用户接口:展开 extra 8 字段清单
  (room_code / room_title / has_password / invite_token / inviter_id
   / inviter_name / inviter_avatar / expired_at),并说明前端如何据
   expired_at 判过期
- docs/api/frontend/meeting.md 后续任务关联:Task 13 标  + deep-link 路径
- docs/api/frontend/notify.md 概览:
  * "支持内联按钮的通知类型" 表(friend_request / meeting_invite)
  * "meeting_invite 专用 extra 字段" 详细清单

## Playwright UI 回归结果(2026-04-23 补做)
采用 "A 侧 curl 邀请 + B 侧 Playwright 登录" 策略:
- testuser1 邀请 testuser2 → 通知中心渲染 meeting_invite 卡片
- 新邀请卡片 → 双按钮「立即加入 / 稍后」
- 过期邀请卡片 → 合并为单 disabled「邀请已过期」按钮 
- 点「立即加入」→ 跳 /pages/meeting/preview?mode=join&code=516-162-828 
- preview 页正确渲染 "即将加入会议 516-162-828" + 设备面板 
- 截图:task13-notify-meeting-invite-cards.png
        task13-preview-page-after-invite-accept.png
- CURRENT_STATUS.md + implementation.plan.md 已同步补录

Made-with: Cursor
This commit is contained in:
bujinyuan
2026-04-22 17:34:29 +08:00
parent d6fb7ce291
commit ba8c72aae0
4 changed files with 43 additions and 5 deletions

View File

@@ -513,8 +513,9 @@ flowchart LR
- **附带修复commit 310ea03**`frontend/src/services/websocket.js` 在命中 `.ack` 事件后不再 `return`改为同时 `_handleAck`Promise 通路+ `_emit`订阅通路修复 `chat.js` 订阅的 `im.message.send.ack / im.message.read.ack` 从未被触发消息永远卡在 `_sending=true` 圆圈的回归 bug`chat.js _appendMessage` 改为"命中 `client_msg_id` 的临时消息时就地合并服务端字段"而非直接丢弃作为广播帧兜底
- **验收**
- 后端 REST 验证curl`POST /api/v1/meeting/rooms/:code/invite` 被邀请者 `GET /api/v1/notifications?category=meeting` 能取到 `type=meeting_invite` 通知`extra` 包含 `room_code / room_title / inviter_id / inviter_name / inviter_avatar / has_password / invite_token / expired_at` 全部字段
- **Playwright UI E2E2026-04-23 补做**testuser2 登录 通知中心渲染新邀请卡片的"立即加入 / 稍后"双按钮 + 渲染过期邀请卡片的单个 disabled"邀请已过期"按钮"立即加入" `/pages/meeting/preview?mode=join&code=xxx`code 与邀请精确一致preview 页正确展示"即将加入会议 xxx"与设备选择面板
- 过期态由 `expired_at` 驱动Redis TTL 600s过期后按钮自动灰显点击有 toast 提示不跳转
- **工作量****0.5 人日实际约 0.3 人日**
- **工作量****0.5 人日实际约 0.4 人日 Playwright 回归补做**
### Task 14docker-compose 扩展 + 环境变量双态开关