feat: knowledge-base code review fixes + question bank cleanup

- 🔴 searchKnowledge: 移除随机mock向量,使用真实embedding
- 🔴 userId: 改为NOT NULL,清理遗留调试注释
- 🟡 文件移动事务安全:先移文件再创DB记录
- 🟡 Ollama嵌入并行化:串行→Promise.allSettled
- 🟡 三处重复降级代码提取为processChunksOneByOne(~200行→30行)
- 🟡 Chunk换算根据CJK比例动态调整(英4x/中2x/日2x)
- 🟡 findAll添加分页参数
- 🔵 清理冗余动态import、findByIds→findBy、日文标点补充
- chore: question-bank cleanup (删除47道概念/重复/ADV题)
- chore: qa-assessment-flow (Phase 1+2全量测试14项通过)
- fix: shuffleArray接收返回值(三处调用点)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Developer
2026-06-25 11:27:16 +08:00
parent 6599088e77
commit 5c974c50de
9 changed files with 914 additions and 245 deletions
@@ -40,8 +40,17 @@ export class KnowledgeBaseController {
@Get()
@UseGuards(CombinedAuthGuard)
async findAll(@Request() req): Promise<KnowledgeBase[]> {
return this.knowledgeBaseService.findAll(req.user.id, req.user.tenantId);
async findAll(
@Request() req,
@Query('page') page?: number,
@Query('limit') limit?: number,
) {
return this.knowledgeBaseService.findAll(
req.user.id,
req.user.tenantId,
page ? Number(page) : undefined,
limit ? Number(limit) : undefined,
);
}
@Get('stats')