saveThread method
Implementation
@override
Future<void> saveThread(Map<String, dynamic> thread) async {
final id = thread['id']?.toString();
if (id == null || id.isEmpty) {
throw ArgumentError('AI thread must include an id.');
}
_threads[id] = Map<String, dynamic>.from(thread);
}