mirror of
https://github.com/countbot-ai/CountBot.git
synced 2026-09-14 20:46:47 +08:00
a14e547fde
主要更新: - 多智能体协作系统(Pipeline/Graph/Council 三种模式) - 定时任务增强(一次性任务、重试机制、批量操作) - 技能系统升级(可视化配置管理、Schema 验证) - 新增多个国内 AI 厂商 Coding Plan 支持 - UI/UX 全面优化,深度优化界面稳定性 - 修复大量已知问题 详见: docs/releases/v0.3.0.md
31 lines
1.2 KiB
Python
31 lines
1.2 KiB
Python
"""后台任务模型"""
|
|
|
|
from datetime import datetime
|
|
from typing import Optional
|
|
|
|
from sqlalchemy import DateTime, Index, Integer, String, Text
|
|
from sqlalchemy.orm import Mapped, mapped_column
|
|
|
|
from backend.database import Base
|
|
|
|
|
|
class Task(Base):
|
|
"""后台任务表"""
|
|
|
|
__tablename__ = "tasks"
|
|
|
|
id: Mapped[str] = mapped_column(String, primary_key=True)
|
|
label: Mapped[str] = mapped_column(String, nullable=False)
|
|
message: Mapped[str] = mapped_column(Text, nullable=False)
|
|
session_id: Mapped[Optional[str]] = mapped_column(String, nullable=True)
|
|
status: Mapped[str] = mapped_column(String, nullable=False)
|
|
progress: Mapped[int] = mapped_column(Integer, default=0)
|
|
result: Mapped[Optional[str]] = mapped_column(Text, nullable=True)
|
|
error: Mapped[Optional[str]] = mapped_column(Text, nullable=True)
|
|
tool_call_records: Mapped[Optional[str]] = mapped_column(Text, nullable=True) # JSON 序列化
|
|
created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.utcnow)
|
|
started_at: Mapped[Optional[datetime]] = mapped_column(DateTime, nullable=True)
|
|
completed_at: Mapped[Optional[datetime]] = mapped_column(DateTime, nullable=True)
|
|
|
|
__table_args__ = (Index("idx_tasks_status", "status", "created_at"),)
|