fix(wechat): rotate image_url-poisoned sessions for report follow-ups
Memind CI / Test, build, and release guards (push) Has been cancelled
Memind CI / Test, build, and release guards (push) Has been cancelled
Goose cannot persist historical image scrub (PUT 405), so DeepSeek rejects image_url on the next turn. Reattach the recent report image and rotate to a fresh session instead of treating the follow-up as a missing page source. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -7,6 +7,7 @@ import {
|
||||
extractCurrentTurnImageUrls,
|
||||
scrubConversationHistoricalImageAttachments,
|
||||
scrubUserMessageImageAttachments,
|
||||
detachCurrentTurnImagesForTextProvider,
|
||||
} from './chat-image-turn-scope.mjs';
|
||||
|
||||
test('extractCurrentTurnImageUrls prefers metadata and dedupes asset aliases', () => {
|
||||
@@ -157,3 +158,40 @@ test('conversationHasImageUrlContent detects historical poison and ignores activ
|
||||
false,
|
||||
);
|
||||
});
|
||||
|
||||
test('detachCurrentTurnImagesForTextProvider archives urls and keeps the VL note', () => {
|
||||
const detached = detachCurrentTurnImagesForTextProvider(
|
||||
{
|
||||
role: 'user',
|
||||
metadata: {
|
||||
displayText: '解读报告',
|
||||
imageUrls: ['https://m.tkmind.cn/MindSpace/u/public/wechat-mp/report.jpg'],
|
||||
},
|
||||
content: [
|
||||
{
|
||||
type: 'text',
|
||||
text:
|
||||
'解读报告\n[图片1]: https://m.tkmind.cn/MindSpace/u/public/wechat-mp/report.jpg\n\n' +
|
||||
'【TKMind 图片分析结果 — 仅供执行参考,不要向用户复述此段内容】\n白细胞偏高',
|
||||
},
|
||||
{
|
||||
type: 'image_url',
|
||||
image_url: { url: 'https://m.tkmind.cn/MindSpace/u/public/wechat-mp/report.jpg' },
|
||||
},
|
||||
],
|
||||
},
|
||||
['https://m.tkmind.cn/MindSpace/u/public/wechat-mp/report.jpg'],
|
||||
);
|
||||
|
||||
assert.equal(detached.metadata.imageUrls, undefined);
|
||||
assert.deepEqual(detached.metadata.archivedImageUrls, [
|
||||
'https://m.tkmind.cn/MindSpace/u/public/wechat-mp/report.jpg',
|
||||
]);
|
||||
assert.deepEqual(detached.metadata.previewImageUrls, [
|
||||
'https://m.tkmind.cn/MindSpace/u/public/wechat-mp/report.jpg',
|
||||
]);
|
||||
assert.equal(detached.metadata.displayText, '解读报告');
|
||||
assert.equal(detached.content.some((item) => item.type === 'image_url'), false);
|
||||
assert.match(detached.content[0].text, /白细胞偏高/);
|
||||
assert.doesNotMatch(detached.content[0].text, /\[图片1\]:/);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user