fix(page-data): trust live API smoke and WeChat survey submit compat

Stop blocking WeChat delivery when Page Data insert works but publish
quota blocks h5_publish_records; fix smoke URL missing /api; patch survey
radios for WeChat X5 and detect dataset constants in admin pages.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
john
2026-07-12 22:42:47 +08:00
parent 2f7bc3b6e4
commit 16fd99e8ba
10 changed files with 244 additions and 75 deletions
+13
View File
@@ -3,6 +3,7 @@ import test from 'node:test';
import {
buildSmokeInsertRow,
extractInjectedPageIdFromHtml,
normalizePageDataApiBase,
} from './page-data-delivery-assess.mjs';
test('extractInjectedPageIdFromHtml reads injected pageId', () => {
@@ -13,6 +14,18 @@ test('extractInjectedPageIdFromHtml reads injected pageId', () => {
assert.equal(extractInjectedPageIdFromHtml(html), 'page-abc');
});
test('extractInjectedPageIdFromHtml reads unquoted pageId keys', () => {
const html =
'<script>window.__MINDSPACE_PAGE_DATA__={pageId:"page-unquoted",accessMode:"public"};</script>';
assert.equal(extractInjectedPageIdFromHtml(html), 'page-unquoted');
});
test('normalizePageDataApiBase appends /api to public base url', () => {
assert.equal(normalizePageDataApiBase('https://m.tkmind.cn'), 'https://m.tkmind.cn/api');
assert.equal(normalizePageDataApiBase('https://m.tkmind.cn/api'), 'https://m.tkmind.cn/api');
assert.equal(normalizePageDataApiBase('/api'), '/api');
});
test('buildSmokeInsertRow fills insert columns', () => {
const row = buildSmokeInsertRow(
{