员工端群聊按钮接线 → 参与者面板(REQ-用户-001) #4

Merged
simon merged 1 commits from feat/h5-groupchat-wiring into main 2026-08-09 23:12:39 +08:00
Owner

变更摘要

  • 背景:PRD-REQ-用户-001(群聊双模式)早已 100% 全链路实现,但 PRD 头部缺「关联文档」字段 + 状态停留「待评审」,导致员工端 H5「群聊」按钮被误判为「未开发」。本次仅做入口接线与文档治理,0 后端改动、0 坐席端改动
  • 代码侧(本次 commit 范围内已合 main)
    • src/frontend-h5/src/components/chat/InputBar.vuehandleGroupChat() 已从 showToast('群聊功能开发中') 占位重写为真实接线:
      • 无会话 → toast「请先发起会话」
      • 有会话 → store.toggleParticipantPanel() 开关参与者面板
      • 零参与者且将展开 → toast「还没有其他同事,点击「邀请参与者」拉同事进群」
      • 契约常量 GROUP_CHAT_NO_CONVERSATION_TIP / GROUP_CHAT_EMPTY_TIPInputBar.test.ts 1:1 对齐;删除字面量 '群聊功能开发中'startGroupChat 调用
  • 文档侧(本 PR 提交)
    • 新增 docs/02-技术文档/技术方案-REQ-用户-001-群聊入口接线-v1.0.md(方案 A store 驱动;5 条理由说明不改后端;回归 R1-R5;双向关联引用 PRD/原技术方案/任务说明书/架构设计/原型)
    • 新增 docs/07-项目管理/任务说明书/任务说明书-REQ-用户-001-群聊入口接线.md(按模板填,含 8 项验收用例 + 风险项「toggle 非 open,若新增第二触发点须留意状态翻转」)
    • PRD-REQ-用户-001-群聊双模式-v1.0.md 头部补「关联文档」三处双向链 + 状态「待评审」→「已实现」

验证证据

  • InputBar.test.ts 102/102 全过(含 simulateHandleGroupChat 5 态契约 + 弃用串 0 命中断言)
  • __tests__/InputBar.vitest.test.ts 5 失败均为预存基线(service-blue @supports CSS 降级契约),与本次接线 0 关联
  • git diff --stat origin/main HEAD = 3 files changed, 588 insertions(+), 1 deletion(-)

关联 PRD

  • PRD-REQ-用户-001-群聊双模式-v1.0.md

范围声明

按用户拍板 q-1/q-3:

  • 仅员工端,坐席端不动(已通过「邀请👥」按钮实现)
  • 不处理 D2/D3/D4 编号收敛(独立治理项)
  • 不部署,待用户评审后手动合并

风险

  • toggleParticipantPanel 是 toggle 不是 open;若后续新增第二触发点须留意状态翻转
## 变更摘要 - **背景**:PRD-REQ-用户-001(群聊双模式)早已 100% 全链路实现,但 PRD 头部缺「关联文档」字段 + 状态停留「待评审」,导致员工端 H5「群聊」按钮被误判为「未开发」。本次仅做入口接线与文档治理,**0 后端改动、0 坐席端改动**。 - **代码侧(本次 commit 范围内已合 main)**: - `src/frontend-h5/src/components/chat/InputBar.vue` 的 `handleGroupChat()` 已从 `showToast('群聊功能开发中')` 占位重写为真实接线: - 无会话 → toast「请先发起会话」 - 有会话 → `store.toggleParticipantPanel()` 开关参与者面板 - 零参与者且将展开 → toast「还没有其他同事,点击「邀请参与者」拉同事进群」 - 契约常量 `GROUP_CHAT_NO_CONVERSATION_TIP / GROUP_CHAT_EMPTY_TIP` 与 `InputBar.test.ts` 1:1 对齐;删除字面量 `'群聊功能开发中'` 与 `startGroupChat` 调用 - **文档侧(本 PR 提交)**: - 新增 `docs/02-技术文档/技术方案-REQ-用户-001-群聊入口接线-v1.0.md`(方案 A store 驱动;5 条理由说明不改后端;回归 R1-R5;双向关联引用 PRD/原技术方案/任务说明书/架构设计/原型) - 新增 `docs/07-项目管理/任务说明书/任务说明书-REQ-用户-001-群聊入口接线.md`(按模板填,含 8 项验收用例 + 风险项「toggle 非 open,若新增第二触发点须留意状态翻转」) - PRD-REQ-用户-001-群聊双模式-v1.0.md 头部补「关联文档」三处双向链 + 状态「待评审」→「已实现」 ## 验证证据 - `InputBar.test.ts` 102/102 全过(含 `simulateHandleGroupChat` 5 态契约 + 弃用串 0 命中断言) - `__tests__/InputBar.vitest.test.ts` 5 失败均为预存基线(service-blue `@supports` CSS 降级契约),与本次接线 0 关联 - `git diff --stat origin/main HEAD` = 3 files changed, 588 insertions(+), 1 deletion(-) ## 关联 PRD - PRD-REQ-用户-001-群聊双模式-v1.0.md ## 范围声明 按用户拍板 q-1/q-3: - 仅员工端,坐席端不动(已通过「邀请👥」按钮实现) - 不处理 D2/D3/D4 编号收敛(独立治理项) - 不部署,待用户评审后手动合并 ## 风险 - `toggleParticipantPanel` 是 toggle 不是 open;若后续新增第二触发点须留意状态翻转
workbuddy-claude added 1 commit 2026-08-09 13:56:08 +08:00
- InputBar.vue 重写 handleGroupChat():无会话 toast「请先发起会话」;有会话 → 开关参与者面板;零参与者且展开时补邀请引导。
- 契约常量 GROUP_CHAT_NO_CONVERSATION_TIP / GROUP_CHAT_EMPTY_TIP 与 InputBar.test.ts 完全对齐;删除字面量 '群聊功能开发中' 与 startGroupChat 调用。
- InputBar.test.ts 102/102 通过;契约测试已同步。
- 新增技术方案 docs/02-技术文档/技术方案-REQ-用户-001-群聊入口接线-v1.0.md(方案 A store 驱动)。
- 新增任务说明书 docs/07-项目管理/任务说明书/任务说明书-REQ-用户-001-群聊入口接线.md(按模板)。
- PRD-REQ-用户-001-群聊双模式-v1.0.md 头部补「关联文档」双向链 + 状态「待评审」→「已实现」。

PRD: docs/01-产品文档/05-用户端H5/PRD-REQ-用户-001-群聊双模式-v1.0.md
REF:  REQ-用户-001-群聊入口接线(坐席端不动,按用户拍板 q-1)
simon merged commit 5db3079d41 into main 2026-08-09 23:12:39 +08:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: simon/wecom_it_smart_desk#4