feat: harden local shell, SFTP, and desktop session reliability

Finder-launched terminals now inherit a login PATH so tools like ollama resolve, destructive SFTP/editor actions require confirmation, and terminal search plus window dragging work again. SSH forwards and RDP sessions keep listeners and survive reconnect without FastPath crashes.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Logan.LiandCursor committed 2026-08-16 16:08:11 +08:00
1 parent 188f3556ed
commit 08696896f9
223 files changed
+13493 -3423

No files matched your search

+38
View File
@@ -0,0 +1,38 @@
import { beforeAll, describe, expect, it } from 'vitest'
import i18n from '../../src/i18n'
import {
filterSettingsTabsByQuery,
settingsTabMatchesQuery,
} from '../../src/utils/settingsSearch'
describe('settingsSearch multilingual', () => {
beforeAll(async () => {
await i18n.changeLanguage('zh-CN')
})
it('finds general via Language / lang while UI is Chinese', () => {
expect(settingsTabMatchesQuery('general', 'Language')).toBe(true)
expect(settingsTabMatchesQuery('general', 'lang')).toBe(true)
expect(settingsTabMatchesQuery('general', '语言')).toBe(true)
expect(settingsTabMatchesQuery('general', '言語')).toBe(true)
})
it('finds workspace via English aliases while UI is Chinese', () => {
expect(settingsTabMatchesQuery('general', 'workspace')).toBe(true)
expect(settingsTabMatchesQuery('general', '通用')).toBe(true)
})
it('finds account via license / 账户 while UI is Chinese', () => {
expect(settingsTabMatchesQuery('account', 'license')).toBe(true)
expect(settingsTabMatchesQuery('account', '账户')).toBe(true)
expect(settingsTabMatchesQuery('account', 'email')).toBe(true)
})
it('filters tab list for language query', () => {
const matched = filterSettingsTabsByQuery(
['general', 'account', 'terminal', 'ai', 'shortcuts', 'ssh', 'security', 'about'],
'lang'
)
expect(matched).toContain('general')
})
})