From a1f4f7ba0ecd3a041bebf7508194736edb67a709 Mon Sep 17 00:00:00 2001 From: hailin Date: Sun, 25 Jan 2026 02:09:04 -0800 Subject: [PATCH] fix(orm): add explicit types for all ConversationORM and MessageORM fields Complete fix for all @Column decorators missing explicit type: ## ConversationORM - status: varchar(20) - category: varchar(50) - messageCount: int - userMessageCount: int - assistantMessageCount: int - totalInputTokens: int - totalOutputTokens: int - hasConverted: boolean - consultingStage: varchar(30) - conversionPath: varchar(30) ## MessageORM - role: varchar(20) - type: varchar(30) Co-Authored-By: Claude Opus 4.5 --- .../postgres/entities/conversation.orm.ts | 18 ++++++++++-------- .../database/postgres/entities/message.orm.ts | 4 ++-- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/packages/services/conversation-service/src/infrastructure/database/postgres/entities/conversation.orm.ts b/packages/services/conversation-service/src/infrastructure/database/postgres/entities/conversation.orm.ts index 9b39d11..ecbc3bd 100644 --- a/packages/services/conversation-service/src/infrastructure/database/postgres/entities/conversation.orm.ts +++ b/packages/services/conversation-service/src/infrastructure/database/postgres/entities/conversation.orm.ts @@ -25,7 +25,7 @@ export class ConversationORM { @Column({ name: 'user_id', type: 'uuid', nullable: true }) userId: string; - @Column({ length: 20, default: 'ACTIVE' }) + @Column({ type: 'varchar', length: 20, default: 'ACTIVE' }) status: ConversationStatusType; @Column({ type: 'varchar', length: 255, nullable: true }) @@ -34,22 +34,22 @@ export class ConversationORM { @Column({ type: 'text', nullable: true }) summary: string | null; - @Column({ length: 50, nullable: true }) + @Column({ type: 'varchar', length: 50, nullable: true }) category: string | null; - @Column({ name: 'message_count', default: 0 }) + @Column({ name: 'message_count', type: 'int', default: 0 }) messageCount: number; - @Column({ name: 'user_message_count', default: 0 }) + @Column({ name: 'user_message_count', type: 'int', default: 0 }) userMessageCount: number; - @Column({ name: 'assistant_message_count', default: 0 }) + @Column({ name: 'assistant_message_count', type: 'int', default: 0 }) assistantMessageCount: number; - @Column({ name: 'total_input_tokens', default: 0 }) + @Column({ name: 'total_input_tokens', type: 'int', default: 0 }) totalInputTokens: number; - @Column({ name: 'total_output_tokens', default: 0 }) + @Column({ name: 'total_output_tokens', type: 'int', default: 0 }) totalOutputTokens: number; @Column({ type: 'smallint', nullable: true }) @@ -58,11 +58,12 @@ export class ConversationORM { @Column({ type: 'text', nullable: true }) feedback: string | null; - @Column({ name: 'has_converted', default: false }) + @Column({ name: 'has_converted', type: 'boolean', default: false }) hasConverted: boolean; @Column({ name: 'consulting_stage', + type: 'varchar', length: 30, default: 'greeting', nullable: true, @@ -93,6 +94,7 @@ export class ConversationORM { @Column({ name: 'conversion_path', + type: 'varchar', length: 30, nullable: true, }) diff --git a/packages/services/conversation-service/src/infrastructure/database/postgres/entities/message.orm.ts b/packages/services/conversation-service/src/infrastructure/database/postgres/entities/message.orm.ts index c29c87b..4315dcb 100644 --- a/packages/services/conversation-service/src/infrastructure/database/postgres/entities/message.orm.ts +++ b/packages/services/conversation-service/src/infrastructure/database/postgres/entities/message.orm.ts @@ -24,10 +24,10 @@ export class MessageORM { @Column({ name: 'conversation_id', type: 'uuid', nullable: true }) conversationId: string; - @Column({ length: 20 }) + @Column({ type: 'varchar', length: 20 }) role: MessageRoleType; - @Column({ length: 30, default: 'TEXT' }) + @Column({ type: 'varchar', length: 30, default: 'TEXT' }) type: MessageTypeType; @Column({ type: 'text' })