handleKbMessage method
Implementation
void handleKbMessage(PupauMessage message) {
bool isFirstLlmMessage =
incomingMessages.firstWhereOrNull(
(PupauMessage message) =>
message.sourceType == SourceType.llm &&
message.type != MessageType.kb,
) ==
null;
if (isFirstLlmMessage) {
kbReferencesBackup = message.kbReferences;
groundingSourcesBackup = message.liveGroundingSources;
} else {
if (kbReferencesBackup.isNotEmpty) addKbBackupToMessage(message);
if (groundingSourcesBackup.isNotEmpty) {
addGroundingSourcesBackupToMessage(message);
}
updateSSEMessages(message);
}
}