DB - task_llm_assignments

abstract

Maps each AI task type (e.g., market_analysis, vision, execution_decision) to a specific LLM provider and model — allowing different tasks to use different models optimized for cost vs. capability.

Table Info

PropertyValue
Table Nametask_llm_assignments
SQLAlchemy Modelbackend/db/models.py :: TaskLLMAssignment
Pydantic Schemabackend/api/routes/settings.py :: TaskAssignment / SaveAssignmentsRequest
Migration Filealembic/versions/
TimescaleDB HypertableNo
Partition Column

Columns

ColumnSQLAlchemy TypeNullableDefaultDescription
taskString(64)NoTask identifier (PRIMARY KEY)
providerString(32)NoLLM provider to use for this task
model_nameString(128)NoSpecific model ID (e.g., claude-opus-4-7)
updated_atDateTime(timezone=True)Nodatetime.now(UTC)Last update timestamp

Valid Task Values

From backend/api/routes/settings.py :: _VALID_TASKS:

TaskDescription
market_analysisCore market signal analysis
visionChart image interpretation
execution_decisionFinal trade go/no-go decision
maintenance_technicalTechnical indicator check for open trade
maintenance_sentimentNews/sentiment check for open trade
maintenance_decisionFinal decision on open trade management
news_analysisFinancial news parsing and impact scoring
post_trade_analysisPost-close trade review and learning
indicator_agentDedicated indicator analysis agent

Constraints & Indexes

NameTypeColumnsPurpose
pk_task_llm_assignmentsPRIMARY KEYtaskOne assignment per task type

SQLAlchemy Model (reference snapshot)

class TaskLLMAssignment(Base):
    __tablename__ = "task_llm_assignments"
 
    task: Mapped[str] = mapped_column(String(64), primary_key=True)
    # 'market_analysis' | 'vision' | 'execution_decision' | ...
    provider: Mapped[str] = mapped_column(String(32), nullable=False)
    model_name: Mapped[str] = mapped_column(String(128), nullable=False)
    updated_at: Mapped[datetime] = mapped_column(
        DateTime(timezone=True),
        default=lambda: datetime.now(UTC),
        onupdate=lambda: datetime.now(UTC),
    )
RoleLink
API EndpointAPI-POST-v1-Settings
Frontend PagePage - Settings
Related TableDB - llm_provider_configs
Related TableDB - llm_calls