how can we make sure that the input is preserved?
Since it does not like string being given when the function definition has list[str]
After digging deep, giving the script definition starts as below
@click.command()
@click.option('--test_multiple', type=str, required=False, multiple=True, help='Test multiple values')
def test_pipeline(test_multiple: list[str] | None) -> None:
....
and looking at the Args stored in the HyperParams of the controller task, it stores the Args value as '(test1,)' and the type as STRING and maybe that is why the script is erroring out when the pipeline is running in the remotely.