三面拆分⑦⑧:触发器一分为二 —— 规则定义入设计·流程包,起单开关入运营·任务

定义面可改名/改目标包/改三类规则/改起单装配;编辑期的装配行走本地状态,
存盘才解析 —— 派生自已解析 mapping 的话,刚添加的空行会被当场滤掉,人打不出第一个字。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KeDBx2PHLavbURXB8LJJ7m
This commit is contained in:
2026-07-27 21:19:42 +08:00
co-authored by Claude Fable 5
parent de283acbdb
commit 6bb4675893
4 changed files with 428 additions and 53 deletions
@@ -41,7 +41,7 @@ import { packageToGraph } from '@web-shared/gov/flow/pkg-to-graph.ts';
import { mergeGraphIntoPackage } from '@web-shared/gov/flow/graph-to-pkg.ts';
import type { FlowGraph, FlowNode } from '@web-shared/gov/flow/flow-layout.ts';
import type { SpPosition } from '@web-shared/gov/flow/support.tsx';
import { TriggersHome } from '@features/gov-trigger';
import { TriggerRulesHome } from '@features/gov-trigger';
export type HomeProps = { tab: string; nav: Nav };
@@ -60,7 +60,7 @@ function edgeCheckOf(pkg: ProcessPackage, report: ClosureReport | undefined) {
export function WorkflowsHome({ tab, nav }: HomeProps) {
// 调起规则 = 触发器的**定义面**:谁调起这条流,与流程包一处维护(启停在运营中心)
if (tab === 'rules') return <TriggersHome tab={tab} nav={nav} />;
if (tab === 'rules') return <TriggerRulesHome nav={nav} />;
return <PackagesHome tab={tab} nav={nav} />;
}
@@ -825,12 +825,26 @@ function Orchestrator({
title={t.name}
sub={t.spec.kind === 'event' ? t.spec.rule : t.spec.kind === 'registration' ? TRIGGER_KIND_LABEL.registration : TRIGGER_KIND_LABEL.periodic}
cols={[{ k: '状态', v: t.enabled ? '已启用' : '已停用' }]}
right={
<button
className="g-btn"
onClick={(e) => {
e.stopPropagation();
nav.jump('workflows', 'rules');
}}
>
改规则
</button>
}
onClick={() => nav.jump('workflows', 'rules', { k: 'trigger', id: t.id })}
/>
))}
</NList>
) : (
<Note>暂无触发器绑定 —— 该版本只能由已绑定的旧版本或登记起单。</Note>
<Note>
还没有触发器指向这条流 —— 它定义得再完整,也没人调得起来。去
<b>调起规则</b>页签配一条(周期 / 事件 / 登记三选一)。
</Note>
)}
</Sec>
</>