- 新增 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%
23 lines
1020 B
Python
23 lines
1020 B
Python
from __future__ import annotations
|
|
|
|
from sqlalchemy import Integer, Text
|
|
from sqlalchemy.orm import Mapped, mapped_column
|
|
|
|
from app.db.base import Base
|
|
|
|
|
|
class AppMetadata(Base):
|
|
__tablename__ = "app_metadata"
|
|
|
|
app_metadata_id: Mapped[str] = mapped_column(Text, primary_key=True)
|
|
app_code: Mapped[str] = mapped_column(Text, nullable=False, index=True)
|
|
env: Mapped[str] = mapped_column(Text, nullable=False, index=True)
|
|
process_name: Mapped[str | None] = mapped_column(Text, nullable=True)
|
|
command_contains: Mapped[str | None] = mapped_column(Text, nullable=True)
|
|
health_check_url: Mapped[str | None] = mapped_column(Text, nullable=True)
|
|
log_path: Mapped[str | None] = mapped_column(Text, nullable=True)
|
|
listen_port: Mapped[int | None] = mapped_column(Integer, nullable=True)
|
|
startup_keyword: Mapped[str | None] = mapped_column(Text, nullable=True)
|
|
created_at: Mapped[str] = mapped_column(Text, nullable=False)
|
|
updated_at: Mapped[str] = mapped_column(Text, nullable=False)
|