Files
prop-ai-hr/docs/帮道8月1日Android安装包测试版任务计划-20260727.md
T

408 lines
37 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.
# 帮道 8 月 1 日 Android 安装包测试版任务计划
> 文档版本:v2.0
>
> 制定日期:2026-07-27
>
> 目标交付:2026-08-01 Android 受控内测 APK
>
> 当前定位:测试版安装包,不等同于正式签名包、应用商店包或阶段一正式试点通过
>
> 合并说明:已吸收《下一步计划-跟进意见对齐-20260727.md》和《AI物业陪练系统功能需求清单_无来源依据版》v2.0 中经会议录音、仓库和生产只读复核确认的近期事项;冲突项仍以本计划冻结边界为准
## 1. 决策基线
本计划基于 2026-07-27 会议跟进意见、当前仓库实现和后续确认形成,以下事项已经冻结:
- 8 月 1 日交付形态为 **Android 安装包**,不以 H5 或 HBuilderX 标准基座代替。
- 员工侧受控内测重点聚焦“查/练/问”;“学”、大喇叭和直通车复用现有链路完成必要冒烟,不在本节点扩展完整课程、自动视频或工单闭环,不删除既有代码与数据。
- 直通车保持现有五个通道:总裁、财务、人力、审计、运营。
- 当前不扩展视频制作能力,不开发 AI 视频生成、视频编辑、供应商接入或平台内制作流程;已有视频只作为现有课程资料归集和使用。
- 当前不接入自动工单。系统只能指导员工如何在既有系统中填写工单,不得展示“已创建、已派单、已送达”等未经真实外部系统确认的状态。
- 现有知识检索已经采用 MySQL LIKE、MySQL 全文检索和 Qdrant 向量检索融合并 rerank,本轮只补合格内容、覆盖率和回归证据,不重做 RAG,也不开展“多套架构选型”。
- Android APK、后端 JAR、管理端/H5 静态资源和数据库迁移是四个独立发布单元;先按实际依赖确定变更范围,不把“测试包交付”自动解释成“全部生产资产上线”。
- 8 月 1 日是受控内测节点,不替代正式试点;正式试点仍需独立项目、人员、时间窗和严格统计证据。
- “约 600 名生活顾问”只作为账号与推广规模基线,不等同于并发数;容量验收必须另行冻结在线峰值、请求并发、音视频占比和压测口径。
## 2. 测试版目标
测试版只验证四个业务结果:
1. 员工能够通过 Android 安装包完成登录,并顺利进入“查/练/问”主路径。
2. 员工提出政策、制度和高频业务问题时,系统能够给出简洁、有来源、权限正确的回答;无可靠依据时明确说明无法确认。
3. 员工能够完成首批正式场景对练、评分和记录查看;运营预览、开发 seed 和标准基座结果不得计入正式员工验收。
4. 大喇叭现有文件链路完成冒烟;员工能够通过五个直通车通道提交意见,收到明确的系统收件提示,并由已绑定的真实处理人在管理端完成一次正式回复。
### 2.1 交付物
- Android 内测 APK,版本号和 `versionCode` 均递增。
- APK SHA-256 校验值、安装说明、已知问题清单和上一可用版本回退包。
- 本次后端、管理端、数据库迁移和移动端资源的版本清单。
- 测试账号角色清单,仅记录角色和用途,不在仓库保存手机号、验证码、密码或访问密钥。
- 业务内容清单、知识空间授权清单、首批正式对练场景清单。
- 内测验收记录和遗留问题清单。
### 2.2 明确不做
- 不交付 iOS 安装包、TestFlight 或应用商店版本。
- 不重做现有 RAG 架构,不并行研究多套替代方案。
- 不开发 AI 视频制作能力。
- 不开发自动工单、自动派单或外部业务系统回执。
- 不在本轮实现管理群机器人自动发送、群内回复回写、多轮工单或 SLA。
- 不将 seed 场景、测试账号或单台标准基座成功记录包装成正式业务验收。
## 3. 当前可复用能力
以下能力已经存在,本轮应优先配置、收口和验收,不重新建设:
- `mobile-uni` 已支持员工、主管和候选人端,并已具备“今日/练/问/我”基础导航。
- “练”已经具备文字、录音、AI 对话、评分、训练记录和主管复盘基础链路。
- “问”已经使用服务端 Agent 编排,并复用知识检索、短期会话、引用、附件、ASR 和 TTS。
- 知识平台已经支持多知识空间、角色授权、调用应用绑定、分类和文件多空间上传。
- 直通车已经支持五通道、业务匿名、按角色收件和一次正式回复。
- 生产短音频 ASR 已切换到阿里云百炼 `qwen3-asr-flash`,并在一台 Android 标准基座完成过“按住说话→转写→提交”验证。
当前短板主要是:正式内容、生产授权配置、企业签名 RC APK、完整真机反例、当前代码完整发布以及受控内测证据。API 35 自定义基座链路已成立,但不能替代企业签名包或正式试点。
### 3.1 生产只读基线(2026-07-27)
以下数字已经通过生产只读查询复核,只作为本轮排期和效果对照的日期快照,不代表业务验收通过:
| 项目 | 当前值 | 计划含义 |
|---|---:|---|
| 最近完整生产发布源 | `230dfb4d` | 当前主分支不能直接视为已完整发布 |
| 当前 `main` / `origin/main` | `9ae5f750` | 相对完整生产基线领先 25 个提交,须逐项评估发布范围 |
| 知识片段 | 8,352 | MySQL 仍是事实源 |
| 已写入 MySQL 向量 | 3,638(43.6%) | 不能用“RAG 尚未建设”描述现状 |
| Qdrant 当前租户点数 | 3,638,1,024 维 | 与当前已向量化片段一致 |
| `aihr_knowledge_category` | 0 行 | 分类能力有结构和管理接口,但生产尚未运营 |
| 行政管理制度空间 `1008` | 4,260 片段 / 990 向量(23.2%) | 政策问答的首要补齐对象 |
| 培训视频空间 `1009` | 2,571 / 1,286 | 补向量前先核验解析质量 |
| 图片素材空间 `1010` | 153 / 0 | 无可靠视觉结果不得直接向量化 |
| SOP 空间 `1201`、`1202` | 各 3 / 0 | 内容 READY 且审核后可优先补齐 |
| 直通车反馈 | 2 条 | 不能据此证明真实处理闭环已经稳定运行 |
生产短音频 ASR 热修复和单台 Android 标准基座请求只证明局部链路;自定义基座权限、弱网、完整 Agent 回归和本计划真机门禁仍需独立完成。
### 3.2 RC 自动化门禁快照(2026-07-29)
本节记录当前工作区自动化、测试签名自定义基座和独立内测 APK 结果,不代表企业签名 RC APK 或完整真机验收完成。
| 门禁 | 结果 | 说明 |
|---|---|---|
| `mobile-uni` 单元测试 | 通过 | 198/198;覆盖文件选择器取消/失败分流、九个消费页面、直通车首次弱网恢复及版本一致性,测试过程有本机 WebSocket 端口占用告警,但无失败 |
| `mobile-uni` TypeScript 检查 | 通过 | `npm --prefix mobile-uni run typecheck` |
| H5 资源构建 | 通过 | 仅证明 H5 资源可编译 |
| App-Plus 资源构建 | 通过 | 仅生成 HBuilderX 出包资源,不等同于 APK |
| App 原生配置、图标与启动图校验 | 通过 | 固定包名、语义版本、API 35、双 ABI、启动权限策略、Camera/Record 模块、禁止明文 HTTP、网络安全资源、22 个图标和 14 个启动图 |
| 独立内测 APK 结构与签名校验 | 通过 | `verify-android-apk.ps1 -BuildKind dcloud-test` 已核对包名、版本、`targetSdkVersion`、网络安全配置、包内业务资源、单签名、v2 签名和 SHA-256 |
| `390×844` 未登录首屏与入口 | 通过 | 今日主操作、练、问、问制度快捷项、大喇叭和直通车登录门禁均在首屏可见;练、问已实际点击可达,无控制台错误 |
| 登录后核心业务路径 | 未执行 | 当前没有可用的本地 APP 登录主体和后端会话;不得用伪造手机号或未认证预览冒充通过 |
| 管理端生产构建 | 通过 | 存在大 chunk 告警,不阻断本轮构建 |
| 工单边界后端定向测试 | 通过 | 39 个测试,0 失败、0 错误 |
| `ruoyi-aihr` 后端全量测试 | 通过 | 698 个测试,0 失败、0 错误;包含正式场景占位来源/回合/Rubric 禁止发布的新增回归;Windows CRLF 引发的 7 个源码契约误判已通过读取时统一 LF 修复并全量复跑 |
| 法务配置技术链路 | 通过 | 登录协议默认不勾选;协议未配置时禁止验证码与登录;配置生成器和发布联网校验已接入,发布包拒绝开发验证码提示 |
| 正式 App 发布配置校验 | **技术通过,法务签认阻断** | 受控内测版协议正文已通过 Caddy 公网 HTTPS 发布;启动原生提示关闭,登录页协议默认未勾选且验证码/登录失败关闭,包体与联网门禁使用同一组地址。公司法务尚未正式签认正文,不能视为正式发布通过 |
| Android 设备、调试基座、测试签名和真机门禁 | **部分通过,仍阻断** | HBuilderX 5.22 已识别 vivo V2443A(Android 15);API 35 自定义基座和可独立安装的 DCloud 云证书内测 APK 均已生成。`0.1.12` 在 Android 15 虚拟机全新安装后确认无原生隐私提示、四项敏感权限未授权且无 Crash/ANR;媒体选择取消与直通车首次弱网恢复状态机已自动化修复。该虚拟机为 x86_64,不能完成 ARM-only DCloud 页面验收;登录页法务门禁、录音允许/拒绝、真实系统选择器取消、真实断网恢复和完整业务反例仍需 ARM64 真机 |
统一 RC 脚本已在干净运行时提交 `dc20b92061f10a356ed73eb105ef7b00c8b8a617` 上完整复跑,证据目录为 `output/aug1-rc/0.1.10-110-dc20b920-frozen/`,结果为 `releaseEligible=true`。发布/回滚、API 探针和可识别隐私二次确认/退出态的 Android 取证工具另冻结在 operations commit `71f005c22981989c5f2b24fa31c385a1b82657b7`。当前双提交交付包为 `output/aug1-release/bangdao-aug1-0.1.10-110-dc20b920-ops71f005c2.zip`,大小 `192,926,422` 字节,SHA-256 为 `4391895420B50EBBD8CB87EA20AF71A70D5DABAD5003F5361A8B034CF7525BCA`;已完成 14 个 ZIP 条目和 13 个 `SHA256SUMS.txt` 载荷的逐条复验。旧无 operations 后缀包、`ops861fa0ea` 与 `ops414af66e` 包保留作追溯但均已被替代。上述本地自动化冻结不替代生产后端发布授权和人工验收。
2026-07-29 根据企业内部应用体验决策,当前候选升级为 `0.1.12 (112)`,取消启动原生隐私确认,法务同意统一由登录页协议勾选承担。干净提交 `b9e08789265b73524e3ce2646abe2f2fc4565906` 的统一 RC 证据位于 `output/aug1-rc/0.1.12-112-b9e08789-frozen/`,结果为 `releaseEligible=true`;移动端 199 项、`ruoyi-aihr` 698 项及全部构建、APK 门禁通过。APK 大小 `33,921,458` 字节,SHA-256 为 `DD24E5F20BC7C064F5059E538A1FAB7518DF46CBAB502F59A3629F0B1B1F5EBB`。前述 `0.1.10` 双提交包仅保留追溯,不能再作为当前 APK 分发。
生活顾问调研已转成 `docs/content-candidates/aug1-life-advisor-content-candidates-v0.1.json`:包含 5 个禁用场景候选和 30 道待审政策题,内容候选校验脚本通过。由于当前只收到 1/24 份访谈,且正式来源、业务审核和 Rubric 签认尚未完成,正式可发布场景与正式有据标准答案均为 `0`;交付包中的候选文件只供审核,不得直接导入或启用。
### 3.3 Android 真机预检快照(2026-07-28)
- HBuilderX CLI `5.22.2026072503-alpha` 已识别唯一连接的 vivo V2443A,标准调试基座完成“编译 → 同步 → 启动”,当前 App-Plus 页面可在真机正常渲染。
- 真机物理分辨率为 `720×1600`;员工端首页的今日主操作、登录入口、状态栏和底部手势区未见白屏或明显遮挡。该结果不替代 `390×844` 首屏门禁和其他机型覆盖。
- 未配置正式法务地址时,登录页协议默认未勾选,页面明确提示“当前暂停验证码发送与登录”;点击协议入口只显示配置缺失提示,不会跳转占位地址。
- DCloud 云端证书自定义基座首版已安装并以 `com.yincheng.wygj`、`0.1.5 (105)` 启动,证明云打包、签名、USB 安装、资源同步和自有包名链路可用;该首版系统读取到默认 `targetSdkVersion=28`,不能代表 Android 15 权限模型。
- `mobile-uni/src/manifest.json` 已显式固定 `targetSdkVersion=35`,并把设备信息与外部存储权限设为启动时不申请;相机和录音模块继续保留,只能由具体用户操作触发系统授权。上述配置已进入自动化门禁。
- 2026-07-28 最终 API 35 自定义基座位于 `mobile-uni/dist/debug/android_debug.apk`,大小 `21,158,193` 字节,SHA-256 为 `82D3352FF96A86F5DB4AC0C71DCB0ED6CEC98F2A785F6EAED2FE8D4FC0C5F704`。`npm --prefix mobile-uni run verify:android-apk` 已验证包名、`0.1.5 (105)`、`targetSdkVersion=35`、单签名和 APK Signature Scheme v2。
- 新基座已在同一设备完成保留数据的覆盖安装和系统 Launcher 冷启动;Android 系统读取 `minSdk=21`、`targetSdk=35`,启动后设备信息、存储、相机和录音权限均为未授权,且未出现启动权限弹窗。员工端首屏、状态栏和底部手势区正常渲染,未见白屏、崩溃或 `FATAL EXCEPTION`。
- 登录页协议仍默认未勾选,法务地址缺失时明确阻止验证码与登录。Android 15 拒绝从 ADB 直接启动未导出的内部 Activity,使用系统 Launcher 入口可正常启动,符合平台安全边界。
- 受控内测版《服务协议》《隐私政策》已作为静态页面发布到 `https://peilian.njzhmj.top/legal/`;发布前已备份整个站点到 `/opt/wygj/backups/www-20260728224710`,未修改 Caddy 配置、后端、数据库或 H5 业务资源。页面可公开访问不等同于公司法务签认。
- `configure:app-privacy` 已修正为写入 uni-app CLI 输入目录 `mobile-uni/src/androidPrivacy.json`,并同时核对 `dist/build/app/androidPrivacy.json`;APK 门禁区分“只含原生运行壳的自定义基座”和“内置业务资源的独立测试包”,避免再以 DCloud 默认空链接产生假绿。
- 2026-07-28 23:12 生成的独立 DCloud 云证书内测 APK 位于 `mobile-uni/dist/debug/bangdao-0.1.5-dcloud-test.apk`,大小 `33,920,950` 字节,SHA-256 为 `AB634EB9A9F0939804151ED14815484FBD75DFE36CC24DF00EC23BDD762D8FD1`。脚本已验证包名、`0.1.5 (105)`、API 35、非调试、单签名、v2 签名和包内两个法务地址。
- 该内测 APK 已在 vivo V2443A 完成同签名覆盖安装;只清除本 App 测试数据后,以系统 Launcher Activity 干净启动,原生 template 隐私弹窗真实显示,服务协议与隐私政策链接均通过 vivo 系统浏览器打开线上正文,未见 `FATAL EXCEPTION`。验收过程未代替用户点击同意或拒绝。
- 2026-07-29 当时候选包升级为 `0.1.6 (106)`,位于 `mobile-uni/dist/debug/bangdao-0.1.6-dcloud-test.apk`,大小 `33,921,279` 字节,SHA-256 为 `A5F026B70F11327355597B9FEA3625C4168700297E6D7847F10B079CEB860914`。登录页法务校验已移除 App-Plus 不保证支持的浏览器 `URL` 构造器,测试验证码不再以源码常量进入包内;APK 反编译门禁已确认包内业务资源等于当时编译产物,并通过法务链接、签名和敏感值扫描。
- `0.1.6 (106)` 已在同一设备完成保留数据的覆盖安装和 Launcher 冷启动;相机、录音和媒体权限保持未授权,未见 `FATAL EXCEPTION`。覆盖安装保留了前一版本的隐私状态,因此最新包的拒绝/同意反例仍须由用户亲自执行。
- 本机 Android Studio `Medium_Phone` 虚拟机已启动为 Android 15/API 35(`1080×2400`、密度 `420`)。在此前未安装本应用的虚拟机上,`0.1.6 (106)` 首次安装和 Launcher 冷启动成功,最新包真实显示原生隐私弹窗,四项相机、录音、图片和视频权限均未授予,crash 缓冲区为空。虚拟机只补充干净安装和 API 35 权限基线,不替代真机媒体、WebRTC、弱网与系统浏览器验收;拒绝/同意仍由用户亲自执行。
- `0.1.8 (108)` 进一步把 Android 原生清单和 `network_security_config.xml` 纳入 App 构建链及 APK 反编译门禁。独立内测 APK 大小 `33,921,705` 字节,SHA-256 为 `E252140645F3AAD14B3594FD78E76BDF1A2122F7DC70EBD21CC5DF53223C7878`;APK 反编译确认 `usesCleartextTraffic=false`、`networkSecurityConfig` 引用和系统证书信任配置均已进入安装包,本机虚拟机卸载旧实例后全新安装并在 `2.904s` 内冷启动,最新隐私弹窗真实显示,四项敏感权限未授予且 crash 缓冲区为空。
- 同一 `0.1.8` APK 随后在虚拟机完成保留数据的覆盖安装:覆盖后冷启动 `3.092s`、标准 Launcher Intent 暖启动 `0.538s`、切到系统桌面再恢复热启动 `0.120s`;三次均回到 `PandoraEntryActivity`,隐私弹窗保持可见,四项权限仍为 `granted=false`,未发现 FATAL 或 ANR。该证据只完成安装与首次弹窗前的生命周期基线,未代替用户选择隐私选项。
- 针对 Android 系统文件选择器“用户取消”被误判为上传或转写失败的问题,五个选择服务已统一结构化取消信号,九个页面在取消时恢复空闲态并清理残留“转写中”;真实错误仍显示稳定中文。自动化已覆盖该状态机,但真实系统选择器取消仍须人工点击确认。
- `0.1.10 (110)` DCloud 独立内测 APK 大小 `33,922,134` 字节,SHA-256 为 `20CB16B4E9D024DBF5EEEF577BFBA3B4DF5E5E78B597BABB99CB7450C7AE5034`。同一虚拟机从 `0.1.9` 保留数据覆盖安装成功,Launcher 冷启动约 `1.271s`,最新原生隐私弹窗可见,四项权限仍为 `granted=false`,未发现 FATAL 或 ANR。
- 自定义基座和独立内测 APK 均使用 DCloud 云端测试证书,不是企业正式签名 APK;当前 `0.1.12` 已关闭明文流量、内置网络安全配置并取消启动原生隐私确认,但仍只可用于 8 月 1 日受控内测。公司法务签认、企业签名、登录页协议门禁和登录后权限反例仍是正式发布阻断。
## 4. P0 工作分解
| ID | 任务 | 责任角色 | 截止时间 | 完成门槛 |
|---|---|---|---|---|
| P0-01 | 冻结范围与入口 | 产品负责人、移动端 | 7 月 27 日 | 首页突出查/练/问,学、大喇叭与五通道复用现有链路,次要入口隐藏但可恢复 |
| P0-02 | Android 自定义基座与 APK | 移动端、发布负责人 | 7 月 30 日首包,7 月 31 日 RC | HBuilderX 5.22、自定义基座、测试签名、安装升级和权限反例通过 |
| P0-03 | 政策知识空间与问答 | 知识运营、后端、业务审核人 | 7 月 30 日 | 正式空间、授权、首批分类、合格内容向量补齐和不少于 30 道标准问题通过 |
| P0-04 | 首批正式对练内容 | HRBP、业务专家、训练运营 | 7 月 30 日 | 至少 5 个生活顾问高频场景完成来源、Rubric、红线和审核 |
| P0-05 | 24 位优秀生活顾问访谈 | HRBP、业务专家、内容运营 | 7 月 29 日完成访谈 | 24 份录音/纪要及结构化提炼任务全部建档 |
| P0-06 | 五通道直通车收口 | 业务负责人、后台运营 | 7 月 30 日 | 五类真实处理人完成绑定,各通道正反权限与一次回复通过 |
| P0-07 | 工单边界纠偏 | 产品负责人、后端、内容运营 | 7 月 29 日 | 全局不再暗示系统自动创建、派发或送达工单 |
| P0-08 | 安全与发布差异收口 | 发布负责人、后端、运维 | 7 月 31 日 | 四类发布单元清单和 25 个提交影响完成签认;所选发布范围完成备份、预检和回退验证 |
| P0-09 | 真机回归与内测交付 | QA、移动端、项目负责人 | 8 月 1 日 | 核心路径全通过,无阻断级缺陷,APK/校验值/说明可交付 |
### 4.1 P0-01:入口精简与范围冻结
员工端保留账户、设置和必要导航能力,但首屏只突出:
- **学/练**:课程学习、政策学习、场景练习和每日训练。
- **问**:政策制度、业务 SOP 和工作问题的统一入口。
本轮不做大规模信息架构重写。次要功能采用隐藏入口或降级展示,保留路由、权限和数据,便于后续恢复。必须在 `390×844` 视口复核首屏,核心入口无需滚动即可看到并能实际点击。
### 4.2 P0-02:Android 安装包
移动端和发布负责人应完成:
1. 使用 HBuilderX 5.22 重新生成并安装自定义运行基座。
2. 执行 App 资源校验和 App-Plus 构建,阻止“命令成功但未生成有效资源”的假成功。
3. 配置测试签名、应用标识、版本号、图标、启动图、关闭启动原生隐私提示,并保留登录页协议门禁和麦克风/相机/相册/文件用途说明。
4. 确认 App 只请求正式 HTTPS 后端地址,安装包中不包含短信、模型、数据库、签名或其他服务端密钥。
5. 生成 Release Candidate APK,并记录文件大小、SHA-256、构建源提交和构建时间。
6. 保留上一可用 APK,准备安装失败、启动崩溃或关键接口异常时的回退说明。
8 月 1 日交付的是内部受控测试 APK。法务 HTTPS 页面已经技术上线并进入登录页协议入口,启动不再弹原生确认;在未完成公司法务签认、企业正式签名和完整真机门禁前,不得描述为正式发布包或商店上架包。
### 4.3 P0-03:政策制度知识空间
优先复用现有多知识空间能力,建议建立并确认以下业务空间:
- 全员制度;
- 业务 SOP;
- 人资政策;
- 优秀经验。
以上名称是内容归属维度,不等同于 `employee`、`supervisor`、`hr_operator`、`superadmin` 等人员角色。7 月 28 日前必须由业务与人力确认“内容空间—调用应用—可见主体—管理责任人”矩阵,禁止把“全员/业务/人资”直接硬映射成现有角色或由客户端自行指定权限。
每个空间必须有业务负责人、可见主体、调用应用、内容版本和下线责任人。文件可同时绑定多个空间,但最终检索范围必须是“租户 + 调用应用 + 当前主体授权”的交集。
当前生产已经运行 LIKE、全文检索、Qdrant 和 rerank,不再建设第二套 RAG。向量补齐按以下顺序执行:
1. 优先处理行政管理制度空间 `1008`,以及已经 READY、来源明确、审核通过的 `1201`、`1202` SOP。
2. 培训视频 `1009` 和图片素材 `1010` 必须先抽查解析正文、OCR/视觉结果和状态;内容不可用时保持待处理,不把噪声写入向量库。
3. 每批补齐后同时核对 MySQL `embedding_json` 数量、模型与维度,以及同租户 Qdrant 点数。完成标准是“Qdrant 点数 = MySQL 已向量化片段数且维度匹配”,不是未经内容资格判断就强求点数等于全部 8,352 条片段。
4. 保留补齐前后的固定问题集结果、命中片段和引用,不以点数增长代替回答质量验收。
生产 `aihr_knowledge_category` 当前为 0 行,但这张表记录的是空间内文档分类。现有授权检索仍调用 `dbSearch("", ...)`,底层 `category` 条件过滤的是知识空间名称 `i.name`,并不会因为分类表有数据就自动按文档分类收窄。测试版按以下边界处理:
- 分类表先用于内容治理、负责人和文档归类,首批正式政策文件必须完成分类;
- “问制度”继续通过服务端绑定政策空间和主体授权实现,不复制问答后端;
- 若要让文档分类直接影响检索,需要另行完成请求契约、SQL 关联、Qdrant payload 和存量索引迁移设计,不能按“一行解除硬编码”估算;
- 该分类检索增强不阻塞 8 月 1 日 APK,只要政策空间隔离、30 题回归和越权反例已经通过。
测试版至少准备 30 道政策与制度标准问题,覆盖正常问题、同义表达、矛盾资料、无依据问题和越权问题。验收要求:
- 同一问题集保留向量补齐前后的结果,能够解释命中与退化原因;
- 有答案时必须给出可核验引用;
- 无依据或资料冲突时不得编造;
- 跨空间越权命中为 0;
- 业务人工抽检可用率不低于 80%;
- 回答保持简洁,优先给结论、适用范围和来源。
“问制度”应作为“问”中的快捷入口,通过服务端绑定授权空间实现,不复制一套新的问答后端。
### 4.4 P0-04:首批正式对练内容
8 月 1 日前至少发布 5 个生活顾问高频场景,优先覆盖:
- 业主拒绝提供楼栋房号;
- 物业费争议;
- 报修久未处理;
- 情绪激烈投诉;
- 收费沟通与服务整改并行。
每个正式场景必须包含真实业务来源、目标、红线、成功标准、回合设计、能力项和五维 Rubric,并完成业务审核。现有 seed 只能用于调试,不得直接标记为正式内容。
### 4.5 P0-05:24 位优秀生活顾问访谈
建议设置 4 个并行访谈小组,每组由一名主访谈人和一名记录/追问人组成。每组每天完成 3 人,两天共完成:
`4 组 × 3 人/天 × 2 天 = 24 人`
每次访谈不少于 1 小时,输出:
- 原始录音或经授权的完整纪要;
- 具体业务情境和触发条件;
- 当事人的真实判断、动作顺序和关键话术;
- 无效做法、风险红线和升级条件;
- 可转成政策问答、标准动作卡、对练场景或知识缺口的候选项;
- 内容负责人和业务审核人。
访谈完成不等于内容已发布。运营与专家团队必须去重、脱敏、核实来源并完成业务审核,才能进入正式知识空间或场景库。8 月 1 日前只发布审核完成的首批内容,其余进入后续内容迭代。
24 人访谈是业务与内容团队的外部输入任务,不占用开发交付工时;技术团队只负责提供录音/纪要的受控接收方式,并导入已经脱敏、归类且完成业务审核的成果。
### 4.6 P0-06:五通道直通车
保持现有总裁、财务、人力、审计、运营五个通道,不增删通道。测试版完成:
- 五类真实处理人员绑定;
- 员工提交成功后显示明确的“已收到,等待处理”系统回执;该提示不是 AI 正式回复,状态仍为 `SUBMITTED`,人工回复前 `reply_content` 保持为空;
- 匿名仅隐藏处理端展示名,服务端继续保留内部身份用于本人查询、幂等和审计;
- 每个通道至少执行一次授权正例和一次越权反例;
- 每条反馈只允许一次正式回复,员工可以查看处理结果。
会议提出的每日匿名简报在测试版先采用人工运营流程:后台运营按固定时间汇总、脱敏后发至管理层群组;群组只作通知,正式回复仍在系统内完成。本轮不开发群机器人、自动群发或群回复回写。
### 4.7 P0-07:工单边界
对模型 Prompt、seed、SOP 示例和页面文案进行全局检查,将容易误解为系统自动执行的内容调整为:
> 请在现有工单系统中记录房号、问题、现场证据、责任部门和首次反馈时限;帮道仅提供填写建议,不会代为创建或派发工单。
验收时检查:
- 不出现“已创建工单”“已派单”“已送达”等虚假状态;
- 公司范围记录保持 `PENDING` 时,不得解释为外部系统已经收到;
- 回答可以指导如何写工单,但不提供未经授权的强动作入口。
### 4.8 P0-08:安全与发布差异收口
- 轮换此前在沟通中暴露过的云服务访问密钥,并确认仓库、日志、安装包和前端资源均不包含明文密钥。
- 密钥只通过服务器安全环境注入;移动端只包含公开 API 地址。
- 当前 `main` / `origin/main` 为 `9ae5f750`,相对最近完整生产发布源 `230dfb4d` 领先 25 个提交;其中 `7b014765` 的 Agent 追问修复必须发布后端 JAR 才能在生产生效。发布负责人必须从最终 release commit 生成差异清单,不得把 25 个提交无差别一次性推入生产。
- APK、后端 JAR、管理端/H5 和 schema 分别记录“是否变更、构建源、目标环境、验证项、负责人和回退物”。
- 若只做定向后端热修复,应明确记录为局部发布,不得称为当前源码与完整生产包一致;若宣称完整发布,则必须同时核对远端静态资源、后端 AIHR 模块和 schema。
- 发布前按所选范围运行本地预检;完整包发布后运行同时启用远端静态、后端和 schema 核验的完整 `release-preflight`,不能用单项后端热修复、H5 构建成功或 APK 可安装替代完整一致性。
- 数据库迁移先备份并按正式顺序执行;运行时 schema bootstrap 在生产保持关闭。
| 发布单元 | 8 月 1 日处理原则 |
|---|---|
| Android APK | 必交;使用签认后的 release commit 构建,完成自定义基座真机门禁 |
| 后端 JAR | 仅在 APK 依赖未发布接口/修复或本轮明确纳入时发布;先备份并验证回退 |
| 管理端/H5 | 不因 APK 出包自动发布;只有本轮功能或完整包一致性需要时才进入发布 |
| 数据库迁移 | 仅执行 release commit 所需正式 SQL;生产请求不得运行时补表补列 |
## 5. 倒排日程
| 日期 | 业务与内容 | 产品与开发 | 测试与发布 |
|---|---|---|---|
| 7 月 27 日 | 确定内容负责人、访谈名单、五通道处理人 | 冻结范围;记录生产基线与 25 个提交差异 | 确定测试机、测试账号角色和四类发布单元清单 |
| 7 月 28 日 | 启动 4 组访谈;确认空间/授权矩阵;形成 30 题回归基线 | 配置知识空间;筛选可补向量内容;精简入口和工单文案 | 生成 HBuilderX 5.22 自定义基座并开始权限测试 |
| 7 月 29 日 | 完成 24 人访谈;首批内容去重、脱敏、分类 | 优先补齐合格制度/SOP 向量;完成政策快捷入口和直通车配置 | 复核 MySQL/Qdrant 一致性,完成第一轮 App 主路径和反例测试 |
| 7 月 30 日 | 审核不少于 30 道政策题和至少 5 个对练场景 | 生成首个 Android 内测 APK | 执行补齐前后问答对照,以及安装、登录、权限、ASR/TTS、附件和五通道回归 |
| 7 月 31 日 | 业务签认首批内容和已知问题 | 冻结 release commit,修复阻断缺陷并生成 RC APK | 按发布单元执行预检/发布/回退验证;完整发布时运行完整 `release-preflight` |
| 8 月 1 日 | 选定一个项目开展受控内测 | 只处理阻断故障,不临时扩需求 | 现场安装、冒烟、问题登记和 Go/No-Go 决策 |
## 6. 安装包验收清单
### 6.1 安装与原生能力
- [x] APK 文件名、版本号、`versionCode`、SHA-256 和构建源提交可追溯。
- [x] 全新安装、覆盖安装、卸载重装均可正常启动。
- [x] `0.1.12` 干净首次启动不显示原生隐私确认,四项敏感权限保持未授权且无 Crash/ANR。
- [ ] 登录页协议默认未勾选,服务协议和隐私政策链接正确;未勾选时验证码和登录均被阻止,勾选后才允许继续。
- [ ] 同意麦克风后可录音;拒绝后不循环申请,并提供明确的文字或文件降级。
- [ ] 图片、视频、文档和音频选择取消后不残留错误状态。
- [ ] 前后台切换、网络断开和恢复不出现白屏或重复提交。
- [x] 图标、启动图、状态栏和底部手势区显示正常。
### 6.2 核心业务路径
- [ ] 手机号登录、验证码错误、登录失效重登符合预期。
- [x] 查/练/问在 `390×844` 首屏无需滚动即可进入;学、大喇叭和直通车现有入口可达。
- [ ] 至少 5 个正式生活顾问场景可开始、完成、评分并进入主管复盘。
- [ ] “问制度”标准问题有引用,无依据问题明确拒绝编造。
- [ ] 固定 30 题已经保留向量补齐前后结果,业务人工抽检可用率不低于 80%。
- [ ] Qdrant 点数与 MySQL 已向量化片段数一致,向量维度与当前模型匹配;图片/视频待处理内容未被强行向量化。
- [ ] 录音 ASR、答案 TTS 和设备语音降级可恢复。
- [ ] 五个直通车通道均可提交,匿名展示、角色收件和一次回复符合权限。
- [ ] 系统不显示任何未经外部系统确认的工单创建、派发或送达状态。
### 6.3 发布门禁
- [x] App 静态资源预检与 App-Plus 构建通过。
- [ ] APK、后端 JAR、管理端/H5 和 schema 的变更范围、构建源、验证结果与回退物已逐项签认。
- [ ] 若本轮宣称完整包发布,管理端、移动端、后端和 schema 的完整 `release-preflight` 已通过。
- [x] 关键自动化、类型检查和受影响模块测试通过。
- [x] 当前正式 HTTPS API 健康检查通过。
- [ ] 无阻断级缺陷;一般问题已进入已知问题清单并有负责人。
- [ ] 上一可用版本和回退步骤已经验证。
## 7. Go/No-Go 标准
只有同时满足以下条件,8 月 1 日才可对内发布测试 APK:
- APK 可安装、可启动、可登录,核心路径全部通过;
- 学/练、政策问答和五通道直通车无阻断缺陷;
- 知识空间越权命中为 0,回答来源可追溯,固定 30 题人工抽检可用率不低于 80%;
- 密钥、手机号、验证码和内部账号信息未进入安装包、仓库、截图或测试报告;
- 四类发布单元已经签认;实际变更项预检通过并具备可执行回退方案。
出现以下任一情况应暂停发布:
- 安装或启动失败;
- 登录、录音、政策问答或直通车主链路不可用;
- 发现跨租户、跨空间或跨角色数据泄漏;
- 安装包包含服务端密钥;
- 无法确认当前 APK、后端或数据库版本;
- 无可用回退包。
## 8. 主要风险与应对
| 风险 | 影响 | 应对 |
|---|---|---|
| 正式内容审核来不及 | 测试版只有技术壳,无法验证业务价值 | 先保证 30 道政策题和 5 个高频场景,不用 seed 冒充正式内容 |
| 自定义基座或签名资产延迟 | 无法形成可信安装包 | 7 月 28 日前完成资产清单和首轮基座,缺失项当天升级 |
| 24 人访谈完成但提炼不足 | 内容大量堆积,无法发布 | 访谈与提炼分开记账,只发布审核完成的首批内容 |
| 25 个提交一次性进入生产 | 混入未经真机或业务验收的原生、实时对练和其他变更 | 从 release commit 生成按发布单元的差异清单,逐项决定发布、暂缓和回退 |
| 盲目补齐全部向量 | 图片/视频低质量解析被放大,检索噪声增加 | 制度/SOP 优先,图片/视频先验正文和状态;用固定问题集验证收益 |
| 分类表有数据但检索未使用 | 形成“已分类即生效”的假完成 | 区分内容治理分类与检索过滤,后者另做契约、SQL、payload 和存量索引设计 |
| 知识空间授权错误 | 误查或泄漏 | 每个空间执行授权正例、越权反例和应用绑定验证 |
| 直通车处理人未绑定 | 员工提交后无人处理 | 8 月 1 日前五类通道必须有真实负责人和替补 |
| 临时新增视频或工单需求 | 破坏节点和验收边界 | 统一进入后续需求池,不插入本轮发布 |
## 9. 8 月 1 日后计划
### 9.1 第一周:内测修正与内容扩充
- 汇总内测问题,优先修复阻断缺陷、权限问题和高频误答。
- 完成 24 人访谈成果的去重、脱敏、分类和业务审核。
- 按真实查询日志补充政策问答、业务 SOP 和知识缺口。
- 对剩余合格片段分批补向量,持续保持 MySQL 已向量化数量与同租户 Qdrant 点数一致。
- 扩充正式对练场景,不降低来源、红线和审核门槛。
- 继续采用人工每日匿名简报,验证管理层实际使用方式。
### 9.2 后续专项
- 若人工简报证明有效,再单独设计自动摘要、管理群通知、负责人状态和审计,不直接把群聊当作业务事实源。
- 若业务确认需要按文档分类收窄检索,再单独实现分类请求契约、附件分类关联、Qdrant payload 和存量重建;不把空间名称过滤冒充文档分类过滤。
- 内部流程和目标系统完成对接后,再单独立项自动工单与正式回执。
- 视频制作能力继续保持不在当前系统范围;如未来重新提出,应另做需求、成本、版权和供应商评估。
- 准备正式试点:选定 1–2 个项目、至少 20 名正式员工和明确起止日期,产生真实训练、人工校准、SOP 评审、满意度和案例样本后运行严格门禁。
## 10. 责任确认
发布前必须补齐以下实名责任人,但不得在公开测试材料中记录账号密钥或个人敏感信息;QA 与 Go/No-Go 决策人负责最终签认:
- 项目总负责人;
- 产品范围负责人;
- Android 构建与签名负责人;
- 后端与数据库发布负责人;
- 知识空间管理员;
- HRBP 访谈负责人;
- 政策内容审核人;
- 生活顾问场景业务审核人;
- 五通道处理人及替补;
## 11. 事实源
- 会议输入:`帮道- 跟进的意见.txt`;
- 对照分析输入:`下一步计划-跟进意见对齐-20260727.md`;
- 2026-07-27 生产只读查询:知识片段/向量/Qdrant/分类/直通车计数快照(不包含密钥或个人数据);
- 当前实现与剩余门槛:`docs/BRD_IMPLEMENTATION_AUDIT.md`;
- 发布状态与变更记录:`docs/BRD_PRODUCTION_MIGRATION_RUNBOOK.md`、`CHANGELOG.md`;
- Android 出包边界:`docs/MOBILE_APP_PACKAGING.md`;
- 原生真机验收:`docs/MOBILE_APP_DEVICE_ACCEPTANCE.md`;
- 知识空间运行:`docs/KNOWLEDGE_PLATFORM_RUNBOOK.md`;
- 接口契约:`docs/API_INTEGRATION.md`;
- 正式试点:`docs/P0_PILOT_ACCEPTANCE_CHECKLIST.md`;
- 阶段一陪练范围:`docs/AI陪练完整交付计划-20260724.md`。