fix(prompt-optimizer): 修复数据模型和业务逻辑问题

- 修复PromptOptimizerSessionHistory模型中session_id外键关系错误
- 统一会话ID的使用逻辑,区分内部ID和外部session_id
- 修复服务层create_update_model_config方法参数不匹配问题
- 优化会话历史查询逻辑,确保正确的数据关联
- 修复消息创建时的会话验证和ID映射问题
- 改进Repository层的类型注解准确性
This commit is contained in:
mengyonghao
2025-12-17 17:20:05 +08:00
parent 07273e4c03
commit 3950b718cd
4 changed files with 25 additions and 11 deletions

View File

@@ -86,12 +86,10 @@ class PromptOptimizerSession(Base):
Columns:
id (UUID):
Primary key. Internal unique identifier for the session record.
Public-facing session identifier used to group conversation history.
tenant_id (UUID):
Foreign key referencing `tenants.id`.
Identifies the tenant under which the session is created.
session_id (UUID):
Public-facing session identifier used to group conversation history.
user_id (UUID):
Foreign key referencing `users.id`.
Identifies the user who initiated the session.
@@ -105,10 +103,9 @@ class PromptOptimizerSession(Base):
"""
__tablename__ = "prompt_opt_session_list"
id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4, index=True)
id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4, index=True, comment="Session ID")
tenant_id = Column(UUID(as_uuid=True), ForeignKey("tenants.id"), nullable=False, comment="Tenant ID")
# app_id = Column(UUID(as_uuid=True), ForeignKey("apps.id"), nullable=False, comment="Application ID")
session_id = Column(UUID(as_uuid=True), nullable=False, comment="Session ID")
user_id = Column(UUID(as_uuid=True), ForeignKey("users.id"), nullable=False, comment="User ID")
created_at = Column(DateTime, default=datetime.datetime.now, comment="Creation Time", index=True)