diff --git a/src/modules/ai-job/projection-executor.service.ts b/src/modules/ai-job/projection-executor.service.ts index 83c53aa..49e48a3 100644 --- a/src/modules/ai-job/projection-executor.service.ts +++ b/src/modules/ai-job/projection-executor.service.ts @@ -54,14 +54,16 @@ export class ProjectionExecutor { context: ProjectionContext, ): Promise { if (!projectorKey) { - this.logger.log(`No projectorKey for jobType=${context.job.jobType} — skipping projection`); + this.logger.log(`No projectorKey for jobType=${context.job.jobType} — marking succeeded without projection`); + await this.lifecycleRepo.markSucceeded(context.job.id); return []; } const projector = this.projectorMap.get(projectorKey); if (!projector) { - // Projector 未注册,跳过(不应影响 job 成功) - this.logger.warn(`Projector "${projectorKey}" not registered — skipping projection for job=${context.job.id}`); + // Projector 未注册 — 仍应标记 Job 成功(Engine 的 AI 调用已完成) + this.logger.warn(`Projector "${projectorKey}" not registered — marking succeeded without projection for job=${context.job.id}`); + await this.lifecycleRepo.markSucceeded(context.job.id); return []; }