From 2b91fdbc7f84939471a49b3fa0bc1f1ddd7e5eaf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=87=E6=BA=AF?= Date: Thu, 29 Jan 2026 04:04:52 -0800 Subject: [PATCH 1/5] fix model info not updating on top right banner --- packages/cli/src/ui/components/AppHeader.tsx | 4 +++- packages/cli/src/ui/components/MainContent.tsx | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/cli/src/ui/components/AppHeader.tsx b/packages/cli/src/ui/components/AppHeader.tsx index e37d4aef1..97ad33890 100644 --- a/packages/cli/src/ui/components/AppHeader.tsx +++ b/packages/cli/src/ui/components/AppHeader.tsx @@ -9,6 +9,7 @@ import { Header } from './Header.js'; import { Tips } from './Tips.js'; import { useSettings } from '../contexts/SettingsContext.js'; import { useConfig } from '../contexts/ConfigContext.js'; +import { useUIState } from '../contexts/UIStateContext.js'; interface AppHeaderProps { version: string; @@ -17,10 +18,11 @@ interface AppHeaderProps { export const AppHeader = ({ version }: AppHeaderProps) => { const settings = useSettings(); const config = useConfig(); + const uiState = useUIState(); const contentGeneratorConfig = config.getContentGeneratorConfig(); const authType = contentGeneratorConfig?.authType; - const model = config.getModel(); + const model = uiState.currentModel; // Use currentModel from UIState instead of config.getModel() const targetDir = config.getTargetDir(); const showBanner = !config.getScreenReader(); const showTips = !(settings.merged.ui?.hideTips || config.getScreenReader()); diff --git a/packages/cli/src/ui/components/MainContent.tsx b/packages/cli/src/ui/components/MainContent.tsx index db66607dd..bf3ba4e31 100644 --- a/packages/cli/src/ui/components/MainContent.tsx +++ b/packages/cli/src/ui/components/MainContent.tsx @@ -32,7 +32,7 @@ export const MainContent = () => { return ( <> , ...uiState.history.map((h) => ( From 438ae0bc0f618183d027268d6802c99888a809f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=87=E6=BA=AF?= Date: Thu, 29 Jan 2026 04:19:49 -0800 Subject: [PATCH 2/5] remove useless comment --- packages/cli/src/ui/components/AppHeader.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/cli/src/ui/components/AppHeader.tsx b/packages/cli/src/ui/components/AppHeader.tsx index 97ad33890..ba044d10d 100644 --- a/packages/cli/src/ui/components/AppHeader.tsx +++ b/packages/cli/src/ui/components/AppHeader.tsx @@ -22,7 +22,7 @@ export const AppHeader = ({ version }: AppHeaderProps) => { const contentGeneratorConfig = config.getContentGeneratorConfig(); const authType = contentGeneratorConfig?.authType; - const model = uiState.currentModel; // Use currentModel from UIState instead of config.getModel() + const model = uiState.currentModel; const targetDir = config.getTargetDir(); const showBanner = !config.getScreenReader(); const showTips = !(settings.merged.ui?.hideTips || config.getScreenReader()); From b09a745bc9f8ae0928b6f907c47fdc2005b5eb0b Mon Sep 17 00:00:00 2001 From: DennisYu07 <617072224@qq.com> Date: Thu, 5 Feb 2026 22:04:28 -0800 Subject: [PATCH 3/5] fix memory leak in test --- packages/cli/src/ui/AppContainer.test.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/cli/src/ui/AppContainer.test.tsx b/packages/cli/src/ui/AppContainer.test.tsx index 5e035d2be..2ac6988b6 100644 --- a/packages/cli/src/ui/AppContainer.test.tsx +++ b/packages/cli/src/ui/AppContainer.test.tsx @@ -142,6 +142,9 @@ describe('AppContainer State Management', () => { beforeEach(() => { vi.clearAllMocks(); + // Increase max listeners to prevent EventEmitter memory leak warnings in tests + process.setMaxListeners(20); + // Initialize mock stdout for terminal title tests mockStdout = { write: vi.fn() }; @@ -305,6 +308,8 @@ describe('AppContainer State Management', () => { afterEach(() => { cleanup(); + // Reset max listeners to default + process.setMaxListeners(10); }); describe('Basic Rendering', () => { From f4cc0242b33fa8a67ec04259e481bb9c958ae2cb Mon Sep 17 00:00:00 2001 From: DennisYu07 <617072224@qq.com> Date: Fri, 6 Feb 2026 02:56:42 -0800 Subject: [PATCH 4/5] refactor test for AppContainer --- packages/cli/src/ui/AppContainer.test.tsx | 5 ----- 1 file changed, 5 deletions(-) diff --git a/packages/cli/src/ui/AppContainer.test.tsx b/packages/cli/src/ui/AppContainer.test.tsx index 2ac6988b6..5e035d2be 100644 --- a/packages/cli/src/ui/AppContainer.test.tsx +++ b/packages/cli/src/ui/AppContainer.test.tsx @@ -142,9 +142,6 @@ describe('AppContainer State Management', () => { beforeEach(() => { vi.clearAllMocks(); - // Increase max listeners to prevent EventEmitter memory leak warnings in tests - process.setMaxListeners(20); - // Initialize mock stdout for terminal title tests mockStdout = { write: vi.fn() }; @@ -308,8 +305,6 @@ describe('AppContainer State Management', () => { afterEach(() => { cleanup(); - // Reset max listeners to default - process.setMaxListeners(10); }); describe('Basic Rendering', () => { From 281995e3109048afb994d798756bfd3b8d83b57a Mon Sep 17 00:00:00 2001 From: DennisYu07 <617072224@qq.com> Date: Fri, 6 Feb 2026 03:01:53 -0800 Subject: [PATCH 5/5] fix test --- packages/cli/src/ui/components/AppHeader.test.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/cli/src/ui/components/AppHeader.test.tsx b/packages/cli/src/ui/components/AppHeader.test.tsx index c125bd977..447204a55 100644 --- a/packages/cli/src/ui/components/AppHeader.test.tsx +++ b/packages/cli/src/ui/components/AppHeader.test.tsx @@ -42,6 +42,7 @@ const createMockUIState = (overrides: Partial = {}): UIState => branchName: 'main', nightly: false, debugMessage: '', + currentModel: 'gemini-pro', sessionStats: { lastPromptTokenCount: 0, },