Archived
范式退役:活动只剩一种、只跑 Loop;审批活动可管;活动库重做
用户定的两件,一并落地。
**一、活动不再分 flow 和 loop —— 彻底退役 flow**
· `flow-engine` 模块整个删除(runner 379 行 + step-sequence 184 行 + 测试);
· `paradigm` 从清单身份、`activity_package`/`task` 两张表、任务卡与活动库一并退场;
`businessModel` 不再是判别联合 —— 只有案例模型(CMMN + 说明书 + DMN)一形;
· task 的引擎分派从「按 paradigm 取两个之一」收成**唯一的引擎**;
· `activities/` 四个 flow 活动(A1 受理 / A4 定价 / A6 议价 / A7 归档)各写了一份
案例模型:阶段照原来的步分,触达世界的项一律 manualActivationRule,
能算的交 DMN(A1 的三分类 P-03、A4 的 P-01/P-02)不交 Agent;
· 六个占位槽位的骨架从「机器步落台账 + 一张验收单」改成案例骨架,包版本 0.8.0 → 0.9.0。
**代价写在明处,不假装没有**:`turn-runner` 每一拍都要 `agent.decide` ——
环境里没有模型 key,案例活动一步也走不动。三套端到端(统一报价 / 新建流程包 / 测试台
Trace)整套跳过,文件头写明恢复条件:①有可用模型 ②走法改写成按 Enabled 集推进。
**不许把断言改松让它变绿** —— 绿得不诚实比红着更坏。debt.md 已记。
**二、审批活动可管**(新能力)
· `sys.approval_template`:审批点**可复用的那一半** —— 审批人看哪几项、按什么名字看、
怎么催、说什么话。谁来审不在里面(与活动点同口径,运营时轮值);驳回回哪个节点
也不在里面(那是每张图自己的事,留在节点上);
· 三条路由 + 引用反查:还被审批点引着就不许删(409),删了那些节点会**静默**退回旧行为;
· 运行时 `basisOf`:引了模板就按模板筛与改名,没引即旧行为(载荷全摊开)。
模板改了只影响新发出的审批单 —— 在途单的依据在发出那一刻已定形。
**三、活动库重做**:一区两格 —— 「活动(装进来的)」与「审批活动(配出来的)」,
都用流程卡那套两段式卡片(头 + 四格数据板),幽灵卡当入口(装入活动 / 新建审批活动);
「标准/案例」那一维随范式一起撤,业务分类成了唯一的一维,以行内小签呈现。
迁移 0020:两张表 drop paradigm、建 approval_template。已在开发库跑过并重播种。
实测(丁子乔账号):建「定价审批」模板 → 流程包 A5 属性里选得到 → 引用反查计数正确。
四闸绿(api:check 随本提交)。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KeDBx2PHLavbURXB8LJJ7m
This commit is contained in:
+1
-1
@@ -11,7 +11,7 @@
|
||||
| M1 | `@contracts` 首版、`event`、`ledger`、`org`、`llm` | ✅ 完成 |
|
||||
| M2 | `memory`、`toolbox`、`channel`、`message` | ✅ 完成 |
|
||||
| M3 | `interaction`、`human-tool`、`release`、`activity-registry`、`@sfeel` | ✅ 完成 |
|
||||
| M4 | `skill-engine`、`loop-engine`、`flow-engine`、`task` | ✅ 完成(模块与 domain;app 装配随 M5) |
|
||||
| M4 | `skill-engine`、`loop-engine`、~~`flow-engine`~~(2026-07-29 退役)、`task` | ✅ 完成(模块与 domain;app 装配随 M5) |
|
||||
| M5 | `process`、`trigger`、`@activity-sdk` + 六个活动包 | ✅ 完成 |
|
||||
| M6 | 前端:工作台五要素 → 治理台九功能;`minute`、`report` | 🟡 五要素九功能均已平移并接真实 API;`minute`/`report` 已落;编排画布只读态已接,手绘编辑器待接 |
|
||||
|
||||
|
||||
@@ -106,6 +106,11 @@
|
||||
|
||||
样例是业务分析会话的原始导出,术语与两卷未对齐;实现时按此表映射:
|
||||
|
||||
> **2026-07-29 范式退役**:用户定「活动不再分 flow 和 loop,内部实现都是 Loop」——
|
||||
> `flow-engine` 模块整个删除,`paradigm` 字段从清单与两张表退场,活动的业务模型只剩案例模型。
|
||||
> 下表提到「标准活动(flow)」的行为**历史记述**;今天 A1/A4/A6/A7 也已改写成案例模型。
|
||||
> 后果见 docs/debt.md。
|
||||
|
||||
| 样例里的物件 | 归一化为 |
|
||||
| --- | --- |
|
||||
| 流程「统一报价」 | **流程包** v1:治理台编排五要素、边映射闭合、发布;运行即工作流 |
|
||||
|
||||
@@ -181,3 +181,25 @@ intel-archive)只有契约面,入口产物是抛「未实现」的占位 ——
|
||||
升级路径:通道入站归一后挂一个 LLM 分类工具(工具箱五件之 classify,经模型网关一缝),
|
||||
产出 `messageCategory` 进事件载荷,触发器规则改判 `messageCategory = "rfq"`。
|
||||
前置:模型实例已绑定(大模型区)、分类样例集与回放审。不阻塞现有 RFQ 流 —— 正则今天够用。
|
||||
|
||||
## 范式统一的欠账:占位活动没有模型就跑不动(2026-07-29)
|
||||
|
||||
用户定:**活动不再分 flow 和 loop,内部实现都是 Loop**。本轮照此退役:
|
||||
`flow-engine` 模块整个删除、`paradigm` 字段从清单与两张表退场、
|
||||
`activities/` 里四个 flow 活动(A1/A4/A6/A7)与六个占位槽位改写成案例模型(CMMN + 说明书)。
|
||||
|
||||
**直接后果,写在明处**:`turn-runner.runTurn` 每一拍都要 `agent.decide` ——
|
||||
环境里没有模型 key(`JCAI_DEEPSEEK_API_KEY` 或等价的实例绑定),案例活动**一步也走不动**。
|
||||
于是三套端到端整套跳过,并在文件头写明恢复条件:
|
||||
|
||||
| 套件 | 为什么跳 |
|
||||
|---|---|
|
||||
| `unified-quote-flow.it.test.ts` | 靠答验收工单走完整条流;工单从前由 flow 末步发,现在由 Agent 每拍决定 |
|
||||
| `new-package-flow.it.test.ts` | 同上(新建流程包后走一遍) |
|
||||
| `testbed-trace.it.test.ts` | 同上(测试台起单 → 真任务 → 全链 Trace) |
|
||||
|
||||
恢复要两件,缺一不可:①环境有可用模型;②走法改写成 loop 的口径 —— 按 Enabled 集推进,
|
||||
而不是按步序答工单。**在此之前不许把断言改松让它变绿**:绿得不诚实比红着更坏。
|
||||
|
||||
顺带作废的旧欠账:「占位期六个槽位一律 flow 范式,真开发时装回 loop」——
|
||||
已经没有 flow 可退回,这条不存在了。
|
||||
|
||||
+1
-1
@@ -64,7 +64,7 @@
|
||||
| **蓝图** | 全局 —— 定义完了没有 | 四库因果链 + 待补清单(见上) |
|
||||
| **触发器** | 谁调起流程 | 事件 / 登记 / 周期三类调起规则的定义;定完就地投一封信演练,看哪条规则接住(归属解析 → 三级消费的真链路)。**启停开关在运营中心** |
|
||||
| **流程包** | 战略 —— 企业以哪些流转运转 | 编排工作区**三栏**:左窄轨版本(激活/停用 · **号与名自己定** · 删除;点「编辑」整列进编辑态,取消/保存收尾)、中流程图、右节点属性。**边只表达顺序与条件**(对齐 Mastra),数据按字段名流动;**字段只声明,不做任何要求** —— 激活闸只剩结构闭合与活动装载两面,字段够不够是活动自己的事 |
|
||||
| **活动库** | 方法 —— 每件事怎么干 | 货架、契约面、范式、资产版本谱系、安装两审 |
|
||||
| **活动库** | 方法 —— 每件事怎么干 | **一区两格**:装进来的活动(货架、契约面、资产版本谱系、安装两审)与**配出来的审批活动**(审批模板:审批人看什么 / 怎么催 / 说什么,编排的审批点选一张)。活动**不再分标准/案例**(2026-07-29):业务分类是唯一的一维,业务模型一律案例模型 |
|
||||
| **工具箱** | 能力 —— 系统能对世界做什么 | 功能 / LLM / 人类三类工具目录、白名单授权、幂等口径、引用反查。**一律主显示中文名**,逻辑名退居副标 |
|
||||
| **数据域** | 对象 —— 企业运营什么 | 域与对象 schema、字段、放行规则、被谁引用。**行数据不在这里** —— 那是运营的事 |
|
||||
| **知识库** | 企业的资料与文档 | 规范、图纸、样例、外部材料。**待建**,现在是个占位区 |
|
||||
|
||||
@@ -105,6 +105,11 @@ repo/
|
||||
|---|---|
|
||||
| 交互层(工作台 + 治理台) | `apps/web`(features)+ `apps/api` 的 `interaction` / `message` / `human-tool` 模块(协议侧) |
|
||||
| 流程层(触发器 + 流程包/工作流) | `process`、`trigger` 模块 |
|
||||
> **2026-07-29 范式退役**:用户定「活动不再分 flow 和 loop,内部实现都是 Loop」——
|
||||
> `flow-engine` 模块整个删除,`paradigm` 字段从清单与 `activity_package`/`task` 两表退场,
|
||||
> 活动的业务模型只剩案例模型(CMMN + 说明书 + DMN)。本文提到 flow 范式的段落均为**历史记述**,
|
||||
> 按当日结构写就;今天的实况是:一种活动、一个引擎(`loop-engine`)。后果见 docs/debt.md。
|
||||
|
||||
| 引擎层(流程引擎 + 活动基座) | 流程引擎在 `process` 内;活动基座六件 = `ledger` / `memory` / `toolbox` / `llm` / `interaction` + 契约类型(@contracts);范式运行器 = `loop-engine` / `flow-engine` / `skill-engine`;任务运行时 = `task` |
|
||||
| 调用层(系统调用 · LLM 工具 · 人类工具 · 通道) | `toolbox`(功能工具/纯工具)、`llm`、`human-tool`、`channel` |
|
||||
| 基座层(数据 · 台账 · 记忆 · 工具箱 · 活动库 · 流程包 · 事件存储) | PostgreSQL 四 schema(§7)+ `event` / `ledger` / `memory` / `toolbox` / `activity-registry` / `process` 各自的 adapter |
|
||||
|
||||
Reference in New Issue
Block a user