Commit Graph
264 Commits
Author SHA1 Message Date
admin d3552cc22d feat(aihr): add pilot satisfaction evidence loop 2026-07-14 04:13:02 +08:00
admin 65e6483d23 feat(aihr): export human calibration evidence 2026-07-14 03:36:02 +08:00
admin f9bce8f0ef feat(aihr): expose position SOP learning scope 2026-07-14 03:29:59 +08:00
admin d98ff0ff8b feat(aihr): add employee mistake book audit 2026-07-14 03:23:49 +08:00
admin 87360a25d3 feat(aihr): align figma pages for release 2026-07-14 02:04:36 +08:00
admin 98177725cd fix(aihr): close pre-merge auth and pilot metric gaps
Allow sys_user admin console to use unscoped mobile review APIs, restrict
org snapshot/sync to superadmin/hr_operator, count completed pilot people
with the 10-session rule, and let employees self-read assignments without
org team membership.
2026-07-11 01:24:57 +08:00
admin 13230e6b9a feat(aihr): complete phase two pilot readiness 2026-07-10 19:13:31 +08:00
admin 3b81f07b27 fix(aihr): use real mobile home metrics 2026-07-10 00:51:43 +08:00
admin b9215236bc test(aihr): align pilot completion metric 2026-07-10 00:34:05 +08:00
admin beaf4f30d0 test(aihr): enforce pilot completion gate 2026-07-10 00:26:21 +08:00
admin 6f0a4c3d63 fix(aihr): polish model fallback wording 2026-07-09 23:52:44 +08:00
admin 8617199651 fix(aihr): replace seed fallback wording 2026-07-09 23:35:40 +08:00
admin 0acbea7058 fix(aihr): mask sensitive case transcripts 2026-07-09 23:11:02 +08:00
admin 6cec08f4cb fix(aihr): remove demo wording from active flows 2026-07-09 23:07:17 +08:00
admin bfbd2d0b12 fix(mobile): show supervisor team review queue 2026-07-09 22:56:52 +08:00
admin 7267939f95 fix(aihr): remove fake case sample wording 2026-07-09 22:48:19 +08:00
admin cc3581a27a feat(aihr): flag masked org phones in precheck 2026-07-09 22:06:59 +08:00
admin 3b034f6903 feat(aihr): report org sync quality in precheck 2026-07-09 21:54:12 +08:00
admin f38dfeeae0 feat(aihr): surface org snapshot data quality 2026-07-09 21:38:35 +08:00
admin f00f9045eb fix(aihr): keep old daily drills out of today 2026-07-09 21:24:53 +08:00
admin b650304ef1 chore(aihr): add phones to org seed 2026-07-09 21:14:12 +08:00
admin 89d8611ea1 fix(aihr): scope unknown mobile supervisors 2026-07-09 17:29:28 +08:00
admin 8f73cb0c84 fix(mobile): require employee position before user flow 2026-07-09 17:09:26 +08:00
admin 8b92a7e9ac fix(aihr): include org phones in supervisor team scope 2026-07-09 16:45:57 +08:00
admin bba1e00425 fix(aihr): align growth path progress with criteria 2026-07-09 16:01:14 +08:00
admin f1fe0bdfaa fix(aihr): clean video asr snippets 2026-07-09 15:46:03 +08:00
admin 2ef3e39744 fix(aihr): trim sop evidence snippets 2026-07-09 15:37:01 +08:00
admin aa547ef365 fix(mobile): avoid seeded empty competency 2026-07-09 15:15:14 +08:00
admin 68c4b8547e fix(aihr): return pilot export as csv 2026-07-09 14:38:32 +08:00
admin e60520b7aa fix(mobile): proxy review audio downloads 2026-07-09 13:54:19 +08:00
admin 03d9c93ea4 fix(aihr): require candidate identity for materials 2026-07-09 13:13:40 +08:00
admin 0bff6bbfa6 fix(aihr): keep demo question verification read-only 2026-07-09 13:08:54 +08:00
admin 5f92847c00 feat(aihr): map supervisor phone to org scope 2026-07-09 12:54:33 +08:00
admin 9bd567a72f feat(aihr): filter supervisor reviews by org scope 2026-07-09 12:43:16 +08:00
admin a83fb53ecd feat(aihr): scope supervisor practice data 2026-07-09 11:37:33 +08:00
admin 2f5fb853a2 fix(aihr): require assignee for practice assignments 2026-07-09 11:02:11 +08:00
admin 82f861542f fix(aihr): paginate org snapshot view 2026-07-09 10:50:19 +08:00
admin 678543e8a5 feat(aihr): complete uni-app role workflows 2026-07-09 10:42:20 +08:00
admin 15cd789da6 feat(aihr): add SOP answer thumbs up/down feedback loop
- New aihr_knowledge_answer_feedback table; unique (tenant, query_norm,
  fragment_id) pair keeps submissions idempotent
