2521690 ce299cbb18 feat: 增加 Agent 演示入口与 app_metadata 驱动验证链路
- 新增 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%
2026-04-09 14:10:13 +08:00

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