ai-robot-core/spec/intent-driven-mid-platform/tasks.md

118 lines
4.3 KiB
Markdown
Raw Permalink Normal View History

# 意图驱动智能体中台改造IDMP- 任务清单
## 活跃版本v0.2.0-0.3.0
---
## Phase 1: 记忆服务增强AC-IDMP-13/14
### Task-1.1: 记忆召回服务AC-IDMP-13
**验收标准**: WHEN 进行记忆读取 THEN 中台 SHALL 在响应前执行 recall 并注入基础属性、事实记忆与偏好记忆
**子任务**:
- [ ] 1.1.1 创建 `services/mid/memory_adapter.py` - 记忆适配器
- [ ] 1.1.2 实现 `RecallRequest` / `RecallResponse` 数据模型
- [ ] 1.1.3 实现 `recall(user_id, session_id)` 方法,返回 profile/facts/preferences
- [ ] 1.1.4 集成到对话响应流程(响应前调用)
- [ ] 1.1.5 实现 recall 失败降级(不阻断主链路)
**参考**:
- `openapi.deps.yaml` - `/deps/memory/recall`
- `services/memory.py` - 现有 MemoryService
---
### Task-1.2: 记忆更新服务AC-IDMP-14
**验收标准**: WHEN 一轮会话完成 THEN 中台 SHALL 异步执行记忆更新(含会话摘要),且不阻塞主响应
**子任务**:
- [ ] 1.2.1 实现 `update(user_id, session_id, messages, summary)` 方法
- [ ] 1.2.2 创建异步任务队列(使用 asyncio.create_task
- [ ] 1.2.3 实现会话摘要生成(可选,由中台异步生成后回写)
- [ ] 1.2.4 集成到对话响应流程(响应后异步调用)
- [ ] 1.2.5 添加错误处理与重试机制
**参考**:
- `openapi.deps.yaml` - `/deps/memory/update`
---
## Phase 2: 工具调用治理AC-IDMP-15/19
### Task-2.1: 工具调用结构化记录AC-IDMP-15
**验收标准**: WHEN 中台调用工具 THEN 中台 SHALL 以结构化 `tool_call/tool_result` 记录参数摘要、耗时、结果与错误码
**子任务**:
- [ ] 2.1.1 创建 `models/mid/tool_trace.py` - ToolCallTrace 数据模型
- [ ] 2.1.2 实现 `ToolCallRecorder` 服务
- [ ] 2.1.3 记录字段tool_name, tool_type, registry_version, auth_applied, duration_ms, status, error_code, args_digest, result_digest
- [ ] 2.1.4 集成到 TraceInfo 输出
- [ ] 2.1.5 实现敏感参数脱敏args_digest
**参考**:
- `openapi.provider.yaml` - `ToolCallTrace` schema
---
### Task-2.2: Tool Registry 治理AC-IDMP-19
**验收标准**: WHEN 新增或调用工具能力(含 MCP 工具) THEN 中台 SHALL 通过统一 Tool Registry 完成注册、鉴权、超时策略、版本与启停治理,并将治理结果写入 trace/tool 日志
**子任务**:
- [ ] 2.2.1 创建 `services/mid/tool_registry.py` - 工具注册表
- [ ] 2.2.2 实现 `ToolDefinition` 数据模型name, type, version, timeout_ms, auth_required, is_enabled
- [ ] 2.2.3 实现 `register_tool()` - 工具注册
- [ ] 2.2.4 实现 `authorize_tool()` - 工具鉴权
- [ ] 2.2.5 实现 `get_timeout_policy()` - 超时策略获取
- [ ] 2.2.6 实现 `is_tool_enabled()` - 启停状态检查
- [ ] 2.2.7 创建数据库表 `tool_registry`(可选,支持动态配置)
- [ ] 2.2.8 集成 MCP 工具支持
**参考**:
- `openapi.provider.yaml` - `TraceInfo.tools_used`, `ToolCallTrace`
---
## Phase 3: 测试与验证
### Task-3.1: 单元测试 ⏳
**覆盖路径**:
- [ ] 成功路径:正常 recall/update工具调用成功
- [ ] 超时路径recall 超时降级,工具调用超时
- [ ] 错误路径recall 失败降级,工具调用错误
- [ ] 降级路径:记忆服务不可用时继续主链路
**测试文件**:
- `tests/test_memory_adapter.py`
- `tests/test_tool_registry.py`
- `tests/test_tool_call_recorder.py`
---
## 依赖关系
```
Task-1.1 (recall) ──┐
├──> Task-1.2 (update) ──> Task-3.1 (tests)
Task-2.1 (trace) ───┘
└──> Task-2.2 (registry) ──> Task-3.1 (tests)
```
---
## 变更文件清单
| 文件路径 | 状态 | 关联 AC |
|---------|------|---------|
| `services/mid/__init__.py` | 待创建 | - |
| `services/mid/memory_adapter.py` | 待创建 | AC-IDMP-13/14 |
| `services/mid/tool_registry.py` | 待创建 | AC-IDMP-19 |
| `services/mid/tool_call_recorder.py` | 待创建 | AC-IDMP-15 |
| `models/mid/__init__.py` | 待创建 | - |
| `models/mid/memory.py` | 待创建 | AC-IDMP-13/14 |
| `models/mid/tool_trace.py` | 待创建 | AC-IDMP-15 |
| `models/mid/tool_registry.py` | 待创建 | AC-IDMP-19 |
| `tests/test_memory_adapter.py` | 待创建 | AC-IDMP-13/14 |
| `tests/test_tool_registry.py` | 待创建 | AC-IDMP-19 |
| `tests/test_tool_call_recorder.py` | 待创建 | AC-IDMP-15 |