"""因子组合表(M7.2b)。 factor_composite:可保存/复用的因子组合定义;components 以 JSON 存 (组件方向冗余快照自因子注册表,计算时以注册表为准)。 """ from __future__ import annotations from datetime import datetime from sqlalchemy import DateTime, String, Text from sqlalchemy.orm import Mapped, mapped_column from app.infrastructure.persistence.sqlalchemy.base import Base class FactorCompositeModel(Base): __tablename__ = "factor_composite" id: Mapped[str] = mapped_column(String(32), primary_key=True) name: Mapped[str] = mapped_column(String(64), unique=True) method: Mapped[str] = mapped_column(String(16), default="fixed") description: Mapped[str] = mapped_column(String(300), default="") components_json: Mapped[str] = mapped_column(Text) created_at: Mapped[datetime] = mapped_column(DateTime)