# 决策: 引入 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** — 集成到 `server.py`(端口 8899),深色主题 Web UI + ?§ 按钮 3. **健康管线** — Tier1(5min)+ 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**: 集成到 server.py(✅ 选择 — Dashboard 端点加到现有 Flask 应用,统一端口 8899)