validateInput method
Validate input before execution and permission checks.
Implementation
@override
ValidationResult validateInput(Map<String, dynamic> input) {
if (input['file_path'] == null) {
return const ValidationResult.invalid('file_path is required');
}
final edits = input['edits'];
if (edits == null || edits is! List || edits.isEmpty) {
return const ValidationResult.invalid('edits must be a non-empty array');
}
for (var i = 0; i < edits.length; i++) {
final e = edits[i] as Map<String, dynamic>;
if (e['old_text'] == null || e['new_text'] == null) {
return ValidationResult.invalid('Edit $i missing old_text or new_text');
}
}
return const ValidationResult.valid();
}