import '../models/habit.dart'; /// XOR: build → protocol_id (only); break → break_protocol_id (only). void assertXorProtocol({ required HabitType type, required String? protocolId, required String? breakProtocolId, }) { if (type == HabitType.build) { if (protocolId == null || breakProtocolId != null) { throw ArgumentError( 'build habit requires protocol_id and no break_protocol_id'); } } else { if (breakProtocolId == null || protocolId != null) { throw ArgumentError( 'break habit requires break_protocol_id and no protocol_id'); } } }