feat: v0.1.1 迭代——人设外键重构、Chat UI优化、意识节点防幻觉、日志双视图
1. 人设外键重构:persona_template 成为 system_prompt 唯一权威来源, agent/系统节点通过 persona_id FK 引用,含数据迁移脚本 2. Chat UI:去掉底部AI提示、加号改为弹出菜单、新建对话乐观跳转 3. 意识节点:无可用worker时禁止编造agent_id,只能自行完成或拒绝 4. 日志页面:双tab布局(系统日志 + 工作流日志列表选择) 5. 其他:SSE流式聊天、对话删除/重命名、standalone模式修复 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -171,6 +171,11 @@ class PostgresDatabase:
|
||||
await self.ready_event.wait()
|
||||
return await self._provider_database.delete_provider(provider_id)
|
||||
|
||||
async def delete_provider_by_title(self, provider_title: str):
|
||||
"""按 provider_title 删除模型 Provider 记录。"""
|
||||
await self.ready_event.wait()
|
||||
return await self._provider_database.delete_provider_by_title(provider_title)
|
||||
|
||||
async def update_provider_db(self, provider_id: str, **kwargs):
|
||||
"""部分更新指定 Provider 的字段。"""
|
||||
await self.ready_event.wait()
|
||||
@@ -183,13 +188,13 @@ class PostgresDatabase:
|
||||
provider_title: str,
|
||||
model_id: str,
|
||||
tools: list[str] = None,
|
||||
custom_system_prompt: str = None,
|
||||
persona_id: str = None,
|
||||
display_name: str = None,
|
||||
):
|
||||
"""插入或更新某个系统节点(如 consciousness/regulatory)的模型配置。"""
|
||||
await self.ready_event.wait()
|
||||
return await self._system_node_database.upsert_system_node_config(
|
||||
node_name, provider_title, model_id, tools, custom_system_prompt, display_name
|
||||
node_name, provider_title, model_id, tools, persona_id, display_name
|
||||
)
|
||||
|
||||
async def get_all_system_node_configs(self):
|
||||
@@ -197,6 +202,11 @@ class PostgresDatabase:
|
||||
await self.ready_event.wait()
|
||||
return await self._system_node_database.get_all_system_node_configs()
|
||||
|
||||
async def get_system_node_config(self, node_name: str):
|
||||
"""按 node_name 取出单个系统节点的模型配置。"""
|
||||
await self.ready_event.wait()
|
||||
return await self._system_node_database.get_system_node_config(node_name)
|
||||
|
||||
# Individual Database Methods
|
||||
async def add_worker_individual(self, **kwargs):
|
||||
"""登记一个新的 Worker Individual 配置。"""
|
||||
@@ -306,6 +316,16 @@ class PostgresDatabase:
|
||||
await self.ready_event.wait()
|
||||
return await self._chat_history_database.list_chat_messages(chat_id)
|
||||
|
||||
async def get_chat_session(self, chat_id: str):
|
||||
"""按 chat_id 取出单个聊天会话。"""
|
||||
await self.ready_event.wait()
|
||||
return await self._chat_history_database.get_chat_session(chat_id)
|
||||
|
||||
async def delete_chat_session(self, chat_id: str):
|
||||
"""删除聊天会话及其所有消息。"""
|
||||
await self.ready_event.wait()
|
||||
return await self._chat_history_database.delete_chat_session(chat_id)
|
||||
|
||||
# MCP Server Database Methods
|
||||
async def upsert_mcp_server(self, server_id: str, config: dict):
|
||||
"""插入或更新一条 MCP 服务器配置;env 中敏感字段自动加密。"""
|
||||
@@ -423,9 +443,9 @@ class PostgresDatabase:
|
||||
await self.ready_event.wait()
|
||||
return await self._persona_template_database.get_template(template_id)
|
||||
|
||||
async def list_templates(self, owner_id: str = None, include_builtin: bool = True):
|
||||
async def list_templates(self, owner_id: str = None, **kwargs):
|
||||
await self.ready_event.wait()
|
||||
return await self._persona_template_database.list_templates(owner_id, include_builtin)
|
||||
return await self._persona_template_database.list_templates(owner_id=owner_id)
|
||||
|
||||
async def update_template(self, template_id: str, **kwargs):
|
||||
await self.ready_event.wait()
|
||||
|
||||
Reference in New Issue
Block a user