Skip to content

[BUG][v0.0.7] DAG executor hardcodes sh -c, breaking command tasks on typical Windows setups #53151

@topwork-28

Description

@topwork-28

Project

cortex

Description

The DAG command executor invokes shell commands via Command::new("sh").arg("-c").arg(cmd). On standard Windows environments without a Unix shell in PATH, this fails before the task command can run.

System Information

Version: 0.1.0

## Operating System
OS: Windows 10/11
Arch: x86_64

## Build Environment
Rust: rustc 1.93.1 (01f6ddf75 2026-02-11)
Target: x86_64

Screenshots

https://github.com/techforgeworks-sudo/images/blob/main/8_40.png

Steps to Reproduce

  1. On Windows, create a DAG spec with a command task (example: command: echo Hello).
  2. Run cortex dag run --file tasks.yaml.
  3. Observe failure to execute the command.

Expected Behavior

Use platform-appropriate shell invocation on Windows (e.g., cmd /C or PowerShell) or a shell abstraction that supports both OS families.

Actual Behavior

Executor invokes sh, which may be unavailable on Windows hosts.

Additional Context

  • Hardcoded invocation: src/cortex-cli/src/dag_cmd/executor.rs (around lines 79-81).

Metadata

Metadata

Assignees

No one assigned

    Labels

    ideIssues related to IDEvalidValid issue

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions