fix(aihr): gate organization display fields in production
This commit is contained in:
@@ -208,3 +208,5 @@
|
||||
- 2026-07-14 BRD G3/G6 异步模型租户上下文复核:`AihrModelSeedService` 原先用 `LoginHelper.getTenantId()` 解析模型配置,异步上传队列、目录导入等 worker 虽已用 `TenantHelper.dynamic(tenantId, ...)`,进入模型/语音/RAG调用后仍可能因无登录态回退 `000000`;现统一改用动态租户优先的 `TenantHelper.getTenantId()`,普通请求仍回退登录租户,补源码契约测试。覆盖模型配置、对练/面试、语音、SOP 向量/重排/视觉和异步资料加工的共享边界;未修改数据库或生产环境。
|
||||
- 2026-07-14 测试门禁复核:父 POM 默认 `skipTests=true`,普通 `mvn ... test` 只完成编译;改用 `-DskipTests=false` 真跑 AIHR 测试时发现 `AihrSensitiveTextTest` 仍检查已移出 `AihrModelSeedService` 的 `latencyMs` 字符串,已按当前 `ModelUsage + Duration` 实现修正断言。后续 AIHR 测试命令必须显式关闭跳测,避免把编译成功误判为测试通过。
|
||||
- 2026-07-14 最新线上只读复核:生产根站与 `/h5/` 返回 `200`,线上管理端仍加载 `index-CJZ3Ax3Z.js`(SHA-256 `8b9278a26ccb760abce489b12a20b221748c64d4c4153613d2511777bb9677bc`),H5 仍加载 `index-D4-NrEpb.js`(SHA-256 `ab15bfd17cabe58e2f34b0ac61ee198a837128ed85dc6bb0ddf77bc3e22dcd9c`);当前分支 `b32be4a3` 工作区本地构建仍为管理端 `index-v0LFXtVo.js`、H5 `index-Byx3WtY1.js`,两端资源未对齐。本轮只读核验,未执行生产静态同步、后端重启或业务数据写入。
|
||||
- 2026-07-14 BRD 5.4 主数据边界复核:发现 `aihr_org_snapshot` 及 `AihrOrgSyncService` 当前仍持久化并通过管理端组织快照返回 `project_name/dept_name/person_name`,同时保留 `person_phone` 做移动端身份映射;这与 BRD“本地只存外部 `party_id`,绝不复制姓名/部门”的硬约束不一致。TechSpec 3.1 又把 `sync_person.name/phone` 列为外部同步快照字段,项目现有 Demo/管理端也依赖姓名、部门和项目展示,因此不能直接删列或清空生产数据,否则会破坏组织筛选、主管范围展示和训练记录标签。该项暂列 P0 合规缺口:正式组织同步前必须由业务/法务/安全确认“生产只存 ID 与必要映射”还是允许受控显示缓存,并给出迁移、脱敏和管理端展示方案;在决策完成前不执行正式覆盖同步,也不把当前组织快照称为符合 BRD 5.4。
|
||||
- 2026-07-14 BRD 5.4 渐进缓解:增加 `aihr.org-sync.store-display-fields` 开关,生产配置默认 `false`,开发配置显式 `true`;关闭时组织同步不再写入姓名/部门,组织快照接口也不返回历史姓名/部门,关键词搜索同步收窄为外部主体、项目和岗位字段,管理端人员列回退显示 `ext_party_id`。该修复降低新同步和 API 暴露风险,但不等于完成数据模型迁移:历史生产行仍可能保留旧显示字段,`person_phone` 仍是身份映射必要字段,正式上线前仍需 DBA/法务确认清理、保留期和最小字段方案。
|
||||
|
||||
Reference in New Issue
Block a user