Skip to content

Python 更新日志

当前版本 v1.8.28 · PyPI(jeeflow)· 仓库 mldong/jeeflow-python · Releases 版本日期以本仓 git tag 为准;跨语言对齐脉络见 更新记录总览

1.0.0–1.8.4 为四语言同构对齐期(Java / Go / Python / Node 同号演进);1.8.5 起按语言节奏发版,版本号不必同号(Python 全序列无跳号)。

v1.8.28 — 2026-09-10

  • 修复 裸装 import 即炸:repository/mysql.py 顶层 import aiomysql(可选依赖)随包 __init__ 无条件执行,干净环境 pip install jeeflow 后首行 import jeeflowModuleNotFoundError(PyPI 1.8.27 起全部命中,README 快速开始裸装不可用)。改 if TYPE_CHECKING 惰性引用对齐 postgres.py 先例(aiomysql 在文件内仅类型标注,from __future__ import annotations 下运行时零引用)。
  • 测试 新增 tests/test_bare_import.py:子进程 sys.modules 置 None 模拟裸装,断言核心入口与双适配器类照常可导入;全量 107 passed。

v1.8.27 — 2026-09-09

  • 修复 五语言 SQL 仓聚合水合:find_instance_by_id 此前只查 wf_process_instance 单表不装任务,门面 processInstance/detail 的 tasks/activeTaskList 恒空(gate26 L2-12 门禁真根因,非会签语义)。二次查 wf_process_task(复用 _find_tasks_by_state:id ASC + actorIds 批查,事务内经 _tx_conn_var 复用连接)水合任务副本,语义对齐 Java findTasksByInstanceId / PHP PdoProcessRepository / C# FindTasksInternalAsync(聚合水合口径)。update_instance 级联仅按 task.id 幂等 UPDATE(无 INSERT / 不改 actor),水合后 withdraw 回写与 Java 同构。memory 仓本就水合(基线正确,未动);引擎核心会签语义未动。
  • 测试 T0 新增「SQL 仓 detail 任务列表非空」用例(tests/jdbc_test.py ⑫ 段,mysql/postgres 双库:水合非空 + actorIds + detail tasks/activeTaskList 非空);既有 spec 软拒绝用例续 PASS(核心语义不动);全绿。
  • 集成栈 mldong-fastapi-jeeflow / mldong-flask-jeeflow pin → 1.8.27 随 P3 收口(base+1,进行中)。

v1.8.26 — 2026-09-04

  • 修复 pro 真验回归:stats_define_group 返回映射 r[4] 越界且列错位 → 4 列对齐 r[0]–r[3](key/label/count/avgDurationSeconds),define 维出真分组。

v1.8.25 — 2026-09-04

  • 新增 stats 三 action(processInstance/stats/overview|trend|group)落地。
  • 修复 stats 契约对齐 A–E 验收。
  • 修复 事件监听器异常兜底(P2,一个监听器异常不打断其余)。

v1.8.24 — 2026-09-03

  • 新增 CC_CREATE 抄送知会事件(六语言统一缺口 Python 栈):EventType.CC_CREATE 字符串枚举 + ProcessEvent.ccActorId 直传 + 公开 fire_event + facade 两路(start 事务内)逐抄送人 fire;纯增量(无监听器零副作用)。
  • 验证 T0 83/83 + T1 真 MySQL 45/45。

v1.8.23 — 2026-09-01

  • 修复(引擎侧根因):createTask 任务行落库之后 fire TASK_CREATE 事件——此前「从不 fire」,新待办 TODO 事件整类缺失,messagePage 恒空;新待办 / 分支节点 / 退回重办 / 会签各子任务逐任务触发,对齐 Java CreateTaskHandler 时机。

v1.8.22 — 2026-08-31

  • 修复execute 不再覆盖实例 u_*——以 start 注入的发起人 u_* 为底、仅并入非 u_* 键(helper _merge_exec_into_instance)。实例 u_realName 恒为发起人,对齐 Java 基准。

v1.8.21 — 2026-08-30

  • 修复 批量入参契约:删除/启停类 action 统一走 _id_list——{ids} 数组优先、单 {id} 兼容,空值 / 含非法值一律 99999999,不再静默成功;processDefine/remove 批量补齐(Python 独有的第二处缺口 批量下沉当时只给了 upAndDown)。

v1.8.20 — 2026-08-24

  • 修复 会签一票否决条件化 + merged 废弃残留任务(五语言对齐内置引擎);串行会签无 Python 变更(实现本就正确)。

v1.8.19 — 2026-08-23

  • 修复–82 门面字段级契约批次(五语言)Python 部分:processSurrogate 补 update / detail、candidatePage 行键归一、listByTypeprocessDefineState、id 精度守卫(_to_int,float64 超 2^53 显性报错)、委托修复、submitType 门面行为 + 抄送空 actors → 99999999 测试。

v1.8.18 — 2026-08-16

  • 修复FormFieldAssigneeHandler.findFieldValue 增加 f_ 前缀优先匹配(对齐 Java 1.8.11)。

v1.8.17 — 2026-08-15

  • 修复:facade 分页补齐 pageNum / pageSize / recordCount / pageCount / total 五键。

