"""Angel(Agnes)凭据存入 settings 表 - llm_settings.agnes_api_key TEXT (留空 = 用 .env AGNES_API_KEY 兜底) - llm_settings.agnes_base_url_override VARCHAR(255) (留空 = 用 .env AGNES_BASE_URL) API 安全:LlmSettingOut 只回 agnes_api_key_set (bool),不回明文 Revision ID: 0005 Revises: 0004 Create Date: 2026-06-12 """ from __future__ import annotations from typing import Sequence, Union import sqlalchemy as sa from alembic import op revision: str = "0005" down_revision: Union[str, None] = "0004" branch_labels = None depends_on = None def upgrade() -> None: op.add_column( "llm_settings", sa.Column( "agnes_api_key", sa.Text, nullable=False, server_default="", ), ) op.add_column( "llm_settings", sa.Column( "agnes_base_url_override", sa.String(255), nullable=False, server_default="", ), ) def downgrade() -> None: op.drop_column("llm_settings", "agnes_base_url_override") op.drop_column("llm_settings", "agnes_api_key")