- POST /api/knowledge/answer-feedback (fragmentIds array), GET pending-review
  list, POST /{id}/review — all under existing auth scope
- Down-voted (question, fragment) pairs are filtered from dbSearch fusion
  results; if filtering empties the hit list the original results are kept
  with an explanatory caution (never degrade to no-answer)
- Feedback table missing/unreachable → filter silently skipped, search
  behavior unchanged (degradation chain preserved)
- SnippetResponse gains optional trailing fragmentId (db hits only; seed
  fallback stays null); mobile sopPanel adds 👍/👎 with locked state after
  submit, up votes auto-marked reviewed to keep the review queue clean
2026-07-08 15:09:27 +08:00
admin 8d78bc69d1 feat(aihr): bind SOP direct-answer digest to sop_answer prompt template
- Seed aihr_prompt_template with code=sop_answer (conclusion-first + numbered
  steps + citations appended), matching the built-in prompt
- Digest prefers the enabled sop_answer template, falls back to the built-in
  constant, and logs prompt_version; answer/keyPoints/cautions contract unchanged
2026-07-08 14:52:02 +08:00
admin 7fd61b6ca3 feat(aihr): add coach-hint style regeneration buttons to practice turn
- /turn accepts optional regenerate+style (serious/gentle/detailed/professional);
  regenerate short-circuits before rememberTraineeReply — no round advance,
  no trainee reply write, no scoring impact; only same-round coachHint evidence
  is overwritten
- Style instruction injected into existing LLM turn prompt; LLM missing/failed
  returns original hint with explicit message (no fake data)
- Mobile practice page renders 再严肃/再温柔/更细致/更专业 pills under coach
  hints; success replaces text with a style note, failure toasts and keeps
  original; old clients unaffected (fields appended)
2026-07-08 14:52:02 +08:00
admin eeffbaf752 feat(aihr): return explicit no-evidence SOP answers and log knowledge gaps
- Empty/unanswerable SOP queries now return the fixed 「未在已入库 SOP 中找到明确依据」
  response instead of falling back to seed answers (no fake answers)
- Record knowledge_gap (question/category/position/source) whenever search
  yields no evidence — feeds the phase-two open question board
