Skip to content

jeeflow 引擎规范(Spec)

本规范是 jeeflow 工作流引擎的唯一事实来源。所有语言实现(Java/Go/Python/Node.js/PHP) 必须对齐本文档定义的语义。规范只陈述"必须怎么做"——设计动机与决策论证见 设计原理(Concepts) 系列。

术语

术语说明
流程定义 (Process Define)流程模板,包含节点和边的 LogicFlow JSON
流程实例 (Process Instance)一次流程执行,绑定一个操作人
流程任务 (Process Task)实例中的审批节点,绑定参与者
参与者 (Actor)任务的审批人,存储在 wf_process_task_actor

规范分卷

分卷内容设计原理对应
01 · 数据模型5 张核心表 + 3 张扩展表结构架构总览
02 · 流程定义格式顶层结构 / 节点 properties / 参与者解析 / 决策表达式 / 完整示例执行引擎
03 · 状态机流程实例状态 / 任务状态转换领域模型
04 · 引擎核心操作启动 / 完成 / 系统代执行 / 驳回 / 跳转 / 会签 / 流程变量约定 / 聚合根方法清单执行引擎 · 领域模型
05 · SPI 接口IProcessRepository 全签名 / 可选 SPI / 事务约定 / 扩展仓储 / SurrogateInterceptorSPI 设计 · 管理扩展与门面
06 · 统一门面flow(action, map) 契约 / 40+ 个 action 清单 / deploy / execute 分发 / 用户搜索钩子管理扩展与门面 · 契约约定
07 · 元数据能力枚举字典(7 个 key)/ SPI 实现清单(HandlerRegistry)引擎元数据
08 · 合规测试22 条跨语言合规场景(合并 v1.0~v1.4.0 全部)
09 · 业务数据通用入库引擎无关 DynamicTableWriter + 入库拦截器 PersistPostInterceptor(persist)扩展机制
10 · 元数据驱动的动态写入/读取FieldMeta / TableMeta / StorageType + MetaTableReader(persist-meta)引擎元数据

各语言实现位置速查

JavaGoPythonNode.jsPHP
引擎核心jeeflow-coreengine/jeeflow/engine.pysrc/engine.tspackages/core/src
聚合根domain/ProcessInstance.javamodel/jeeflow/model.pysrc/model.tspackages/core/src/Domain/ProcessInstance.php
仓储 SPIspi/IProcessRepository.javaspi/spi.gojeeflow/spi.pysrc/spi.tspackages/core/src/Spi/ProcessRepositoryInterface.php
JDBC 参考实现jeeflow-repository-jdbcrepository/jdbc/jeeflow/repository/base.pysrc/jdbc/shared.tspackages/repository-pdo
门面facade/JeeflowFacade.javafacade/facade.gojeeflow/facade.pysrc/facade.tspackages/web-contract/src/JeeflowFacade.php
元数据metadata/ + enums/IDictEnummetadata/jeeflow/metadata.pysrc/metadata.ts + src/registry.ts—(规划中)

jeeflow · 轻量级多语言工作流引擎