Goal
Add a --dry-run global flag that validates a command invocation fully (resolving all
parameters and running input validators) without executing the business logic or touching
any external system.
Motivation
For read-only operations like export, a bad parameter means a bad result.
Dry-run lets agents build a call, fully validate it, and confirm the resolved parameters with the user before committing.
Task
A --dry-run boolean flag needs to be added to the root command so that it is available to
all subcommands automatically, with no per-subcommand implementation required.
In dry-run mode, all parameters should be resolved, and all validators should run, but the
actual business logic (GetRun) should not be called. The resolved parameter set should be
printed as JSON to stdout, with sensitive values redacted, and the process should exit
cleanly.
Dry-run state should be accessible in the context so that subcommand authors can implement
custom dry-run behavior if needed (e.g., for commands where parameter validation alone is not
sufficient).
Acceptance criteria
Goal
Add a
--dry-runglobal flag that validates a command invocation fully (resolving allparameters and running input validators) without executing the business logic or touching
any external system.
Motivation
For read-only operations like
export, a bad parameter means a bad result.Dry-run lets agents build a call, fully validate it, and confirm the resolved parameters with the user before committing.
Task
A
--dry-runboolean flag needs to be added to the root command so that it is available toall subcommands automatically, with no per-subcommand implementation required.
In dry-run mode, all parameters should be resolved, and all validators should run, but the
actual business logic (
GetRun) should not be called. The resolved parameter set should beprinted as JSON to stdout, with sensitive values redacted, and the process should exit
cleanly.
Dry-run state should be accessible in the context so that subcommand authors can implement
custom dry-run behavior if needed (e.g., for commands where parameter validation alone is not
sufficient).
Acceptance criteria
--dry-runis available as a global flag on all subcommands