From f15602a8bb763bc9f3671f96aa90f2177625b426 Mon Sep 17 00:00:00 2001 From: Franco Arza Date: Wed, 30 Sep 2026 16:06:36 -0300 Subject: [PATCH] fix: keep data URL arguments intact in MCP tools and match the capitalized dev app name in menu bar tests --- CLI-MCP/ToolCatalog.swift | 6 ++++-- programaTests/NotificationAndMenuBarTests.swift | 6 +++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/CLI-MCP/ToolCatalog.swift b/CLI-MCP/ToolCatalog.swift index ee38f063..d344a5f1 100644 --- a/CLI-MCP/ToolCatalog.swift +++ b/CLI-MCP/ToolCatalog.swift @@ -140,8 +140,10 @@ enum ToolCatalog { return doubleValue case .string(let stringValue): return stringValue - case .data(_, let data): - return data.base64EncodedString() + case .data(let mimeType, let data): + // The SDK decodes any `data:` URL string argument (e.g. a browser URL) as `.data`, + // so re-encode it as a data URL; bare base64 would drop the scheme and MIME type. + return data.dataURLEncoded(mimeType: mimeType) case .array(let array): return array.map { valueToAny($0) } case .object(let object): diff --git a/programaTests/NotificationAndMenuBarTests.swift b/programaTests/NotificationAndMenuBarTests.swift index 6be62978..63eb15f3 100644 --- a/programaTests/NotificationAndMenuBarTests.swift +++ b/programaTests/NotificationAndMenuBarTests.swift @@ -776,19 +776,19 @@ final class NotificationMenuSnapshotBuilderTests: XCTestCase { final class MenuBarBuildHintFormatterTests: XCTestCase { func testReleaseBuildShowsNoHint() { - XCTAssertNil(MenuBarBuildHintFormatter.menuTitle(appName: "programa DEV menubar-extra", isDebugBuild: false)) + XCTAssertNil(MenuBarBuildHintFormatter.menuTitle(appName: "Programa DEV menubar-extra", isDebugBuild: false)) } func testDebugBuildWithTagShowsTag() { XCTAssertEqual( - MenuBarBuildHintFormatter.menuTitle(appName: "programa DEV menubar-extra", isDebugBuild: true), + MenuBarBuildHintFormatter.menuTitle(appName: "Programa DEV menubar-extra", isDebugBuild: true), "Build Tag: menubar-extra" ) } func testDebugBuildWithoutTagShowsUntagged() { XCTAssertEqual( - MenuBarBuildHintFormatter.menuTitle(appName: "programa DEV", isDebugBuild: true), + MenuBarBuildHintFormatter.menuTitle(appName: "Programa DEV", isDebugBuild: true), "Build: DEV (untagged)" ) }