Files
MoFin/docs/self-healing-loop.md

59 lines
2.4 KiB
Markdown

# MoFin 自愈循环系统设计
> 版本: v1.1 | 最后更新: 2026-06-24
> 核心理念:三层自检 + TODO自动执行 + 失败升级LLM,形成无人值守的修复闭环。
## 一、三层自检架构
| 层级 | 脚本 | 频率 | 范围 |
|------|------|------|------|
| 盘中高频 | intraday_health_check.py | 每15分 9-15 | XMPP/Gateway/Scanner/价格/信号管道 |
| 每日早检 | morning_health_check.py | 8:00 | 8类48项:基础设施/SENSE/RESPOND/ADAPT/IMPROVE/数据/管道/元自检 |
| 每周深度 | 策略评估/建议对账/剪枝 | 周六 | 策略准确率/闭环/分支效率 |
## 二、自愈循环
```
自检发现问题
├─ auto_fix_issue() 当场能修 → 修完标记✅
└─ 不能当场修 → 写TODO(带fix_action+原因)
self_todo_executor.py (每10分, no_agent)
┌─────┴──────┐
│ │
fix_action成功 fix_action失败
│ │
completed ✅ 调gateway API(localhost:8643)
带完整上下文(问题+详情+失败原因)
知微(LLM)处理 → completed
仍搞不定 → 在结果里说明
```
## 三、核心文件
| 文件 | 用途 |
|------|------|
| `scripts/morning_health_check.py` | 每日早检(no_agent, 8:00) |
| `scripts/intraday_health_check.py` | 盘中高频(no_agent, 每15分) |
| `scripts/self_todo_executor.py` | TODO执行器(no_agent, 每10分) |
| `scripts/xiaoguo_signal_consumer.py` | 小果信号消费(no_agent, 每30分) |
| `data/health_checklist.json` | 检查清单(可自动扩展) |
| `data/mofin.db → todos 表` | TODO数据库(替代旧todo.json) |
## 四、TODO生命周期
```
创建(自检发现)→pending→in_progress→completed(修复成功)
→pending(重试未到上限)
→needs_llm→调gateway→completed
→报告说明(LLM也搞不定)
```
## 五、Fallback设计
- 小果LLM不可达 → scanner降级标记unknown,继续扫榜单搜新闻
- 小果离线 → 盘中自检不报严重错误,核心功能不受影响
- 任何fix_action失败 → 调gateway API让知微处理,不搁置