Developer
d15e881591
test: 全量回归测试52项覆盖未触及路径 + 完善P2字段映射
...
全量回归测试(test-full-coverage.mjs):
- A. 角色权限深度测试(新endpoint权限边界/跨用户隔离)
- B. 边界值测试(模板字段极值/角色名/密码边界)
- C. 异常路径测试(状态链/冲突/不存在Session/已删模板)
- D. 缺陷回归测试(系统角色保护/API Key / token即时变更/幂等)
- E. 跨功能交互测试(权限+考核/模板+角色/异常状态)
修复:
- assessment.service.ts templateData P2字段显式映射确认
测试结果: 52/52 ✅ + 系统测试 142/142 ✅ + P2专项 20/20 ✅
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-09 15:49:09 +08:00
Developer
46a10ba091
P2全部完成: 尝试限制/预约时段/题目回顾/随机排序
...
后端:
- assessment-template entity: attemptLimit/scheduledStart/End/reviewMode/shuffleQuestions
- DTO 更新: 新增 P2 字段验证
- startSession: 尝试次数检查、预约时段检查、题目随机排序
- getSessionState: reviewMode 控制答案可见性
- 新增 GET /assessment/:id/review 回顾端点
前端:
- AssessmentTemplateManager: 新增尝试次数/答题回顾/题目排序/预约时段配置
- AssessmentView: 答题回顾按钮(完成页)+提交确认弹窗+标记回头功能
- types.ts: 新增 P2 字段类型
- assessmentService: 新增 getReview 方法
- 进度导航点: 可视化题序+标记状态
测试 20项全部通过 + 系统测试 142项全部通过 ✅
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-09 14:57:32 +08:00
Developer
6d9acd7252
fix: MC options display, question selection, timeout handling, and grading prompts
2026-06-03 20:58:19 +08:00
Developer
6e569ff478
fix: skip content check when bank questions available, early generator return
2026-05-23 22:32:51 +08:00
Developer
b15e821252
feat: enriched certificate with template name, dimension scores, question details + Modal UI
...
- generateCertificate: return templateName, questionDetails, dimensionScores
- Frontend: replace alert() with certificate Modal showing level, scores, dimensions, questions
- Status label: change from '已验证' to '合格'
2026-05-21 15:42:59 +08:00
Developer
990b8c7b83
fix: forward passed flag in SSE final events
2026-05-21 15:24:36 +08:00
Developer
f8df92c36b
fix: forward finalScore in submitAnswerStream final event
2026-05-21 15:19:10 +08:00
Developer
51f2a41cc3
fix: determineLevel uses 0-10 scale thresholds instead of 0-100
2026-05-21 15:07:23 +08:00
Developer
02f4ab23f7
feat: LLM-generated adaptive follow-up questions
...
- Grader: LLM outputs follow_up_question targeting uncovered keyPoints
- Remove static followupHints usage in grading flow
- maxFollowUps sourced from question.maxFollowUps (hints.length)
- Clean answerKey: remove followupHints field
- Three-language prompt update with examples and bad examples
- Grader spec: add follow_up_question to mock responses
2026-05-21 14:18:14 +08:00
Developer
24ffc028e2
fix: shuffle choice options per session + clean followup hints
...
- Options shuffled with correctAnswer remapped at session creation
- Followup hints strip conditional prefix (如果只说了XX,追问:)
2026-05-21 12:42:52 +08:00
Developer
54762ca299
fix: passingScore scaling and dimensions propagation
...
- Frontend: divide by 10 on load, multiply by 10 on send (UI:0-10, DB:0-100)
- Backend: include template dimensions in session templateData snapshot
2026-05-21 11:07:07 +08:00
Developer
35b1c6c37d
feat: judgment-anchored grading and per-question results
...
- Grader: inject judgment as pass criteria anchor in LLM prompt
- Grader: use followupHints for follow-up direction (not generic text)
- Grader: follow-up limit from followupHints.length instead of hardcoded 2
- Session: correctAnswer/judgment stored in questions, stripped during assessment
- Frontend: per-question results panel with choice ✅ /❌ + judgment display
2026-05-21 10:18:15 +08:00
Developer
3993099907
feat: end-to-end choice question support in assessment pipeline
...
- Data pathway: flow options through questions, answerKey in graph state
- Interviewer: format MULTIPLE_CHOICE with A/B/C/D options
- Grader: instant choice scoring (zero LLM), compare correctAnswer
- AssessmentView: render choice buttons vs textarea based on questionType
- Security: sanitizeStateForClient strips correctAnswer/judgment/answerKey
- Bank detection: check PUBLISHED items (not PUBLISHED bank status)
- Batch UI: select all / batch approve / batch reject on detail view
2026-05-21 10:06:33 +08:00
Developer
83483d8117
F1-F10: audit fixes (dimension normalize, passingScore scale, DB defaults, onDelete, item status filter, timeout event type, userId privacy) + generator.node.ts strict prompt rules (anti-hallucination)
2026-05-20 11:13:37 +08:00
Developer
29bac74b58
M3: console.log -> Logger + UI redesign (QuestionBank) + S7/A9/A10/A11/U11 bug fixes + #1/#2/#3/#4 enhancements + i18n for QuestionBank pages
2026-05-19 16:57:45 +08:00
Developer
5b5f14674d
fix: minor issues from code review
...
(M1) DTO: @IsObject({ each: true }) on dimensions array
(M2) audit log: add missing tenantId in submitAnswer
(M3) console.log -> this.logger in controller + service
2026-05-19 10:22:18 +08:00
Developer
82a9e75842
fix: code review — 7 issues resolved
...
(C1) Add dimensionScores/radarData/passed columns to AssessmentSession
(C2) Mock DataSource in service.spec.ts + app.e2e-spec.ts
(C3) Mock AuditLogService in controller.spec.ts
(C4) Rewrite deleteSession tests for dataSource.transaction
(I1) batchDeleteSessions uses transaction with certificate cleanup
(I2) extractDimensionScores reads from session property
(I3/I5) PDF generator supports multi-page + newline splitting
(I4) findOne inside transaction uses deleteCondition
2026-05-19 10:06:30 +08:00
Developer
7f8e7214b3
P3-02-03-04: audit log, batch ops, transactions
...
P3-02: audit-log.entity + service, manual logging in controller
(startSession, submitAnswer, deleteSession, review, forceEnd)
P3-03: POST batch-delete, POST batch-export endpoints + service methods
P3-04: DataSource.transaction for deleteSession + reviewAssessment,
graph state cleanup on session delete
2026-05-19 09:52:31 +08:00
Developer
0b0a060967
fix: 全部TS错误修复(25->0) + 证书API 500修复 + i18n缺失key补全 + 类型定义修正
...
- 证书API 500修复: AssessmentCertificate实体注册到app.module.ts
- 前端TS错误25个清零: i18n key 17个, 类型定义8个
- i18n补全: 17个缺失key添加到zh/en/ja
- KnowledgeFile类型: 添加title, content字段
- importService: 改用apiClient.request替代raw fetch
- ModeSelector: 移除jsx prop
- questionBankService: .ok -> .status >= 400
- NotebookDetailView: .filter -> .items.filter
- ImportTasksDrawer: tasks.items提取
- API端点审计: 16/16通过
- 数据库Schema审计: 25表288列一致
- AGENTS.md更新
2026-05-18 08:30:59 +08:00
Developer
7ee13b3499
fix: 整合验证修复9个代码缺口 - 历史限制3条、证书公开端点、题库默认DRAFT状态、Admin硬编码
2026-05-15 10:09:27 +08:00
Developer
186423d172
fix: 修复10个TS类型错误 - ForbiddenException导入、sort字段、user.name、question.content、lines类型、status比较
2026-05-15 08:22:10 +08:00
Developer
368eddfd75
fix: 代码整合修复 - Entity类型、题库生成、评估流程等14项修复
2026-05-14 09:55:07 +08:00
Developer
176fe2270f
feat: 添加历史管理和用户评估记录API
...
- GET /assessment/history: 获取用户评估历史(保留最近100条)
- cleanupOldSessions: 保持最多3条记录(在创建新session时自动清理)
- 复查记录保留完整历史(reviewHistory)
2026-05-13 23:12:03 +08:00
Developer
649844a657
feat: 添加复查功能和批量审核操作
...
- 复查功能: PUT /assessment/:id/review
* 支持调整最终总分
* 记录复查历史(reviewHistory)
* 保存原始分数(originalScore)
* 保留复查人、复查时间、复查意见
- 批量审核: POST /question-banks/:bankId/items/batch-review
* 支持批量通过/拒绝题目
* 可添加审核意见
- AssessmentSession实体: 添加复查相关字段
2026-05-13 23:06:40 +08:00
Developer
8686d101cd
Initial commit: AuraK人才测评系统基础框架
...
## 已实现功能
- 题库管理后端API完整实现
- 模板管理页面(Settings-测评模板)
- 评估统计页面
- 人才测评页面(AssessmentView)
- QuestionBank前端服务层
## 技术栈
- 后端: Node.js + NestJS + TypeORM
- 前端: React + TypeScript
- 容器化: Docker Compose
## 已知待完善
- 题库列表页缺少删除按钮
- 题库详情页未实现(题目管理/AI生成/审核)
2026-05-13 21:32:41 +08:00
Developer
0a9588abb7
feat: implement QuestionBank CRUD with pagination and template query
...
- Add pagination support to findAll (page, limit query params)
- Add findByTemplateId method to service
- Add GET /by-template/:templateId endpoint to controller
- Service already includes CRUD for QuestionBank and QuestionBankItem
2026-04-23 17:19:11 +08:00