UNPKG

@wearesage/schema

Version:

A flexible schema definition and validation system for TypeScript with multi-database support

72 lines (63 loc) 2.31 kB
import "reflect-metadata"; import { universalEntityService } from './services/index'; import { Message } from '../../../api/src/entities/Message'; import { Conversation } from '../../../api/src/entities/Conversation'; import { User } from '../../../api/src/entities/User'; import { Space } from '../../../api/src/entities/Space'; // Register entities universalEntityService.registerEntities([Message, Conversation, User, Space]); async function debugRelationships() { console.log('🔍 DEBUG: Testing relationship creation...'); // Create system context const systemContext = { user: { id: 'system', username: 'system', email: 'system@wearesage.com', role: 999, permissions: ['admin', 'user'] }, requestId: 'debug-' + Date.now() }; try { // 1. Create a user console.log('1. Creating user...'); const user = await universalEntityService.create(User, { name: 'Test User', email: 'test@example.com', status: 'active' }, systemContext); console.log('✅ User created:', user); // 2. Create a conversation console.log('2. Creating conversation...'); const conversation = await universalEntityService.create(Conversation, { name: 'Test Conversation', spaceType: 'chat', visibility: 'private', ownedByType: 'user', ownedById: user.id, model: 'test-model', temperature: 0.7, conversationType: 'chat', status: 'active' }, systemContext); console.log('✅ Conversation created:', conversation); // 3. Create a message with conversation relationship console.log('3. Creating message with conversation relationship...'); const message = await universalEntityService.create(Message, { content: 'Hello, this is a test message', role: 'user', messageIndex: 0, conversation: conversation // This is the key relationship }, systemContext); console.log('✅ Message created:', message); console.log('🎉 All entities created successfully with relationships!'); } catch (error) { console.error('💥 Error during relationship creation:', error); console.error('Error details:', { message: error.message, stack: error.stack }); } } debugRelationships().catch(console.error);