阅读时间:1 分钟
0 字

端到端流程 ​

本页用三条主链路说明服务如何协作。图中的服务是目标设计,当前尚未实现。

模型发布 ​

mermaid
%%{init: {"flowchart": {"curve": "linear"}}}%%
sequenceDiagram
    participant U as 本体设计师
    participant API as API 服务
    participant REG as Registry
    participant POL as Policy
    participant EVT as 事件总线
    participant RUN as Runtime
    U->>API: 提交模型草稿
    API->>REG: 保存草稿
    REG->>REG: Schema、映射、兼容性、影响检查
    REG->>POL: 校验发布权限
    POL-->>REG: 决策与约束
    REG->>REG: 审批并生成不可变快照
    REG->>EVT: ModelPublished
    EVT-->>RUN: 失效旧缓存并预热新版本
    REG-->>API: 版本、摘要、审批记录

发布失败不会改变当前生产版本。Runtime 按请求选择明确版本或租户默认已发布版本。

语义读取 ​

mermaid
%%{init: {"flowchart": {"curve": "linear"}}}%%
sequenceDiagram
    participant C as 应用或 Agent
    participant E as API / MCP
    participant P as Policy
    participant R as Runtime
    participant I as Integration
    participant S as 源系统
    participant L as Lineage
    C->>E: 实体或关系查询
    E->>E: 验证身份、租户、限流
    E->>R: 语义请求 + traceId
    R->>P: 资源与动作决策
    P-->>R: 允许、字段、实例、预算约束
    R->>R: 逻辑计划与物理计划
    R->>I: 有界执行计划
    I->>S: 下推查询
    S-->>I: 结果与源端元数据
    I-->>R: 标准化结果与证据引用
    R->>L: 实际步骤与动态血缘事件
    R-->>E: 语义实体、版本、新鲜度、traceId
    E-->>C: 授权后的结果

任何不能安全应用权限或资源预算的计划都在访问源数据前失败。

审批回写 ​

mermaid
%%{init: {"flowchart": {"curve": "linear"}}}%%
sequenceDiagram
    participant C as 应用或 Agent
    participant E as API / MCP
    participant A as Action
    participant P as Policy
    participant H as 审批系统
    participant I as Integration
    participant S as 源系统
    participant L as Lineage / Evidence
    C->>E: Action 请求 + idempotencyKey
    E->>A: 已验证身份、租户、traceId
    A->>A: 创建 executionId,校验输入与规则
    A->>P: 二次授权
    P-->>A: 决策与审批要求
    A->>H: 发起审批
    H-->>A: 审批通过
    A->>P: 执行前复验
    A->>A: 持久化状态与 Outbox
    A->>I: 回写命令、幂等键、executionId
    I->>S: 调用业务接口
    S-->>I: 流水号或结果
    I-->>A: 标准结果与证据引用
    A->>S: 必要时查询核验
    A->>L: 规则、授权、审批、步骤、核验证据
    A-->>E: 最终状态或查询地址
    E-->>C: executionId、状态、traceId

如果响应丢失,Action 进入结果未知并核验;不会因为一次超时就直接重放非幂等命令。