fix: guard WeChat Page Data delivery with Aider review
Memind CI / Test, build, and release guards (push) Has been cancelled
Memind CI / Test, build, and release guards (push) Has been cancelled
This commit is contained in:
@@ -16,6 +16,7 @@ import {
|
||||
sanitizeWechatAgentOutboundText,
|
||||
loadWechatMpConfig,
|
||||
maybeAttachPublishedHtmlLink,
|
||||
isWechatPageDataTask,
|
||||
shouldRetryHtmlGenerationReply,
|
||||
shouldForceNewWechatAgentSession,
|
||||
splitWechatText,
|
||||
@@ -332,6 +333,21 @@ test('Page Data requests always rotate away from an existing WeChat route', () =
|
||||
assert.equal(shouldForceNewWechatAgentSession({ kind: 'chat.general' }, '换新会话'), true);
|
||||
});
|
||||
|
||||
test('WeChat Page Data repair intent receives the guarded repair workflow', () => {
|
||||
assert.equal(isWechatPageDataTask('提交失败,数据没有保存成功'), true);
|
||||
assert.equal(isWechatPageDataTask('修复问卷的 Page Data 绑定'), true);
|
||||
assert.equal(isWechatPageDataTask('继续聊德川家康'), false);
|
||||
|
||||
const prompt = buildWechatAgentPrompt({
|
||||
msgType: 'text',
|
||||
agentText: '提交失败,数据没有保存成功',
|
||||
});
|
||||
assert.match(prompt, /Page Data 修复要求/);
|
||||
assert.match(prompt, /load_skill.*page-data-collect/);
|
||||
assert.match(prompt, /缺表、dataset 未注册/);
|
||||
assert.match(prompt, /未通过前不要发送链接/);
|
||||
});
|
||||
|
||||
test('buildWechatAgentPrompt requires docx generation before html when Word download is requested', () => {
|
||||
const prompt = buildWechatAgentPrompt({
|
||||
msgType: 'text',
|
||||
@@ -1159,12 +1175,21 @@ test('loadWechatMpConfig requires full config and enable flag', () => {
|
||||
assert.equal(config.bindPath, '/auth/wechat/authorize?intent=login');
|
||||
assert.equal(config.requireFreshPageThumbnail, true);
|
||||
assert.equal(config.repairFreshPageThumbnail, false);
|
||||
assert.equal(config.pageDataAiderReviewEnabled, false);
|
||||
assert.deepEqual(config.pageDataAiderReviewUsers, []);
|
||||
assert.deepEqual(config.generatedImagePublicBaseUrls, [
|
||||
'https://example.com',
|
||||
'https://img.example.com',
|
||||
]);
|
||||
assert.equal(loadWechatMpConfig({ H5_WECHAT_MP_FRESH_PAGE_THUMBNAILS: '0' }).requireFreshPageThumbnail, false);
|
||||
assert.equal(loadWechatMpConfig({ H5_WECHAT_MP_FRESH_THUMBNAIL_REPAIR: '1' }).repairFreshPageThumbnail, true);
|
||||
assert.deepEqual(
|
||||
loadWechatMpConfig({
|
||||
H5_WECHAT_MP_PAGE_DATA_AIDER_REVIEW_ENABLED: '1',
|
||||
H5_WECHAT_MP_PAGE_DATA_AIDER_REVIEW_USERS: 'wx_test, user-2',
|
||||
}).pageDataAiderReviewUsers,
|
||||
['wx_test', 'user-2'],
|
||||
);
|
||||
});
|
||||
|
||||
test('verifyWechatMpSignature accepts valid signature', () => {
|
||||
|
||||
Reference in New Issue
Block a user