feat: 0.2.27 - 抽离数据库基础设施模块
- 新增 ias-db crate,集中管理 PostgreSQL 连接池和 SQLx 迁移
- 迁移 ias-service/migrations 到 ias-db/migrations
- ias-main 改用 ias_db::connect_db(),ias-service 只接 PgPool
- 新增操作日志 HTTP 查询接口 (GET /v1/logs, GET /v1/logs/{id})
- 新增操作日志 Web 前端页面,支持按级别/模块/关键词筛选
- 消息队列关键节点增加操作日志写入
- ias-mail 新增 mark_remote_message_seen,IMAP 已读同步
- 工作流配置加载改为文件级容错 (load_configs_with_warnings)
- ias-context 工具调用说明更新为 query_api_docs + call_http_api
- 新增高德地图地理编码 HTTP 能力配置
模块版本: ias-db 0.1.0, ias-ai 0.1.14, ias-context 0.1.6, ias-http 0.1.15, ias-mail 0.1.16, ias-service 0.1.25, ias-main 0.2.27
This commit is contained in:
@@ -1,5 +1,45 @@
|
||||
# 更新日志
|
||||
|
||||
## 0.2.27 - 2026-07-08
|
||||
|
||||
- 新增 `ias-db` crate,集中负责 PostgreSQL 连接池创建、`DATABASE_URL` 读取和 SQLx 迁移执行。
|
||||
- 将原 `ias-service/migrations` 整体迁移到 `ias-db/migrations`,迁移嵌入和变更监听由 `ias-db/build.rs` 负责。
|
||||
- `ias-main` 改为直接调用 `ias_db::connect_db()`,`ias-service` 只接收已建立的 `PgPool` 并运行服务,数据库生命周期边界更清晰。
|
||||
- 新增操作日志 HTTP 查询接口:`GET /v1/logs`(分页查询,支持按级别、模块、关键词筛选)和 `GET /v1/logs/{id}`(单条详情),API 文档新增 `logs` 功能分组。
|
||||
- 新增操作日志 Web 前端页面,支持按级别、模块和关键词筛选查看日志,便于排障和审计。
|
||||
- 消息队列关键节点增加操作日志写入:LLM 响应、渠道消息接收、上下文记录错误、消息发送失败等场景自动记录到 `ias_operation_logs`。
|
||||
- `ias-mail` 新增 `mark_remote_message_seen` 函数,通过 IMAP 设置邮件已读并验证服务器确认,抽取 `connect_imap_session` 复用连接逻辑。
|
||||
- 工作流配置加载改为文件级容错:`ias-ai` 新增 `load_configs_with_warnings`,返回 `LoadedFlowConfigs` 包含 warnings 信息,单个 YAML 配置损坏时不会导致所有 HTTP 能力为空。
|
||||
- `ias-context` 工具调用说明中的能力引用路径从已废弃的 `record_tool_call_instruction` 更新为 `query_api_docs` + `call_http_api`,并新增单元测试验证。
|
||||
- 新增高德地图地理编码/逆地理编码 HTTP 能力配置文件 `tools/amap_geocode.yaml`。
|
||||
- 数据库无结构变化;新增 `0.2.27` 升级日志记录,新增 `ias-db` `0.1.0`,`ias-ai` 升级至 `0.1.14`,`ias-context` 升级至 `0.1.6`,`ias-http` 升级至 `0.1.15`,`ias-mail` 升级至 `0.1.16`,`ias-service` 升级至 `0.1.25`,`ias-main` 升级至 `0.2.27`;已验证 `cargo fmt --check` 和 `cargo check`。
|
||||
|
||||
|
||||
- 修复服务队列记录 LLM 响应和工具结果预览时按字节直接切片的问题,避免中文、emoji 等多字节字符刚好落在预览上限时触发 `char boundary` panic。
|
||||
- 操作日志预览现在仍按字节上限控制长度,但会回退到合法 UTF-8 字符边界,保证写入 metadata 前不会破坏字符串。
|
||||
- 新增单元测试覆盖中文字符跨越 500 字节边界的预览场景。
|
||||
- 数据库无结构变化;新增 `0.2.26` 升级日志记录,`ias-service` 升级至 `0.1.23`,`ias-main` 升级至 `0.2.26`;已验证 `cargo fmt --check` 和 `cargo test -p ias-service`。
|
||||
|
||||
## 0.2.25 - 2026-07-08
|
||||
|
||||
- 在消息队列关键节点自动记录操作日志:收到渠道消息(channel)、LLM 响应(llm)、工具调用结果(tool)、上下文记录错误(error)和消息发送失败(error)。
|
||||
- 新增 `log_operation` 函数,支持按级别(info/warn/error)和模块写入日志。
|
||||
- `ias-service` 升级至 `0.1.22`,`ias-http` 升级至 `0.1.14`,`ias-main` 升级至 `0.2.25`;已验证 `cargo fmt`、`cargo check` 和 `cargo test`。
|
||||
|
||||
## 0.2.24 - 2026-07-08
|
||||
|
||||
- HTTP YAML 能力加载改为文件级容错:单个 YAML 配置读取或解析失败时只跳过该文件并返回 warning,不再导致其它 HTTP 能力全部为空。
|
||||
- `query_capabilities` 会继续展示成功加载的 HTTP 能力,并在 `warnings` 中标明被跳过的配置文件和错误原因,便于定位坏配置。
|
||||
- `call_capability` 调用 HTTP YAML 能力时同样继承文件级容错,坏配置不会影响其它可用 YAML 能力执行。
|
||||
- 数据库无结构变化;新增 `0.2.24` 升级日志记录,`ias-ai` 升级至 `0.1.13`,`ias-service` 升级至 `0.1.21`,`ias-main` 升级至 `0.2.24`;已验证 `cargo fmt` 和 `cargo test`。
|
||||
|
||||
## 0.2.23 - 2026-07-08
|
||||
|
||||
- 修复 `amap_geocode` HTTP 能力 YAML 的 `query` 配置格式,改为工具链引擎支持的二元组列表,避免 `query_capabilities` 因解析失败导致所有 HTTP 能力为空。
|
||||
- `query_capabilities` 在没有额外动态工具调用说明时,会明确提示固定工具调用约束已在系统提示词中生效,避免误解为缺少系统级约束。
|
||||
- 修正工具调用说明动态段中的过期能力名,不再引用已移除的 `record_tool_call_instruction`,改为提示通过 `query_api_docs` 查询 `context.tool-instructions.update` 后使用 `call_http_api` 维护。
|
||||
- 数据库无结构变化;新增 `0.2.23` 升级日志记录,`ias-ai` 升级至 `0.1.12`,`ias-context` 升级至 `0.1.5`,`ias-service` 升级至 `0.1.20`,`ias-main` 升级至 `0.2.23`;已验证 `cargo fmt` 和 `cargo test`。
|
||||
|
||||
## 0.2.22 - 2026-07-08
|
||||
|
||||
- AI API 能力去重:移除与 HTTP endpoint 一一重复的专用能力(如 web 页面、邮件查询、长期记忆和工具调用说明写入包装),统一改为 `query_api_docs` 发现接口、`call_http_api` 按 `endpoint_id` 调用接口。
|
||||
|
||||
Reference in New Issue
Block a user