feat(desktop): add AI session creation and history

This commit is contained in:
2026-07-25 23:56:49 +08:00
parent 562c6b1bdb
commit 28e0ea10e5
3 changed files with 34 additions and 11 deletions

View File

@@ -77,7 +77,13 @@ const markdownLayout = await page.evaluate(() => {
await page.locator('.markdown-editor-page .content-heading .arco-btn').click()
await page.locator('.channel-rail button[title="AI"]').click()
await page.waitForSelector('.expert-chips')
const experts = await page.locator('.expert-chips span').count()
const experts = await page.locator('.expert-chips button').count()
const aiSwitches = await page.locator('.ai-page-switch .arco-btn').count()
await page.screenshot({ path: 'test-results/app-ai-new.png', fullPage: true })
await page.locator('.ai-page-switch .arco-btn').nth(1).click()
await page.waitForSelector('.ai-history-page')
const aiHistory = await page.locator('.ai-history-page').count()
await page.screenshot({ path: 'test-results/app-ai-history.png', fullPage: true })
await page.locator('.profile-trigger').click()
await page.getByText('修改资料').waitFor()
const profileMenu = await page.getByText('修改资料').count()
@@ -94,8 +100,8 @@ if (taskModal !== 1) failures.push('task editor did not open')
if (exploreSources !== 2 || exploreDetail !== 1) failures.push(`explore reader did not render: ${JSON.stringify({ exploreSources, exploreDetail })}`)
if (documents !== 1) failures.push(`expected one document, got ${documents}`)
if (documentActions !== 2 || markdownEditor !== 1) failures.push(`document actions did not render: ${JSON.stringify({ documentActions, markdownEditor })}`)
if (experts !== 1) failures.push(`expected one AI expert, got ${experts}`)
if (experts !== 1 || aiSwitches !== 2 || aiHistory !== 1) failures.push(`AI session pages did not render: ${JSON.stringify({ experts, aiSwitches, aiHistory })}`)
if (profileMenu !== 1) failures.push('profile menu did not open')
if (errors.length) failures.push(`console errors: ${errors.join('; ')}`)
console.log(JSON.stringify({ home, documents, documentActions, markdownEditor, markdownLayout, experts, taskModal, exploreSources, exploreDetail, profileMenu, errors }, null, 2))
console.log(JSON.stringify({ home, documents, documentActions, markdownEditor, markdownLayout, experts, aiSwitches, aiHistory, taskModal, exploreSources, exploreDetail, profileMenu, errors }, null, 2))
if (failures.length) throw new Error(failures.join('\n'))