v1.8.16 — 2026-08-13

  • 修复(五语言同批):processTask/detailtaskModel 补全 ext / form 字段,用于字段权限下发。

v1.8.15 — 2026-08-09

  • 变更(CI)为 CI 发布流水线做准备;无引擎行为变更。

v1.8.14 — 2026-08-09

  • 变更(CI)test job 移除、aliyun mirror;无引擎行为变更。

v1.8.13 — 2026-08-09

  • 新增register_persist_meta 注册助手,集成方一行调用同步字典项与实例。
  • 变更 流程定义声明 postInterceptors 但注册表无实例时,发起 / 办理改为显式报错(原为静默跳过)。

v1.8.12 — 2026-08-08

  • 改进 updateDefine / save / deploycontent 字段支持 string 与 JSON 对象双形态(四语言同批)。
  • 测试 回归护栏——redeploy 后 version 不变(实现本就正确)。

v1.8.11 — 2026-08-06

  • 修复processDesign/page id 字符串化;upAndDown 兼容 {ids, opType} 批量。
  • 修复:会签任务 performType 落库(三端对齐 Java);撤回状态改为 Withdraw(30) 而非 Reject(45);发起时抄送 f_ccActors 创建抄送。

v1.8.10 / v1.8.9 — 2026-08-05

  • 无本语言行为变更(版本对齐)。

v1.8.8 — 2026-08-05

  • 新增nodeProgress 成员 name 经 UserProvider SPI 解析 realName,未注册或查不到时回退空串。

v1.8.7 — 2026-08-05

  • 修复performType 增加字符串兼容('ALL' / 'COUNTERSIGN')。

v1.8.6 — 2026-08-05

  • 修复:persist ext 仓库漏导入 _user_strJdbcProcessExtRepository 读路径 NameError。
  • 新增highLight 新增 nodeProgress——会签节点成员进度、普通节点历史与进行中状态。

v1.8.5 — 2026-08-05

  • 修复 E9:审计用户列防御 BIGINT——createUser/updateUser 读回 str 归一化(NULL 保持 None)。
  • 修复 E10:persist 两处 ? 占位符残留,统一走方言占位符。

v1.8.4 — 2026-08-05

  • 新增:流程定义级 postInterceptors 声明与拦截器注册表,未声明的流程不触发,与 Java 语义一致。
  • 新增 三门下沉:processDesign/listByTypeprocessInstance/bizDataupdateDefine 顶层 JSON 兼容、remove / upAndDown 批量。
  • 修复performType 解析容错;persist 连接契约与 MySQL 方言占位符。

v1.8.3 — 2026-08-04

  • 无本语言行为变更(版本对齐;– 为 Java 侧随版,三门于 1.8.4 对齐)。

v1.8.2 — 2026-08-04

  • 修复:SYNC 字段权限语义同步(办理入口过滤,上游只读不可绕过)。

v1.8.1 — 2026-08-04

  • 修复:SYNC 字段权限键兼容前端 PERMISSION_f_ 约定。

v1.8.0 — 2026-08-04

  • 新增persistMode 双模式(ARCHIVE / SYNC 同步演进)闭环——任务节点级字段权限、状态字段写入、tf_ 去前缀、幂等节点级、子表递归、MetaTableWriter.update

v1.7.0 — 2026-08-04

  • 新增:元数据驱动的动态写入 / 读取规范(jeeflow.persist)。

v1.6.6 — 2026-08-04

  • 修复:persist 表结构探测 schema 限定。

v1.6.5 — 2026-08-04

  • 新增:persist 主键生成支持。

v1.6.4 — 2026-08-04

  • 改进:persist 默认列匹配宽松化(驼峰 ↔ 下划线归一)。

v1.6.3 — 2026-08-04

  • 改进:persist 用户列默认取 operator;同执行链重复触发防护。

v1.6.2 — 2026-08-04

  • 新增:业务数据通用入库 jeeflow.persist + PersistPostInterceptor

v1.6.1 / v1.6.0 — 2026-08-04

  • 新增(四语言同构):表单数据契约、IOrgUserProvider SPI、7 个内置参与者处理器、candidatePage 双源、assign 增加 operator 参数。

v1.5.1 — 2026-08-03

  • 新增processDesign/redeployupdateDefineupdate + is_deployed 同步。

v1.5.0 — 2026-08-02

  • 修复(issues 05/06/07 修复集):详情 jsonObject、highLight 决策节点表达式过滤、design/detail jsonObject 补齐。

v1.4.0 — 2026-08-02

  • 新增:引擎元数据能力——枚举字典 + SPI 实现清单。

v1.3.0 — 2026-08-02

  • 新增 page_cc_instances 分页 SPI + ccList 补齐;add_task_actor 去重追加语义。

v1.2.0 / v1.1.0 — 2026-08-02

  • 新增 视图端点补齐 + IUserSearchProvider;管理扩展三表 + IProcessExtRepository + 统一门面(四语言同构)。

v1.0.0 — 2026-08-01

  • 引擎核心四语言同构实现(Python):5 张核心表、启动/执行/驳回/跳转/退回发起人/会签/抄送/委托、4 SPI、MySQL / PostgreSQL,发布到 PyPI。

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