Required by LearningAnalysisExecutionRouter in AiRuntimeModule. Co-Authored-By: Claude <noreply@anthropic.com>
117 lines
5.8 KiB
TypeScript
117 lines
5.8 KiB
TypeScript
import { Module, forwardRef } from '@nestjs/common';
|
|
import { PrismaModule } from '../../infrastructure/database/prisma.module';
|
|
import { OutboxRepository } from '../../infrastructure/outbox/outbox.repository';
|
|
import { AiRuntimeModule } from '../ai-runtime/ai-runtime.module';
|
|
import { AiModule } from '../ai/ai.module';
|
|
import { AiJobStateMachine } from './ai-job-state-machine';
|
|
import { AiJobLifecycleRepository } from './ai-job-lifecycle.repository';
|
|
import { JobDefinitionRegistry } from './job-definition-registry';
|
|
import { AiJobCreationService } from './ai-job-creation.service';
|
|
import { AiJobExecutionEngineImpl } from './ai-job-execution-engine';
|
|
import { AI_JOB_EXECUTION_ENGINE } from './ai-job-execution-engine.interface';
|
|
import { ProjectionExecutor } from './projection-executor.service';
|
|
import { SyntheticResultProjector } from './synthetic-result-projector';
|
|
import { RESULT_PROJECTORS } from './result-projector.interface';
|
|
import { AiJobController } from './ai-job.controller';
|
|
import { AiJobAdminController } from './ai-job-admin.controller';
|
|
import { AiJobService } from './ai-job.service';
|
|
import { SyntheticRegistrationService } from './synthetic-registration.service';
|
|
import { ActiveRecallRegistrationService } from './active-recall-registration.service';
|
|
import { ActiveRecallSnapshotBuilder } from './active-recall-snapshot-builder';
|
|
import { ActiveRecallExecutor } from './active-recall-executor';
|
|
import {
|
|
ActiveRecallBusinessValidator,
|
|
ActiveRecallReferenceValidator,
|
|
} from './active-recall-validator';
|
|
import { ActiveRecallProjector } from './active-recall-projector';
|
|
import { ActiveRecallExecutionRouter } from './active-recall-execution-router';
|
|
import { ActiveRecallObservabilityService } from './active-recall-observability.service';
|
|
import { FeynmanRegistrationService } from './feynman-registration.service';
|
|
import { FeynmanSnapshotBuilder } from './feynman-snapshot-builder';
|
|
import { FeynmanExecutor } from './feynman-executor';
|
|
import { ReviewCardGenerationRegistrationService } from './review-card-generation-registration.service';
|
|
import { ReviewCardGenerationSnapshotBuilder } from './review-card-generation-snapshot-builder';
|
|
import { ReviewCardGenerationExecutor } from './review-card-generation-executor';
|
|
import { ReviewCardGenerationValidator } from './review-card-generation-validator';
|
|
import { ReviewCardGenerationProjector } from './review-card-generation-projector';
|
|
import { QuizGenerationRegistrationService } from './quiz-generation-registration.service';
|
|
import { QuizGenerationSnapshotBuilder } from './quiz-generation-snapshot-builder';
|
|
import { QuizGenerationExecutor } from './quiz-generation-executor';
|
|
import { QuizGenerationValidator } from './quiz-generation-validator';
|
|
import { QuizGenerationProjector } from './quiz-generation-projector';
|
|
import { LearningAnalysisRegistrationService } from './learning-analysis-registration.service';
|
|
import { LearningAnalysisSnapshotBuilder } from './learning-analysis-snapshot-builder';
|
|
import { LearningAnalysisExecutor } from './learning-analysis-executor';
|
|
import { LearningAnalysisValidator } from './learning-analysis-validator';
|
|
import { LearningAnalysisProjector } from './learning-analysis-projector';
|
|
import {
|
|
FeynmanBusinessValidator,
|
|
FeynmanReferenceValidator,
|
|
} from './feynman-validator';
|
|
import { FeynmanProjector } from './feynman-projector';
|
|
import { FeynmanObservabilityService } from './feynman-observability.service';
|
|
import { AppConfigModule } from '../config/config.module';
|
|
|
|
@Module({
|
|
imports: [PrismaModule, forwardRef(() => AiRuntimeModule), AiModule, AppConfigModule],
|
|
controllers: [AiJobController, AiJobAdminController],
|
|
providers: [
|
|
AiJobStateMachine,
|
|
AiJobLifecycleRepository,
|
|
JobDefinitionRegistry,
|
|
OutboxRepository,
|
|
AiJobCreationService,
|
|
AiJobService,
|
|
AiJobExecutionEngineImpl,
|
|
ProjectionExecutor,
|
|
SyntheticRegistrationService,
|
|
SyntheticResultProjector,
|
|
ActiveRecallRegistrationService,
|
|
ActiveRecallSnapshotBuilder,
|
|
ActiveRecallExecutor,
|
|
ActiveRecallBusinessValidator,
|
|
ActiveRecallReferenceValidator,
|
|
ActiveRecallProjector,
|
|
ActiveRecallExecutionRouter,
|
|
ActiveRecallObservabilityService,
|
|
FeynmanRegistrationService,
|
|
FeynmanSnapshotBuilder,
|
|
FeynmanExecutor,
|
|
FeynmanBusinessValidator,
|
|
FeynmanReferenceValidator,
|
|
FeynmanProjector,
|
|
FeynmanObservabilityService,
|
|
ReviewCardGenerationRegistrationService,
|
|
ReviewCardGenerationSnapshotBuilder,
|
|
ReviewCardGenerationExecutor,
|
|
ReviewCardGenerationValidator,
|
|
ReviewCardGenerationProjector,
|
|
QuizGenerationRegistrationService,
|
|
QuizGenerationSnapshotBuilder,
|
|
QuizGenerationExecutor,
|
|
QuizGenerationValidator,
|
|
QuizGenerationProjector,
|
|
LearningAnalysisRegistrationService,
|
|
LearningAnalysisSnapshotBuilder,
|
|
LearningAnalysisExecutor,
|
|
LearningAnalysisValidator,
|
|
LearningAnalysisProjector,
|
|
{ provide: RESULT_PROJECTORS, useFactory: (synthetic: SyntheticResultProjector, activeRecall: ActiveRecallProjector, feynman: FeynmanProjector, reviewCard: ReviewCardGenerationProjector, quiz: QuizGenerationProjector, learningAnalysis: LearningAnalysisProjector) => [synthetic, activeRecall, feynman, reviewCard, quiz, learningAnalysis], inject: [SyntheticResultProjector, ActiveRecallProjector, FeynmanProjector, ReviewCardGenerationProjector, QuizGenerationProjector, LearningAnalysisProjector] } as any,
|
|
{ provide: AI_JOB_EXECUTION_ENGINE, useExisting: AiJobExecutionEngineImpl },
|
|
],
|
|
exports: [
|
|
AiJobStateMachine,
|
|
AiJobLifecycleRepository,
|
|
JobDefinitionRegistry,
|
|
AiJobCreationService,
|
|
ActiveRecallExecutionRouter,
|
|
ActiveRecallObservabilityService,
|
|
FeynmanSnapshotBuilder,
|
|
FeynmanObservabilityService,
|
|
QuizGenerationSnapshotBuilder,
|
|
LearningAnalysisSnapshotBuilder,
|
|
AI_JOB_EXECUTION_ENGINE,
|
|
],
|
|
})
|
|
export class AiJobModule {}
|