feat: 模块统一 ias- 前缀、独立版本与内网地址支持 (0.1.7)

- 所有 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 环境变量,版本通知同时发送公网和内网链接
- 将已有升级日志翻译为中文
- ias_upgrade_logs 新增 modules JSONB 字段
- 新增 VERSION 文件和 CHANGELOG.md
- 新增 AGENTS.md 项目规则文件
This commit is contained in:
2026-07-06 17:57:48 +08:00
parent ed7f89d44f
commit 25dd0daa8b
91 changed files with 5546 additions and 777 deletions
@@ -0,0 +1,73 @@
-- 将已有升级日志翻译为中文
UPDATE ias_upgrade_logs SET
title = '上下文管理和启动通知',
description = '新增独立的上下文管理模块、记忆工具、会话摘要、LLM 响应兼容性、启动上线通知,以及初始版本和更新日志文件。',
changes = '[
"新增独立的 Rust context 模块,支持长期记忆、会话上下文、会话摘要和近一周摘要。",
"新增带时间戳的记忆记录和上下文 API,支持查询、创建、更新和删除记忆。",
"新增上下文窗口切换规则,涵盖 /new 命令、两小时不活跃和 token 上限阈值。",
"新增开启新上下文时自动生成会话摘要。",
"新增记忆工具,使助手在对话中可以查询和更新用户记忆。",
"修复 LLM 响应解析,使不带 service_tier 的路由响应也能正常接受。",
"新增启动上线通知,服务恢复后向用户发送友好提示消息。",
"新增项目版本文件和更新日志,并记录版本/更新日志规则。"
]'::jsonb
WHERE version = '0.1.1';
UPDATE ias_upgrade_logs SET
title = '持久化升级日志和 Codex 规则',
description = '新增持久化升级记录,并明确版本/更新日志规则必须写在 Codex 实际读取的 AGENTS.md 文件中。',
changes = '[
"新增 ias_upgrade_logs 数据库表,用于持久化升级记录。",
"新增迁移种子数据,写入 0.1.1 和 0.1.2 的升级记录。",
"更新 AGENTS.md 中的 Codex 项目规则,使版本升级同步更新 VERSION、crate 版本、CHANGELOG.md 和数据库升级记录。",
"明确项目规则应写在 Codex 实际读取的 AGENTS.md 文件中。"
]'::jsonb
WHERE version = '0.1.2';
UPDATE ias_upgrade_logs SET
title = '分离后台服务启动进程',
description = '修复服务管理器,使后台启动和重启能将子进程与调用命令的会话分离,并在数据库中记录本次升级。',
changes = '[
"修复后台服务启动问题,使 ias service start/restart 能将子服务进程与调用命令的会话分离。",
"新增版本 0.1.3 的数据库升级日志迁移。",
"重启后通过 ias service status 验证服务健康状态。"
]'::jsonb
WHERE version = '0.1.3';
UPDATE ias_upgrade_logs SET
title = '邮件轮询和独立 HTTP 模块',
description = '新增独立的邮件模块用于 IMAP 轮询和通知,将 HTTP 服务和网页预览页面迁移到独立 Rust 模块,并新增邮件持久化表。',
changes = '[
"新增独立的 Rust mail 模块,实现 IMAP 邮箱轮询、邮件解析、数据库去重、预览页面创建和用户通知。",
"新增独立的 Rust ias-http 模块,提供 HTTP 服务、健康检查和可复用的网页预览页面。",
"将现有的网页预览路由从 service 迁移至 ias-http。",
"新增 /mail-api/messages 和 /mail-api/messages/{id} 接口,用于查看存储的邮件记录。",
"新增 ias_mail_messages 数据库表,持久化 0.1.4 升级记录。",
"新增通过 IA_MAIL_* 环境变量配置邮件轮询;未配置邮箱时轮询保持禁用。"
]'::jsonb
WHERE version = '0.1.4';
UPDATE ias_upgrade_logs SET
title = '基于数据库的邮件认证和缓存',
description = '新增通过 ias mail auth 引导命令配置邮件账号,将邮件账号持久化到数据库,并扩展邮件消息缓存。',
changes = '[
"新增基于数据库的邮件账号配置,通过 ias mail auth 引导命令完成。",
"新增 ias_mail_accounts 表,并将缓存的邮件消息关联到对应配置账号。",
"扩展邮件缓存,在 ias_mail_messages 中持久化完整解析后的邮件内容和原始头信息。",
"更新邮件轮询逻辑,优先从数据库加载启用的邮件账号,同时保留环境变量配置作为回退方案。",
"新增 ias mail list 命令查看邮件账号列表。",
"持久化 0.1.5 升级记录。"
]'::jsonb
WHERE version = '0.1.5';
UPDATE ias_upgrade_logs SET
title = '版本更新通知和更新日志页面',
description = '新增 HTTP 更新日志页面和一次性启动通知,告知用户服务更新到了哪个版本。',
changes = '[
"新增 HTTP 渲染的更新日志页面,路由为 /updates 和 /updates/{version}。",
"新增服务版本一次性启动通知,包含更新的版本号和 HTTP 更新日志链接。",
"新增持久化的版本通知状态,避免普通重启后重复通知用户。",
"持久化 0.1.6 升级记录。"
]'::jsonb
WHERE version = '0.1.6';