In v0.3.0, ExecuteAbilityAbility returns error messages in a format that ToolsHandler cannot parse, causing all error messages from ExecuteAbilityAbility to be replaced with the generic fallback: "An error occurred while executing the tool."
It seems that ExecuteAbilityAbility.php returns errors as:
array(
'success' => false,
'error' => 'Error message string'
)
But ToolsHandler.php expects errors in this format:
array(
'error' => array(
'message' => 'Error message'
)
)
As seen here in the default fallback message triggering here:
$error_message = $result['error']['message'] ?? 'An error occurred while executing the tool.';
Steps to reproduce
- Call any ability that returns an error, like an outpu validation error
- See that instead of the actual error message, you get the generic message