Skip to content

Feature: first-class cross-platform payload transport for script steps #18

Description

@e-s-gh

Summary

Script steps currently pass structured upstream data as rendered command-line arguments (for example, --evaluations <huge JSON>). This is fragile cross-platform, especially on Windows where command-line length limits are lower.

We validated this in real workflow runs where the same logical step worked only after rewriting large inline JSON args to temp-file based input (--evaluations-file).

Why this is platform-level (not workflow-specific)

Any workflow that feeds large structured payloads into script steps can hit the same failure mode. Workflow authors should not have to implement custom argument-size workarounds.

Evidence

From recent logs:

  • docs-eval-run-10-final.log: validator/analyst invoked with inline --evaluations <large-json> payload.
  • docs-eval-run-10-hardened.log: same run succeeds after rewriting to --evaluations-file with temp files.

Requested feature

Introduce first-class, generic script payload transport in Conductor, e.g. one or more of:

  1. stdin_json (rendered object written to process stdin)
  2. managed temp artifact handoff (engine-owned temp file path injection)
  3. automatic large-arg spillover that is argument-name agnostic (not tied to a specific flag name)

Acceptance criteria

  • Works uniformly on Windows/macOS/Linux.
  • No dependency on argument names like --evaluations.
  • Clear precedence/behavior when both inline args and managed transport are configured.
  • Temp artifact lifecycle is deterministic and cleaned up.
  • Add tests covering large payloads and Windows path/length behavior.

Notes

Current local mitigation is executor-level rewrite for --evaluations, which is pragmatic but workflow-shaped. This issue tracks the generic long-term design.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:executorAgent and script execution, templates, outputenhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions