package infra

import "time"

// DagRun represents one execution of a DAG workflow.
type DagRun struct {
	ID         string
	DagName    string
	DagPath    string
	Status     string // pending, running, success, failed, cancelled
	StartedAt  time.Time
	FinishedAt time.Time
	Trigger    string // manual, cron, api
	Error      string
}

// DagStepResult represents the outcome of one step within a DagRun.
type DagStepResult struct {
	ID         string
	RunID      string
	StepName   string
	Status     string // pending, running, success, failed, skipped
	ExitCode   int
	Stdout     string
	Stderr     string
	StartedAt  time.Time
	FinishedAt time.Time
	DurationMs int64
	Error      string
}
