fix(recall): prefer user-floor cache on reroll

This commit is contained in:
Youzini-afk
2026-04-30 03:58:08 +08:00
parent ae58537ac6
commit 7d827f80b7
5 changed files with 290 additions and 8 deletions

View File

@@ -1,6 +1,7 @@
import assert from "node:assert/strict";
import {
onMessageEditedController,
onMessageUpdatedController,
registerCoreEventHooksController,
} from "../host/event-binding.js";
@@ -38,6 +39,38 @@ import {
assert.equal(ignored?.detail?.reason, "lightweight-refresh-only");
}
{
let removedMessageIndex = null;
let invalidated = 0;
let rechecked = 0;
let refreshed = 0;
onMessageEditedController(
{
isMvuExtraAnalysisGuardActive: () => false,
removeMessageRecallRecord(messageIndex) {
removedMessageIndex = messageIndex;
},
invalidateRecallAfterHistoryMutation() {
invalidated += 1;
},
scheduleHistoryMutationRecheck() {
rechecked += 1;
},
refreshPersistedRecallMessageUi() {
refreshed += 1;
},
},
9,
{ source: "unit-test" },
);
assert.equal(removedMessageIndex, 9);
assert.equal(invalidated, 1);
assert.equal(rechecked, 1);
assert.equal(refreshed, 1);
}
{
const bindings = [];
const runtime = {