mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
Do not regenerate group greeting messages in tainted chats
This commit is contained in:
@ -226,6 +226,7 @@ export async function getGroupChat(groupId, reload = false) {
|
|||||||
const chat_id = group.chat_id;
|
const chat_id = group.chat_id;
|
||||||
const data = await loadGroupChat(chat_id);
|
const data = await loadGroupChat(chat_id);
|
||||||
let freshChat = false;
|
let freshChat = false;
|
||||||
|
let metadata = group.chat_metadata ?? {};
|
||||||
|
|
||||||
await loadItemizedPrompts(getCurrentChatId());
|
await loadItemizedPrompts(getCurrentChatId());
|
||||||
|
|
||||||
@ -234,7 +235,8 @@ export async function getGroupChat(groupId, reload = false) {
|
|||||||
chat.splice(0, chat.length, ...data);
|
chat.splice(0, chat.length, ...data);
|
||||||
await printMessages();
|
await printMessages();
|
||||||
} else {
|
} else {
|
||||||
if (group && Array.isArray(group.members)) {
|
freshChat = !metadata.tainted;
|
||||||
|
if (group && Array.isArray(group.members) && freshChat) {
|
||||||
for (let member of group.members) {
|
for (let member of group.members) {
|
||||||
const character = characters.find(x => x.avatar === member || x.name === member);
|
const character = characters.find(x => x.avatar === member || x.name === member);
|
||||||
if (!character) {
|
if (!character) {
|
||||||
@ -253,12 +255,10 @@ export async function getGroupChat(groupId, reload = false) {
|
|||||||
addOneMessage(mes);
|
addOneMessage(mes);
|
||||||
await eventSource.emit(event_types.CHARACTER_MESSAGE_RENDERED, (chat.length - 1), 'first_message');
|
await eventSource.emit(event_types.CHARACTER_MESSAGE_RENDERED, (chat.length - 1), 'first_message');
|
||||||
}
|
}
|
||||||
}
|
|
||||||
await saveGroupChat(groupId, false);
|
await saveGroupChat(groupId, false);
|
||||||
freshChat = true;
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let metadata = group.chat_metadata ?? {};
|
|
||||||
updateChatMetadata(metadata, true);
|
updateChatMetadata(metadata, true);
|
||||||
|
|
||||||
if (reload) {
|
if (reload) {
|
||||||
|
Reference in New Issue
Block a user