Skip to main content

Troubleshooting

”step type not yet implemented”

You used a step type that Replay does not recognise. Valid types: http, db, shell, print, loop, call, if.

”unknown field” during parsing

The YAML parser rejects keys that are not part of the workflow schema. This catches typos early.

”no command provided” for shell step

A shell step must include either command or commands:

“postgres DSN is not configured”

You need to set the PostgreSQL DSN. Either in the workflow config, the config file, or via environment variable:
Or in replay.yaml:

“redis requires a command”

Redis steps need a command array:

“invalid JSONPath” errors

JSONPath syntax can be tricky. Common mistakes: Enable debug mode to see the full response:

“command and commands are mutually exclusive”

Use either command (single) or commands (multiple), not both:

“query and command are mutually exclusive”

DB steps can have a query (PostgreSQL) or command (Redis), but not both:

“variable is required but not set”

The workflow’s config.validate section declares a required variable that was not provided. Set it via config.vars, an environment variable, or a config profile.

”variable is not a list” in loop

The foreach field references a variable that exists but is not an array:

Shell Command Timeout

If a command times out, increase the timeout value:

“fork/exec … no such file or directory”

Shell commands run via sh -c. If your system does not have sh (e.g., minimal Docker images), install it or use a distro that includes a shell.

Connection Refused for Postgres/Redis

Ensure your database services are running and reachable:
Remember that Replay’s Docker Compose uses port 5433 for Postgres.

”cycle detected” error

A call step is causing a recursive loop. This happens when a workflow calls itself — directly, through mutual recursion (A → B → A), or inside nested if/loop blocks. Check for:
Fix by removing the cycle or restructuring the composition.

”call depth exceeded” error

The call chain is deeper than the --max-call-depth limit (default 100):
Either increase the limit:
Or simplify the workflow composition to reduce nesting depth.

”debug” Output Not Showing

Pass the --debug flag or set config.http.debug: true:

Getting Help

  • Open an issue on GitHub
  • Check existing issues for similar problems
  • Include the workflow YAML and full error output when reporting a bug