INSERT INTO ias_upgrade_logs (
    version,
    released_at,
    title,
    description,
    changes,
    modules
) VALUES (
    '0.1.7',
    '2026-07-06T00:00:00+08:00',
    '模块统一 ias 前缀、独立版本与内网地址支持',
    '所有 Rust crate 统一加 ias- 前缀，各模块开始独立维护版本号，新增内网地址环境变量，版本通知同时发送公网和内网链接，并将已有升级日志翻译为中文。',
    '[
        "所有 Rust crate 统一加 ias- 前缀：ai → ias-ai、common → ias-common、context → ias-context、mail → ias-mail、service → ias-service、wechat → ias-wechat。",
        "新增 ias-main 模块承载 CLI 入口和二进制打包。",
        "各模块开始独立维护版本号，ias-main 0.1.7 代表整体版本。",
        "新增 IA_WEB_INTERNAL_URL 环境变量，用于配置内网可访问的基础 URL。",
        "新增 internal_url_for_path() 函数，版本更新通知同时发送公网和内网地址的 Markdown 链接。",
        "将已有升级日志的 title、description、changes 翻译为中文。",
        "ias_upgrade_logs 新增 modules JSONB 字段记录各模块独立版本。",
        "持久化 0.1.7 升级记录。"
    ]'::jsonb,
    '{
        "ias-common": "0.1.0",
        "ias-ai": "0.1.0",
        "ias-wechat": "0.1.0",
        "ias-context": "0.1.0",
        "ias-http": "0.1.0",
        "ias-mail": "0.1.0",
        "ias-service": "0.1.0",
        "ias-main": "0.1.7"
    }'::jsonb
) ON CONFLICT (version) DO UPDATE SET
    released_at = EXCLUDED.released_at,
    title = EXCLUDED.title,
    description = EXCLUDED.description,
    changes = EXCLUDED.changes,
    modules = EXCLUDED.modules;
