let create ?init ?ensure definition = {     definition;     init =       Option.value init         ~default:(Program.shf "echo 'Tool %s: default init'"                     (Definition.to_string definition));     ensure =       Option.value_map         ensure         ~f:KEDSL.forget_product         ~default:(workflow_node nothing                     ~name:(sprintf "%s-ensured"                              (Definition.to_string definition)));   }