Skip to content
Proud to collaborate with Microsoft for Startups

dgi.synapse.build_dag ​

Construct layered DAG via topological sort

Construct a layered DAG from operations and their dependencies.

The fourth synapse. Uses deterministic topological sort to arrange operations into parallel layers, then uses AI for human-readable naming.

Inputs:

  • operations: list from dgi.synapse.decompose (required)
  • mappings: list from dgi.synapse.map_capabilities (required)
  • parameter_flow: dict from decompose (required)
  • understanding: dict from dgi.synapse.understand (required)
  • all_missing_params: list from map_capabilities (required)

Outputs (terminal state_data):

  • virtual_workflow: dict with name, summary, layers, edges, parameters
  • input_tokens: int
  • output_tokens: int

Plugin required: context.get_plugin("ai") — for naming only

Overview ​

PropertyValue
Workflow typeAtomic
LibraryApp-dgi
Version1.0

Input Schema ​

FieldTypeRequiredDefaultDescription
connection_uuiduuidNo—Explicit AI CloudConnection UUID — threaded to ai.chat.complete so synapse uses the org's resolved connection (org-context-free)
modelstringNo—Optional model override threaded to ai.chat.complete
operationsjsonYes—Operations from decompose
mappingsjsonYes—Mappings from map_capabilities
parameter_flowjsonYes—Parameter flow from decompose
understandingjsonYes—Understanding from understand
all_missing_paramsjsonNo—Missing params from map_capabilities

Output Schema ​

FieldTypeRequiredDefaultDescription
input_tokensintegerNo——
output_tokensintegerNo——
virtual_workflowdictNo——
all_missing_paramsjsonNo——
connection_uuiduuidNo——
mappingsjsonNo——
modelstringNo——
operationsjsonNo——
parameter_flowjsonNo——
understandingjsonNo——
failure_reasonstringNo——
failure_typestringNo——
failed_actionstringNo——
failed_at_statestringNo——
failed_stepstringNo——
failed_layerstringNo——
errorstringNo——
error_typestringNo——

States ​

StateInitialTerminalSuccessAuto-advanceDescription
pendingYesNo—execute—
completedNoYesYes——
failedNoYesNo——

State Diagram ​

Transitions ​

FromActionToDescription
pendingexecutecompleted—
* (any state)failfailed—

API Usage ​

bash
POST /api/workflows/start
Content-Type: application/json

{
  "workflow_type": "dgi.synapse.build_dag",
  "initial_data": {
    "operations": "value",
    "mappings": "value",
    "parameter_flow": "value",
    "understanding": "value"
  }
}