From f94f043ac6b42c06506e791c7786942a331aa182 Mon Sep 17 00:00:00 2001 From: Akshay Prabhu <12824090+akshayprabhu200@users.noreply.github.com> Date: Sun, 26 Jul 2026 13:37:33 -0700 Subject: [PATCH 1/2] Support LongCat Firefox cookie imports --- Sources/CodexBarCore/Providers/Providers.swift | 5 +++-- Tests/CodexBarTests/BrowserCookieOrderLabelTests.swift | 10 +++++++--- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/Sources/CodexBarCore/Providers/Providers.swift b/Sources/CodexBarCore/Providers/Providers.swift index 5f66dce6f9..4953c94b07 100644 --- a/Sources/CodexBarCore/Providers/Providers.swift +++ b/Sources/CodexBarCore/Providers/Providers.swift @@ -291,10 +291,11 @@ public enum ProviderBrowserCookieDefaults { #endif } - /// LongCat Auto imports only from Chrome by default to avoid prompting unrelated browser keychains. + /// LongCat Auto keeps Chrome first for existing users, then checks Firefox without adding + /// an unrelated browser Keychain prompt. public static var longcatCookieImportOrder: BrowserCookieImportOrder? { #if os(macOS) - [.chrome] + [.chrome, .firefox] #else nil #endif diff --git a/Tests/CodexBarTests/BrowserCookieOrderLabelTests.swift b/Tests/CodexBarTests/BrowserCookieOrderLabelTests.swift index b1e0fa28bd..3428eee888 100644 --- a/Tests/CodexBarTests/BrowserCookieOrderLabelTests.swift +++ b/Tests/CodexBarTests/BrowserCookieOrderLabelTests.swift @@ -102,9 +102,13 @@ struct BrowserCookieOrderStatusStringTests { } @Test - func `longcat cookie imports default to chrome only`() { - #expect(ProviderDefaults.metadata[.longcat]?.browserCookieOrder == [.chrome]) - #expect(ProviderBrowserCookieDefaults.longcatCookieImportOrder == [.chrome]) + func `longcat cookie import order supports chrome and firefox`() { + let order = ProviderDefaults.metadata[.longcat]?.browserCookieOrder ?? Browser.defaultImportOrder + #expect(order == ProviderBrowserCookieDefaults.longcatCookieImportOrder) + #expect(order == [.chrome, .firefox]) + #expect(order.first == .chrome) + #expect(order.contains(.firefox)) + #expect(!order.contains(.safari)) } #endif } From 9615d72ccc257b8a10ec9352a4e0147f9c1c7d1a Mon Sep 17 00:00:00 2001 From: Akshay Prabhu <12824090+akshayprabhu200@users.noreply.github.com> Date: Sun, 26 Jul 2026 17:45:13 -0700 Subject: [PATCH 2/2] Strengthen LongCat browser order test --- .../BrowserCookieOrderLabelTests.swift | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Tests/CodexBarTests/BrowserCookieOrderLabelTests.swift b/Tests/CodexBarTests/BrowserCookieOrderLabelTests.swift index 3428eee888..8e4f33002a 100644 --- a/Tests/CodexBarTests/BrowserCookieOrderLabelTests.swift +++ b/Tests/CodexBarTests/BrowserCookieOrderLabelTests.swift @@ -103,12 +103,14 @@ struct BrowserCookieOrderStatusStringTests { @Test func `longcat cookie import order supports chrome and firefox`() { - let order = ProviderDefaults.metadata[.longcat]?.browserCookieOrder ?? Browser.defaultImportOrder - #expect(order == ProviderBrowserCookieDefaults.longcatCookieImportOrder) - #expect(order == [.chrome, .firefox]) - #expect(order.first == .chrome) - #expect(order.contains(.firefox)) - #expect(!order.contains(.safari)) + let metadataOrder = ProviderDefaults.metadata[.longcat]?.browserCookieOrder + let defaultOrder = ProviderBrowserCookieDefaults.longcatCookieImportOrder + + #expect(metadataOrder == [.chrome, .firefox]) + #expect(defaultOrder == [.chrome, .firefox]) + #expect(defaultOrder?.first == .chrome) + #expect(defaultOrder?.contains(.firefox) == true) + #expect(defaultOrder?.contains(.safari) == false) } #endif }