---
name: dag_definition
lang: go
domain: core
version: "1.0.0"
algebraic: product
definition: |
  type DagDefinition struct {
      Name        string
      Description string
      Group       string
      Type        string
      WorkingDir  string
      Shell       string
      Env         map[string]string
      Schedule    []string
      Steps       []DagStep
      HandlerOn   DagHandlers
      Tags        []string
      TimeoutSec  int
      FilePath    string
  }
description: "Definicion completa de un workflow DAG parseada desde YAML compatible con Dagu. Contiene steps, handlers de ciclo de vida, variables de entorno, schedule y metadatos del flujo."
tags: [dag, workflow, yaml, dagu, definition]
uses_types: [dag_step_go_core, dag_handlers_go_core]
file_path: "functions/core/dag_definition.go"
---

## Notas

Tipo producto. Type puede ser "graph" (ejecucion paralela por niveles topologicos) o vacio (cadena secuencial). Schedule es siempre una lista de strings (normalizado desde string o lista en el YAML). FilePath se rellena opcionalmente por el caller para saber el origen del archivo.
