Rules and return codes

How is it determined what’s the return value of a condition if there is no return statement?

I would expect the wrapper to be enabled by default.
If we fix the problem with script conditions, there shouldn‘t be any major issues with actions. Yes, they can returna value, but when having 20 lines of code, its very unclear what‘s returned when there is no return statement.
And ultimately, the wrappr allows the use of return, class, function, let and const keywords which allows writing much more powerful and cleaner code.

Maybe we can do something with the upgrade tool there, or we detect whether a script is an action or a condition and only apply the wrapper if its an action.

That‘s wrong. You need to use the return keyword.

That‘s not correct. There was no need for declaring a return value.
Think of it like the following for script conditions:
We eval(‚script condition‘) and check whether the result is true. Without the wrapper, we eval a condition that returns a boolean. With the wrapper we eval a self-invoking function that contains some conditional code, but returns nothing as there is no return used.

It‘s not inserted, it‘s just the above difference in what is evaluated.