Skip to content

Latest commit

 

History

History
64 lines (50 loc) · 3.49 KB

File metadata and controls

64 lines (50 loc) · 3.49 KB

Aevatar.Workflow.Projection

workflow 领域的 projection/readmodel 实现。当前 durable materialization 已显式拆分为 authority current-state replica 和 derived artifacts:

  • authority:WorkflowRunGAgent + WorkflowRunState + root committed events
  • current-state replica:WorkflowExecutionCurrentStateDocument
  • durable artifacts:report / timeline / graph / actor binding
  • session observation:AGUI / live workflow run events

主链

%%{init: {"maxTextSize": 100000, "flowchart": {"useMaxWidth": false, "nodeSpacing": 10, "rankSpacing": 50}, "themeVariables": {"fontSize": "10px"}}}%%
flowchart LR
  RUN["WorkflowRunGAgent committed observation"]
  CUR["WorkflowExecutionCurrentStateProjector"]
  REP["WorkflowRunInsightReportArtifactProjector"]
  TL["WorkflowRunTimelineArtifactProjector"]
  GRA["WorkflowRunGraphArtifactProjector"]
  AGUI["WorkflowExecutionRunEventProjector"]
  CURDOC["Current-State Document"]
  REPDOC["WorkflowRunInsightReportDocument"]
  TLDOC["WorkflowRunTimelineDocument"]
  GRAPH["Graph Store"]
  HUB["ProjectionSessionEventHub<WorkflowRunEventEnvelope>"]

  RUN --> CUR --> CURDOC
  RUN --> REP --> REPDOC
  RUN --> TL --> TLDOC
  RUN --> GRA --> GRAPH
  RUN --> AGUI --> HUB
Loading

组成

durable materialization

session observation

shared artifact support

关键约束

  • 不存在 WorkflowRunInsightGAgent secondary chain
  • current-state 只承认 actor-scoped current-state replica
  • report/timeline/graph 明确属于 derived durable artifacts
  • current-state/report/timeline/graph 都直接消费 root committed observation
  • session release 不会停止 durable materialization
  • session activation 只保留 rootActorId + commandId
  • graph 直接读取 graph store,不再从 report document 派生