# CCF × MoonBit 基础软件开源大赛 - 项目申报书

**1. 项目名称**：MoonBit-FSM 状态机与工作流引擎

**2. 项目背景与简介**
随着 WebAssembly 技术的普及，构建复杂交互的需求日益增加。而在处理复杂业务（如 AI 行为树、订单流转）时，传统手写条件分支极易导致“面条代码”和死锁。
本项目为 MoonBit 生态提供了一个企业级、类型安全且具备静态验证能力的扩展有限状态机 (Extended FSM) 框架。开发者可通过构建者模式直观定义状态变迁、动态守卫与生命周期。

**3. 方向与核心适用场景**
**申报方向**：生态库与核心计算基础架构。
**典型场景**：
- **游戏引擎开发**：控制 NPC 的巡逻、追击、逃跑等行为树逻辑。
- **高并发后端系统**：处理复杂的分布式订单流转、工作流调度判定。
- **前端复杂交互**：构建可预测、易调试的高级 UI 状态流控制层。

**4. 核心功能与技术创新**
本项目超越传统流转，引入大量现代工程级特性：
- **泛型上下文拓展 (Extended Context)**：支持绑定泛型业务数据，实现了图灵完备的扩展状态控制，可直接在节点间传递并突变业务载荷。
- **图论级静态校验 (Static Validator)**：引入广度优先搜索 (BFS) 算法，内存初始化前静态扫描所有路径，提前拦截“孤岛状态”与“逻辑死结”，保障运行安全。
- **动态拦截守卫 (Dynamic Guards)**：支持在流转路径上插入基于 Context 动态计算的守卫，实现高度动态化的条件鉴权与阻断。
- **生命周期切面 (Lifecycle Hooks)**：支持基于泛型的 `on_enter`/`on_exit` 钩子回调，实现网络发包等副作用隔离。
- **可视化架构导出 (Mermaid Exporter)**：首创框架可视化能力，调用导出函数即可一键生成标准的 Mermaid 图表代码。

**5. 性能与架构优势**
100% 纯 MoonBit 原生开发，零外部依赖。架构上解耦“定义层”、“检验层”与“执行层”。在运行时采用哈希映射进行 O(1) 极速寻址，性能开销极低。

**6. 原创性与未来规划**
100% 独立设计与原创。下一阶段规划向层次嵌套状态 (Hierarchical States) 与并行正交域演进。

**7. 移植说明**
不适用（原生构筑）。

**8. 仓库地址**
**GitHub**：https://github.com/Rz-coder8848/MoonBit-FSM
**GitLink**：https://www.gitlink.org.cn/Douj/moon-fsm
