validated function
Wraps handler so arguments that do not match inputSchema answer
tool_input_validation_error without reaching it.
Implementation
AppductToolHandler validated(
Map<String, Object?> inputSchema,
AppductToolHandler handler,
) {
if (!appductEnabled) return handler;
final schema = Schema.fromMap(inputSchema);
return (args, context) {
final errors = schema.validateSync(args);
if (errors.isNotEmpty) {
throw ToolFailure(
'tool_input_validation_error',
errors.map((e) => e.toErrorString()).join('; '),
);
}
return handler(args, context);
};
}