Commit Graph
90 Commits
Author SHA1 Message Date
admin f2a21099d5 fix(frontend): export promotion evidence csv 2026-07-09 16:32:27 +08:00
admin 7de6fa9969 fix(mobile): load supervisor review audio with auth 2026-07-09 16:19:11 +08:00
admin f1a975b5f6 fix(frontend): play review audio in calibration page 2026-07-09 16:13:29 +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 ba8c35904e fix(mobile): normalize sop answer step labels 2026-07-09 15:28:14 +08:00
admin 2b1f206ca0 fix(mobile): default missing level to unrated 2026-07-09 15:17:38 +08:00
admin aa547ef365 fix(mobile): avoid seeded empty competency 2026-07-09 15:15:14 +08:00
admin 25d3d1b8d5 test(demo): check mobile h5 shell 2026-07-09 14:56:31 +08:00
admin 54b2b0dbbc chore(dev): run mobile uni through portless 2026-07-09 14:52:34 +08:00
admin 1c47e250c4 fix(mobile): quiet h5 validation noise 2026-07-09 14:46:33 +08:00
admin 68c4b8547e fix(aihr): return pilot export as csv 2026-07-09 14:38:32 +08:00
admin 5e0a5c7af7 docs: align phase plan with uni mobile app 2026-07-09 14:24:51 +08:00
admin eae25e4a54 fix(mobile): tidy user page text layout 2026-07-09 14:22:32 +08:00
admin ac9f640f7f fix(mobile): constrain h5 shell width 2026-07-09 14:15:24 +08:00
admin e60520b7aa fix(mobile): proxy review audio downloads 2026-07-09 13:54:19 +08:00
admin 4ef388873b feat(mobile): add voice transcription to practice 2026-07-09 13:41:48 +08:00
admin 04405b5e11 fix(mobile): reset page scroll on route entry 2026-07-09 13:34:24 +08:00
admin f517cbd2b5 fix(mobile): carry today task into practice 2026-07-09 13:28:52 +08:00
admin dd13936ca9 fix(mobile): show real assignments on today page 2026-07-09 13:24: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 b2ba54b2b3 fix(dev): verify demo questions via portless api 2026-07-09 13:02:09 +08:00
admin 801bc26de8 fix(dev): run demo check through portless 2026-07-09 12:58:29 +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 45d06f56cd fix(dev): proxy admin through portless api 2026-07-09 12:33:30 +08:00
admin a83fb53ecd feat(aihr): scope supervisor practice data 2026-07-09 11:37:33 +08:00
admin 53698e7832 feat(aihr): clarify org snapshot field usage 2026-07-09 11:03:47 +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 e4070c8b8c refactor(mobile): extract types, static data, utils, styles from App.vue
Pure moves only — zero behavior change, template untouched:
- types.ts (447), utils.ts (51), data/{auth,navigation,practice,mentor,
  home,supervisor,icons}.ts, styles/app.css (4690, still global non-scoped
  via <style src>)
- App.vue 9006 → 3559 lines; 98 moved declarations verbatim except
  export/import syntax
- Built CSS hash identical to pre-refactor (byte-equal styles); reactive
  state, computed, watchers, lifecycle and templates all stay in App.vue
- Component-level split deferred to phase two after 2026-07-10 Alpha
2026-07-08 21:07:45 +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 f40d2fcc6e docs: archive MVP design-qa record and refresh doc indexes
- Move root design-qa.md → docs/archive/2026-07-mvp-delivery/ (MVP-phase
  screenshot QA, concluded passed; register in archive README)
- Rename 20260708 UUID screenshot to descriptive name
- Index the 2026-07-08 integration plan in README, docs/README, AGENTS.md
2026-07-08 12:23:03 +08:00
admin 13c7bdc082 docs: adopt 2026-07-08 product decisions — 学练问报 integration plan
- Add docs/20260708/: integration plan v1.2 (product definition vs launch
  demo split into four parts), meeting notes, customer 'third edition' docx,
  WeChat follow-up screenshot
- Decisions: directed mentorship rejected → open question board; 学 module
  upgraded to courses/no-fast-forward video/min reading time/irregular exams;
  direct-answer SOP format; credit-gated offline promotion exam
- Customer replies on three open items: multi-app jump deferred (D6 stays),
  leaderboard kept as opt-in switch (default off), manager evaluation gated
  by org-structure permissions
- Master plan → v0.3 (§4.4 open question board + permission-gated evaluation,
  §4.5 learning module, §8 resolved items); practice plan → v0.8 (sop_answer
  template, style-regen buttons, answer thumbs up/down, credit rules in M4)
2026-07-08 12:22:47 +08:00
admin e8d90609c1 fix(mobile): harden stored auth credentials and login response validation
- Treat 'undefined'/'null' localStorage values as absent; clear incomplete
  token/clientId pairs and prompt re-login instead of sending broken headers
- Gate authenticated UI on both token and clientId via isAuthenticated
- Reject login responses missing access_token or client_id
2026-07-08 12:22:33 +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 2bdf527e26 feat(aihr): add prompt template management UI 2026-07-08 08:42:06 +08:00
admin 4b10b08eeb feat(aihr): close phase two practice pilot gates 2026-07-08 00:51:32 +08:00
admin 1d14497bc3 docs: sync entry docs to phased plan structure
AGENTS.md/README.md 项目定位并入立项会重定位(银城员工端 APP、
三阶段边界、管家=生活顾问);docs/README.md 索引补总纲、立项会
纪要与组织同步接口设计;组织快照口径更新为可外部同步。
2026-07-07 11:06:21 +08:00
admin 9ecf4fdfc3 docs: adopt 2026-07-07 kickoff — phased master plan + practice plan v0.7
新增《银城员工端APP分阶段实施总纲》v0.2:三阶段(陪练→大喇叭+
知识学习平台→北森对接)、身份三轴模型与防遗漏分发策略;归档立项
会纪要。二期计划 v0.2→v0.7:客户反馈(传帮带/成长路径/提示词模板/
总结卡快速修复)与立项会增量(时间锚点/收费场景权重/每日三题/
knowledge_gap 钩子);确认管家=生活顾问、APP 形态=H5 套壳。BRD
同步传帮带与评级证据包口径。
2026-07-07 11:06:05 +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
adminandGitHub f84f5c6530 Merge pull request #2 from let5sne/codex/docs-phase2-routing-sync-20260707
Sync phase 2 planning document routing
2026-07-07 00:43:03 +08:00
admin b2b31f292b docs: sync phase 2 planning references 2026-07-07 00:41:18 +08:00
adminandGitHub 956cc0f908 Merge pull request #1 from let5sne/codex/h5-scenario-redesign-20260706
Align H5 scenario training design
2026-07-07 00:34:44 +08:00
admin 08266860f2 fix(mobile): sync role state on route changes 2026-07-07 00:30:35 +08:00