- 新增 app_metadata 模型、仓储与服务 - 将默认 edge 验证步骤改为由 app_metadata 驱动生成 - 新增 chat_session / chat_message 会话层模型与 chat service - 新增 demo chat API,支持会话创建、消息发送、任务确认 - 新增最小 Web Demo 页面,形成聊天式演示入口 - 增强任务报告,补充 audit_summary 与更细粒度 task_metrics - 增强 edge-agent 执行器:tcp_probe、日志时间范围过滤、进程指标与更灵活健康检查 - 更新 README 与当前进度总结,MVP 进度推进到约 94%
60 lines
1.3 KiB
Python
60 lines
1.3 KiB
Python
from __future__ import annotations
|
|
|
|
from typing import Any
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
from app.schemas.task import ParsedIntent
|
|
|
|
|
|
class ChatSessionCreateRequest(BaseModel):
|
|
tenant_id: str = "tenant-demo"
|
|
channel: str = "WEB"
|
|
|
|
|
|
class ChatMessageItem(BaseModel):
|
|
message_id: str
|
|
role: str
|
|
content: str
|
|
message_type: str
|
|
task_id: str | None = None
|
|
created_at: str
|
|
|
|
|
|
class ChatSessionData(BaseModel):
|
|
session_id: str
|
|
tenant_id: str
|
|
channel: str
|
|
title: str | None = None
|
|
last_task_id: str | None = None
|
|
sample_prompts: list[str] = Field(default_factory=list)
|
|
messages: list[ChatMessageItem] = Field(default_factory=list)
|
|
|
|
|
|
class ChatSendMessageRequest(BaseModel):
|
|
content: str
|
|
context: dict[str, Any] = Field(default_factory=dict)
|
|
|
|
|
|
class ChatSendMessageData(BaseModel):
|
|
session_id: str
|
|
task_id: str
|
|
task_status: str
|
|
parsed_intent: ParsedIntent
|
|
missing_slots: list[str]
|
|
risk_level: str
|
|
next_action: str
|
|
assistant_message: ChatMessageItem
|
|
|
|
|
|
class ChatConfirmTaskRequest(BaseModel):
|
|
comment: str | None = None
|
|
|
|
|
|
class ChatConfirmTaskData(BaseModel):
|
|
session_id: str
|
|
task_id: str
|
|
task_status: str
|
|
approval_status: str
|
|
assistant_message: ChatMessageItem
|