|
I don't think it requires a ton of UX research, though some validation with users such as Adam Buxton would help to make sure we're moving in the right direction.
But if we look at the message, even in the context of Puppet's historically bad track record at producing helpful errors (whitespace added for readabilty):
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Resource Statement, Evaluation Error: Error while evaluating a Function Call, 'lookup' expects one of: (NameType = Variant[String, Array[String]] name, ValueType = Type value_type?, MergeType = Variant[String[1, default], Hash[String, Scalar]] merge?) rejected: expects between 1 and 3 arguments, got 4
Adam is an expert Puppet user and I am ... somewhat less than that, but not a newbie, but I have no idea what that message is telling us to do.
IMO it'd be way better to simply conceal everything except the manifest line number and position and say "something went wrong with the type system", and maybe log the full error server-side, rather than expose the guts of it without a path to action.
|