import { render, screen } from '@testing-library/react'; import { MemoryRouter, Route, Routes } from 'react-router-dom'; import { beforeEach, describe, expect, it, vi } from 'vitest'; import { MainLayout } from '@/components/layout/MainLayout'; import { codingWorkspaceStore } from '@/stores/coding-workspace'; import { useProjectConfigStore } from '@/stores/project-config'; import { useSettingsStore } from '@/stores/settings'; import { createCodingProjectConfigV2 } from '@electron/coding-projects/project-config'; import type { CodingProjectAgent } from '@/types/coding-project'; const learningIpcMock = vi.hoisted(() => vi.fn()); const readyAgent: CodingProjectAgent = { id: 'agent-1', avatarId: 'avatar-01', roleName: '项目智能体', name: 'Builder', builtIn: false, enabled: true, model: { accountId: 'account-1', modelId: 'model-1', thinkingLevel: 'off' }, modelResolution: 'resolved', skillIds: [], responsibility: { mission: '完成项目工作', owns: [], boundaries: [], collaborators: [], principles: [], }, prompt: '', archivedAt: null, pinned: false, createdAt: '2026-09-06T00:00:00.000Z', updatedAt: '2026-09-06T00:00:00.000Z', }; vi.mock('@/components/layout/Sidebar', () => ({ Sidebar: ({ sidebarCollapsedOverride }: { sidebarCollapsedOverride?: boolean }) => (