8755928405
Quick Plaza publish resolves existing chat pages by session/message id; production remote adapter rejected the RPC because the binding contract omitted this method. Co-authored-by: Cursor <cursoragent@cursor.com>
17 lines
784 B
JavaScript
17 lines
784 B
JavaScript
import test from 'node:test';
|
|
import assert from 'node:assert/strict';
|
|
import { slugFromPageTitle } from './mindspace-chat-plaza.mjs';
|
|
import { MINDSPACE_SERVER_ADAPTER_BINDINGS } from './mindspace-server-adapter-contract.mjs';
|
|
|
|
test('adapter contract exposes findPageBySourceMessage for quick plaza', () => {
|
|
assert.ok(MINDSPACE_SERVER_ADAPTER_BINDINGS.pageService.includes('findPageBySourceMessage'));
|
|
});
|
|
|
|
test('slugFromPageTitle falls back to page when title has no ascii', () => {
|
|
assert.equal(slugFromPageTitle('春江花月夜', '1c99b83b-0454-474f-a5d2-129d34506a32'), 'page-1c99b83b');
|
|
});
|
|
|
|
test('slugFromPageTitle keeps ascii slug and page suffix', () => {
|
|
assert.equal(slugFromPageTitle('Travel Guide 2026', 'abcd-1234-5678-9012'), 'travel-guide-2026-abcd1234');
|
|
});
|