swamp workflow validate should check step inputs against method's required arguments
Opened by 4chems · 4/9/2026· Shipped 4/9/2026
Problem Statement
swamp workflow validate checks YAML structure, CEL expression syntax, and model existence — but it does not resolve CEL expressions or match step inputs: against the method's JSON schema at validation time.
This means a workflow with a missing required method argument passes validation but fails immediately at runtime with:
Method arguments validation failed: Invalid input: expected string, received undefined at "field_name"This is a silent footgun — the workflow appears valid but will always fail on the first run.
Proposed Solution
Add a validation step that cross-checks each step's inputs: block against the method's arguments.required fields from the model type schema. For steps where the input value is a static string (not a CEL expression), the check can verify the field is present. For CEL expressions, at minimum flag that a required field has no corresponding input key at all.
Alternatives Considered
Manual workaround: run swamp model type describe <type> --json | jq '.methods[] | select(.name == "method") | .arguments.required' before running a new workflow for the first time and cross-check against the workflow YAML manually.
Environment
- swamp version: 20260409.030033.0-sha.07dae003
- OS: macOS Darwin 25.3.0
Shipped
Click a lifecycle step above to view its details.
Sign in to post a ripple.