Class: Smith::Workflow::Graph::RuntimeReadinessReportBuilder

Inherits:
Object
  • Object
show all
Extended by:
Dry::Initializer
Defined in:
lib/smith/workflow/graph/runtime_readiness_report_builder.rb

Instance Method Summary collapse

Instance Method Details

#callObject



15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/smith/workflow/graph/runtime_readiness_report_builder.rb', line 15

def call
  topology_report = graph.validate
  bindings = RuntimeBindingDiagnostics.new(graph)
  nested = NestedReadinessDiagnostics.new(graph, reports:, cycle_transitions:)
  diagnostics = [*bindings.to_a, *nested.to_a]
  RuntimeReadinessReport.new(
    workflow_class: workflow_label,
    topology_report: topology_report,
    runtime_diagnostics: diagnostics,
    metrics: metrics(topology_report, diagnostics, bindings, nested)
  )
end