Files
prop-ai-hr/docs/BRD_IMPLEMENTATION_AUDIT.md
T

72 lines
9.0 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.
# BRD 功能审查与未完成项记录
更新时间:2026-07-14
## 1. 审查口径
本记录以 [物业AI人力资源系统业务需求文档BRD.md](物业AI人力资源系统业务需求文档BRD.md) 为业务事实源,以 [FIGMA_IMPLEMENTATION_MATRIX.md](FIGMA_IMPLEMENTATION_MATRIX.md) 判断页面与视觉落地,以 [API_INTEGRATION.md](API_INTEGRATION.md) 和真实接口/浏览器结果判断运行闭环。
`Figma` 的 `[x]` 只表示画板对应页面已实现,不代表正式试点数据、组织权限或线上生产验收已经完成。BRD 的“阶段二个人 AI 助理”和三期运营页面不纳入当前一期修复范围。
## 2. 已确认完成的当前基线
| 领域 | 当前证据 | 结论 |
|---|---|---|
| 员工端今日/练/问/我 | `mobile-uni/src/pages/user/*`;员工首页、训练前预习、独立练习路由已实现 | 当前本地代码与线上静态包不一致:线上仍引用旧 `index-DSualpPE.js`,当前构建引用 `index-DJfe2tlN.js`;线上学习页未包含当前错题原因筛选标记。不能把本地构建视为线上已发布 |
| 主管工作台/复盘/派发 | `mobile-uni/src/pages/supervisor/*`;线上工作台已完成视觉回归 | 页面主链路已在位;正式主管身份仍依赖组织数据 |
| 候选人面试与 HR 复核 | `mobile-uni/src/pages/candidate/*`、`frontend/src/views/recruit/interview.vue` | 工程闭环已在位,需继续保留人工复核证据 |
| SOP/RAG/资料处理 | `frontend/src/views/knowledge/*`、`backend/.../AihrSopSeedService.java` | 搜索、引用、反馈、异步处理和评审入口已在位 |
| 对练/每日题/主管带教 | `backend/.../AihrPracticeSeedService.java`、`mobile-uni/src/pages/user/practice` | 主闭环已在位;低分再练、错题归因仍需更明确的用户可见闭环 |
| 案例上传/整理/筛选 | `backend/.../AihrCaseService.java`、`mobile-uni/src/pages/user/cases`、`frontend/src/views/knowledge/cases.vue` | 上传与整理已在位,但当前仓库没有可用预渲染视频样片资产,也没有稳定的案例详情/学习点模型;不能用假播放器宣称案例学习闭环完成 |
## 3. 未完成项与优先级
### P0:必须先解决,否则不能称为正式试点完成
| 缺口 | BRD依据 | 当前事实 | 下一步 |
|---|---|---|---|
| 正式主管身份、项目范围和数据权限 | 5.4、L1-B、G3 | 代码已有 `aihr_org_snapshot`、岗位/项目过滤和主管接口;移动端角色查询失败已改为安全降级员工端,但正式上游快照的手机号关联仍不足,线上视觉测试不能替代真实主管身份验证 | 用正式组织同步 dry-run 先核对项目、岗位、`ext_party_id`、手机号;只在上游数据合规后执行正式同步 |
| M5 正式试点证据 | L1-B/C/D、G1/G3/G4 | 本地严格门禁和导出能力已存在;本地样本不能代表正式窗口,不能用 seed/烟测数据替代 | 固定 1–2 个住宅项目和窗口,按唯一在职身份采集训练、人工校准、SOP 评审、完训率和满意度 |
| AI 分数与人工复核边界 | 4.1、4.5、G1/G2 | 面试和对练已有人工复核/校准入口;正式试点 CSV 已补明细级 AI 分、人工校准分、校准人、校准时间和最终采用分;正式试点仍需用真实窗口验证人工可否决证据 | 在正式试点报告中抽查校准记录与最终采用值,确认人工分可覆盖 AI 建议且不直接挂钩绩效/晋升 |
| 线上 H5 静态包未同步当前代码 | 3.1、4.4、L1-B | 2026-07-14 对线上 `https://peilian.njzhmj.top/h5/` 做资源核对:生产 HTML 最后修改时间为 2026-07-13 19:09,仍引用 `index-DSualpPE.js`;当前 `mobile-uni` 构建引用 `index-DJfe2tlN.js`,学习页本地 chunk 包含错题原因筛选而线上 chunk 不包含 | 先按发布脚本做远端备份和静态资源同步,再重新 curl HTML、逐项核对资源哈希和关键页面;未经发布动作和线上回归,不宣称已发布 |
### P1:一期 BRD 功能仍未形成完整业务闭环
| 缺口 | BRD依据 | 当前事实 | 建议实现顺序 |
|---|---|---|---|
| 岗位-SOP匹配与上岗资格 gating | 3.1、4.2、TechSpec P1 | 已补 `GET /api/knowledge/position-sop` 和员工学习页状态提示:一期只确认生活顾问内置学习导航;尚无 `sop_applicability`、`onboard_task`、`qualification_gate` 正式数据闭环,不能作为上岗资格判断 | 先接正式岗位/项目与 SOP 适用范围数据,再补培训任务状态;资格 gating 必须由 HR 明确规则和证据来源后实现 |
| 认证等级与激励规则可配置 | 4.5、10.2-A、TechSpec M6 | 成长激励页已有初/中/高级证据包和学分口径展示,但规则仍是前端硬编码;原“排行榜”开关无实际业务作用,已移除并明确标记只读;尚无 `cert_rule`/`incentive_rule` 的持久化、版本、角色权限和生效记录 | 先由 HR 确认学分来源、分值、防刷和初/中/高级条件,再设计规则表与管理员 CRUD;在规则契约明确前,不把静态展示称为可配置 |
| 智能错题本 | 3.1、4.4、TechSpec P1 | 已补 `/api/aihr/mobile/practice/mistakes` 和员工“学”页错题本:按本人聚合低分/红线回合,展示原因、分数、再练状态,支持按现有归因筛选,并可跳已有 retry assignment;尚未做独立错题表和主管侧聚合 | 后续复用现有 session/assignment/annotation 补复盘详情关联和主管侧聚合,不新增独立错题事实表 |
| 案例学习/视频详情 | 3.1、4.6、矩阵第35行 | `AihrCaseService` 当前用内存 `CaseState` + `aihr_case_record` 保存转写/摘要,没有稳定 media URL、学习点、主管点评和案例详情 API;仓库也没有可用于一期验收的预渲染样片资产 | 先由业务提供样片或正式媒体 URL,并确定案例详情、学习点、主管点评字段,再扩持久化契约和权限;没有真实媒体 URL 时不造播放按钮 |
| 案例库质量与数量 | L1-B、4.6/4.7 | 上传/整理/筛选路径已有;“至少20条脱敏案例”和每周每项目一条需要正式数据证明,当前也没有可用于一期样片验收的真实视频资产 | 先按项目窗口采集并脱敏检查,再补案例统计/学习详情导出;不使用空壳视频或演示 seed 冒充 |
| RAG 可用率与知识治理 | 4.7、L1-C、G3 | 搜索、引用、反馈、知识缺口和人工评审入口已有;住宅核心流程覆盖率与可用率仍需正式评审数据。员工反馈目前按规范化问题+fragmentId去重,没有保存同一次搜索的 `reviewId`/答案版本,尚不足以做严格的答案版本追溯 | 先由业务确定问答评审与员工反馈的关联契约,再补评审批次/答案版本字段;在此之前按现有 query、fragment、source 口径统计,不宣称完成逐问答追溯 |
### P2/P3:明确暂缓,不应混入当前修复
- 个人 AI 助理、个人资料库、网页抓取、引用问答、PPT 生成:BRD 4.8,阶段二。
- 开放问题榜、积分/排行榜/荣誉墙、完整七维偏好、独立 AI 教练编排:阶段二/三或后续运营范围。
- 师徒关系、拜师池、认证和带徒福利:业务已取消,继续保持不实现。
## 4. 首批执行顺序
1. 先完成正式组织快照 dry-run 与项目范围核对;不修改正式数据,不用手机号猜角色。
2. 在本地/测试环境实现“错题本只读聚合”,复用现有训练记录和 retry assignment,补 API、员工入口和主管查看边界。
3. 已先补岗位学习适配摘要,但它只负责把一期生活顾问导航状态说清楚;下一步接正式岗位/项目/SOP 适用范围,再实现培训任务状态;资格 gating 放在有真实资格规则后接入,避免先做一个无法运营的开关。
4. 单独设计案例详情数据契约,确定媒体来源、样片、学习点和主管点评后再开发详情页。
5. 用正式试点窗口跑 BRD L1/M5,而不是继续增加视觉页面。
## 5. 每批完成定义
- 有明确 BRD 条款、代码路径和数据证据。
- 读写权限按员工本人、主管项目范围、HR/运营角色区分。
- 真实接口或浏览器验证通过;不能验证的外部数据依赖必须标明。
- 不用 seed、烟测样本或固定演示账号冒充正式试点达标。
- 发布前同步矩阵、API 文档、验收脚本和本记录。
## 6. 本轮线上核对记录(2026-07-14)
- 线上入口 `https://peilian.njzhmj.top/h5/` 返回 `HTTP 200`;生产 HTML 的 `Last-Modified` 为 `2026-07-13 19:09`。
- 线上 HTML 引用 `index-DSualpPE.js`;当前分支 `mobile-uni` 构建引用 `index-DJfe2tlN.js`。两者 CSS 引用一致,但 JS 资源内容和动态 chunk 集合不一致。
- 使用本地数据库已有手机号和 dev 固定验证码登录线上 H5,岗位确认、员工首页和 `/pages/user/practice/index` 均可打开;这证明线上登录/基础路由可用,不证明线上包已追平当前代码。
- 线上学习页 chunk 未包含当前代码已有的错题原因筛选标记;本轮未执行远端覆盖发布,待发布后重新做 HTML、资源哈希和浏览器回归。