feat(gateway): wire adapter factories + DI tokens alongside existing providers

Co-Authored-By: Claude Opus 4.6 <[email protected]>
This commit is contained in:
2026-04-02 20:44:11 -05:00
co-authored by Claude Opus 4.6
parent 27b1898ec6
commit e128a7a322
5 changed files with 45 additions and 7 deletions
+8 -2
View File
@@ -1,11 +1,13 @@
import { Global, Module } from '@nestjs/common';
import { createMemory, type Memory } from '@mosaic/memory';
import { createMemory, type Memory, createMemoryAdapter, type MemoryAdapter } from '@mosaic/memory';
import type { Db } from '@mosaic/db';
import { DB } from '../database/database.module.js';
import { MEMORY } from './memory.tokens.js';
import { MemoryController } from './memory.controller.js';
import { EmbeddingService } from './embedding.service.js';
export const MEMORY_ADAPTER = 'MEMORY_ADAPTER';
@Global()
@Module({
providers: [
@@ -14,9 +16,13 @@ import { EmbeddingService } from './embedding.service.js';
useFactory: (db: Db): Memory => createMemory(db),
inject: [DB],
},
{
provide: MEMORY_ADAPTER,
useFactory: (): MemoryAdapter => createMemoryAdapter({ type: 'pgvector' }),
},
EmbeddingService,
],
controllers: [MemoryController],
exports: [MEMORY, EmbeddingService],
exports: [MEMORY, MEMORY_ADAPTER, EmbeddingService],
})
export class MemoryModule {}