"""Backlog task model for VoIdea.""" from typing import Optional from sqlalchemy import String, Text from sqlalchemy.orm import Mapped, mapped_column from app.core.base import SQLBase, TimestampMixin, UUIDMixin class BacklogTask(SQLBase, UUIDMixin, TimestampMixin): __tablename__ = "backlog_tasks" title: Mapped[str] = mapped_column( String(255), nullable=False ) description: Mapped[Optional[str]] = mapped_column( Text, nullable=True ) priority: Mapped[str] = mapped_column( String(20), default="medium", nullable=False, index=True ) status: Mapped[str] = mapped_column( String(20), default="pending", nullable=False, index=True ) source_agent: Mapped[Optional[str]] = mapped_column( String(100), nullable=True ) category: Mapped[str] = mapped_column( String(50), default="general", nullable=False, index=True )