graph LR
    ArgoWF["Argo Workflows<br/>workflow-controller + argoexec"]

    %% External Dependencies (Required)
    ArgoWF -->|"runtime platform<br/>CRDs, Pods, RBAC"| K8s["Kubernetes 1.25+"]
    ArgoWF -->|"artifact storage<br/>S3 API / 443 HTTPS"| S3["S3/MinIO<br/>(required for DSP)"]

    %% External Dependencies (Optional)
    ArgoWF -.->|"workflow archival<br/>TCP/5432"| PostgreSQL["PostgreSQL 14+<br/>(optional)"]
    ArgoWF -.->|"workflow archival<br/>TCP/3306"| MySQL["MySQL 8+<br/>(optional)"]

    %% Alternative Artifact Stores
    ArgoWF -.->|"alternative artifacts<br/>HTTPS/443"| GCS["Google Cloud Storage<br/>(alternative)"]
    ArgoWF -.->|"alternative artifacts<br/>HTTPS/443"| Azure["Azure Blob Storage<br/>(alternative)"]
    ArgoWF -.->|"alternative artifacts<br/>HTTPS/443"| AliOSS["Alibaba Cloud OSS<br/>(alternative)"]
    ArgoWF -.->|"alternative artifacts<br/>RPC/8020"| HDFS["HDFS<br/>(alternative)"]

    %% Internal RHOAI Dependencies
    DSPOperator["Data Science Pipelines<br/>Operator"] -->|"deploys & configures"| ArgoWF
    DSPOperator -->|"manages"| MinIO["MinIO<br/>(DSP-managed)"]
    MinIO ---|"default artifact repo"| ArgoWF

    %% Integration Points (inbound)
    DSPAPI["DSP API Server"] -->|"creates Workflow CRs"| ArgoWF

    %% Monitoring
    Prometheus["Prometheus"] -->|"scrapes metrics<br/>HTTP/9090"| ArgoWF

    %% Styling
    style ArgoWF fill:#4a90e2,stroke:#333,stroke-width:4px,color:#fff
    style K8s fill:#999,stroke:#333,color:#fff
    style S3 fill:#999,stroke:#333,color:#fff
    style PostgreSQL fill:#999,stroke:#333,color:#fff
    style MySQL fill:#999,stroke:#333,color:#fff
    style GCS fill:#999,stroke:#333,color:#fff
    style Azure fill:#999,stroke:#333,color:#fff
    style AliOSS fill:#999,stroke:#333,color:#fff
    style HDFS fill:#999,stroke:#333,color:#fff
    style DSPOperator fill:#7ed321,stroke:#333,color:#fff
    style MinIO fill:#7ed321,stroke:#333,color:#fff
    style DSPAPI fill:#7ed321,stroke:#333,color:#fff
    style Prometheus fill:#f5a623,stroke:#333,color:#fff
