feat: release OpsXShell 2.1.0 native Tauri edition

This commit is contained in:
Logan.Li committed 2026-07-30 23:32:51 +08:00
1 parent e9a0d21758
commit a3dba0c6ed
311 files changed
+31748 -14897

No files matched your search

+26
View File
@@ -0,0 +1,26 @@
import { beforeEach, describe, expect, it, vi } from 'vitest'
import { mockDesktopApi } from '../setup'
import { useAiProviderStore } from '../../src/stores/aiProviderStore'
describe('AI provider store secret boundary', () => {
beforeEach(() => {
vi.clearAllMocks()
useAiProviderStore.setState({
providers: [],
activeProviderId: '',
isLoaded: true,
catalogProviders: [],
catalogUpdatedAt: null,
})
})
it('saves API keys through Rust and never writes them to normal settings', async () => {
const providerId = await useAiProviderStore.getState().addPreset('deepseek')
const provider = useAiProviderStore.getState().providers.find((item) => item.id === providerId)!
await useAiProviderStore.getState().saveProvider(provider, 'sk-very-secret')
expect(mockDesktopApi.aiProviderSaveKey).toHaveBeenCalledWith(providerId, 'sk-very-secret')
const settingsPayloads = vi.mocked(mockDesktopApi.settingsSet).mock.calls.map((call) => call[1])
expect(JSON.stringify(settingsPayloads)).not.toContain('sk-very-secret')
})
})