- Extract NO_CLEAR_SOP_EVIDENCE constant shared by digest prompt and checks
2026-07-08 12:22:33 +08:00
admin 4b10b08eeb feat(aihr): close phase two practice pilot gates 2026-07-08 00:51:32 +08:00
admin f5137a2b05 feat(aihr): add open org snapshot sync endpoint
新增 POST /api/aihr/org/sync,从开放组织系统 /open/v1/sync/snapshot
拉取公司/部门/员工快照刷新 aihr_org_snapshot;支持 dryRun 预检、
Bearer/client-credentials 鉴权与可选 HMAC 签名;外部未配置时保留
SQL seed。附接口契约设计 v1 与 API/DEV_SETUP 配置说明。
2026-07-07 11:05:41 +08:00
admin 617847f7e0 feat(aihr): on-demand summary card with infographic bottom sheet
P0-2 按甲方钦定交互落地(反馈#2:显式按钮+小窗+预期等待):新端点
POST /api/knowledge/summary-card 复用检索命中片段调 chat 模型
(temperature=0,30s超时)生成结构化卡{title,steps,objections,scripts,
reminders},无命中/无模型/失败均明确报错可重试,不兜假数据;检索
底层拆出 dbHits() 避免总结卡重复触发轻概要 LLM。移动端:概要卡下
「✨生成总结卡·约10秒生成」按钮→底部弹层(拖条+X+深遮罩),四区块
信息图排版(蓝序号四步法/橙块异议/绿引用话术/✓提醒)对照设计基准,
430px 两列 375px 单列;听一遍(独立 TTS 状态)+开始跟读(问练焊接);
SOP 面板配色统一蓝色系。「保存图片」需 html2canvas 依赖本轮不做。
实测:端点4s返回结构化卡;浏览器弹层与 summary-modal 设计图逐区块
一致。
2026-07-05 03:21:37 +08:00
admin 4c5c343aca feat(aihr): structured digest answer with layered mobile presentation
用户反馈「检索返回一堆文字不便总结」修复。后端:检索命中后新增
RAG 生成环节 searchDigest——chat 模型 temperature=0 把 top5 片段压
成结构化概要(直接回答≤60字+3-6条可执行要点+0-3条注意红线),硬约束
不得编造、片段答不了则明示无依据;模型未配置/超时/解析失败回退
片段原文拼接,15s 超时不拖垮检索。SearchResponse 增 keyPoints/
cautions 字段。移动端:sopPanel 结果改三层——概要卡(回答大字+要点
列表+警示色块)默认唯一展开;「查看依据」折叠原文片段,单条3行截断
点击展开;「听一遍」按钮把概要送 TTS 播报(独立播放状态,关面板即停,
未配 tts 提示降级)。候选人端知识 tab 同套概要卡+依据折叠,消除
原文倾泻。实测:「客服接待基础流程」4s 返回概要+5要点+3红线。
2026-07-04 23:27:08 +08:00
admin 775873e31b chore: demo fixed-code opt-in flag, sop tweaks and doc sync
短信固定验证码增加 aihr.sms.demo-fixed-code-enabled 显式开关(prod
默认仍禁用,演示环境可显式放行);SOP 服务小调整;mobile base 支持
VITE_BASE;作战清单/TechSpec/API_INTEGRATION/docs README 同步。
2026-07-04 16:05:50 +08:00
admin d622c7fb7e feat(aihr): admin dashboard with real aggregates
新增 /api/aihr/dashboard 聚合面试/对练/知识库/组织快照真实数据,
管理端首页从静态卡片改为 API 优先 + fallback。
2026-07-04 16:05:50 +08:00
admin 0539adf612 feat(aihr): persist interview results and candidate material review
面试记录落 aihr_interview_result(GET /records 查询),候选人补充资料
走 OSS + aihr_candidate_material,管理端 AI 面试页可审核通过/驳回;
案例整理服务增强;两张新表纳入 reset 脚本。
2026-07-04 16:05:50 +08:00
admin df20627fbb feat(aihr): keyframe caption and rerank in retrieval pipeline
视频关键帧 vision prompt 从纯 OCR 扩展为「文字+一句画面描述」,纯视觉
信息(动作/场景演示)进入文本向量可检索;检索 RRF 融合后接
category=rerank 模型(bge-reranker-v2-m3)语义重排,未配置或失败保持
RRF 顺序(TechSpec 12.3 最后一环)。BACKLOG 记入 B7 视觉向量检索
(Doubao-embedding-vision,二期)。端到端验证:重传视频片段带画面描述;
检索「首次反馈时限」视频转写片段重排后命中第一。
2026-07-04 01:06:09 +08:00