Files
ordo/docs/roadmap.md
T
0264408andCursor d743939964 feat: dispatch NamedAction and NamedCondition by key
Hosts register one bean per action/condition; Spring wires the dispatcher when no facade is defined, and REST catalog projects from those beans.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-20 11:07:57 +08:00

44 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Ordo Roadmap
本文档是后续开发计划。「开发计划」中的项会做。「暂不在计划中」的项在另有决定前不做。除此之外仍可能立项其他新特性。
对外行为落地后同步 [usage.md](usage.md)。
## 已完成
- ANY/ALL 会签/或签
- 结构化 PARALLEL 块(一层、join ALL、驳回否决整单)
- JDBC 存储(PostgreSQL / MySQL)+ 按方言 Flyway 基线
- 定义不可变多版本:`publish`;实例锁定 `definitionVersion`
- 条件路由 `StepTransition`:内置谓词 AST 或宿主 `RoutingCondition`(`ref` + `args`)
- ACTION + `ActionHandler`;执行记录持久化
- 发起人撤回 `WITHDRAWN`
- 分页查询:任务 / 实例 / 定义
- 审计 `ProcessEvent` / `queryHistory`;`OrdoEventListener`
- 任务转派 `reassign` / `TASK_REASSIGNED`
- 到期升级 `processDue` / `TASK_ESCALATED`
- 管理员/系统取消 `cancel` / `CANCELLED`
- 可选 REST(autoconfigure 条件装配)+ 目录 SPI `OrdoCatalog`
- `NamedAction` / `NamedCondition` 注册与官方 key 分发;默认 Catalog 从具名 Bean 投影
## 开发计划(确定要做)
下列能力已纳入计划,尚未实现。实现顺序可按依赖调整,但范围本身不从计划中拿掉。
### 独立设计器(不进本仓库)
流程设计器是**单独产品**,消费上述 REST 与目录,不做成 ordo 模块。画布对齐引擎图(审批步、ACTION 步、PARALLEL 块、边上的 `when`/`priority`,结束为 `to: null`),不引入自由 fork-join 网关。节点坐标等 layout 由设计器自存,不进入 `ProcessDefinition`。
启动时机:REST 契约与目录 SPI 落地之后。草稿由设计器/REST 文档存储,不进入引擎图版本。
## 暂不在计划中
- **多租户**(数据模型无 tenant 隔离)
- **设计器 UI**(不进 ordo;见上节独立产品)
## 后续新特性
上表「确定要做」之外,仍可能立项其他能力(例如表单/UI schema、子流程、嵌套 PARALLEL / join ANY)。**多租户在另有明确决定前不进入计划。**
新特性立项时写入「开发计划」对应小节;完成后移到「已完成」,并更新 [usage.md](usage.md)。