feat: introduce spec system + dashboard + health pipeline (AgentsMeeting template)

This commit is contained in:
hmo
2026-07-19 10:50:34 +08:00
parent 81c6dd2314
commit 747fdfe467
19 changed files with 1826 additions and 0 deletions
@@ -0,0 +1,26 @@
# 决策: 引入 spec 体系 + Dashboard
## Context
MoFin 项目已运行数月,有 30 个 API 端点、38 个 cron 任务、完善的编码规范(DEVELOPMENT_STANDARDS.md)和架构文档(SYSTEM_ARCHITECTURE.md)。但缺少:
- 统一的模块可见性("不可见即不存在")
- AI 和人类共享的接口文档(spec 过期即等于没写)
- 系统健康状态的一站式监控面板
## Decision
参照 AgentsMeeting 样板,为 MoFin 引入:
1. **spec 双轨体系** — 每个模块的 `specs/{module}.json`human_help + ai_spec
2. **Dashboard** — 独立 `dashboard.py`(端口 5804),深色主题 Web UI + ?§ 按钮
3. **健康管线** — Tier15min+ Tier2(日检),聚合到 Dashboard F Tab
4. **开发规范**`docs/dev-spec.md`(五条红线)
不改动任何现有业务代码(server.py :8899 保持不变)。
## Consequences
- 新增 Dashboard 维护负担(但代码最小化,复用 AgentsMeeting 模板)
- AI 开发前必须先读 spec,短期可能感觉慢,长期减少架构理解错误
- 健康检查需要纳入 crontab,增加系统负载(但轻量级,可忽略)
## Alternatives Considered
- **方案 A**: 在现有 server.py 中嵌入 Dashboard(被否 — 改动运行中业务代码风险大)
- **方案 B**: 不做 Dashboard,只补文档(被否 — "不可见即不存在",没有面板等于没做)
- **方案 C**: 独立 dashboard.py(✅ 选择 — 零风险,不影响现有服务)
+29
View File
@@ -0,0 +1,29 @@
# 架构决策日志
每次架构决策(引入新组件、增加抽象层、变更接口)记录在此目录下。
## 格式
文件名: `YYYY-MM-DD-简短描述.md`
```markdown
# 决策: [标题]
## Context
为什么需要做这个决策?当前状态是什么?
## Decision
做了什么选择?
## Consequences
这个选择的影响和后果是什么?
## Alternatives Considered
考虑了哪些替代方案?为什么没选?
```
## 已有决策
| 日期 | 决策 | 文件 |
|------|------|------|
| 2026-07-19 | 引入 spec 体系 + Dashboard(参照 AgentsMeeting 样板) | `2026-07-19-spec-and-dashboard.md` |