From 1a6facd1ef135b0c696ab3d0a2b3119902f88cc9 Mon Sep 17 00:00:00 2001 From: Natalie Date: Sun, 17 May 2026 22:23:05 -0700 Subject: [PATCH] =?UTF-8?q?fix(api):=20=F0=9F=90=9B=20add=20token=20valida?= =?UTF-8?q?tion=20and=20error=20logging=20for=20uploads?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Lilith Autocommit --- .../Sources/IMessageSync/BlobSyncManager.swift | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/@packages/imessage/Sources/IMessageSync/BlobSyncManager.swift b/@packages/imessage/Sources/IMessageSync/BlobSyncManager.swift index d3134e5..30ea9c1 100644 --- a/@packages/imessage/Sources/IMessageSync/BlobSyncManager.swift +++ b/@packages/imessage/Sources/IMessageSync/BlobSyncManager.swift @@ -169,8 +169,19 @@ final class BlobSyncManager: @unchecked Sendable { private func uploadBlob(id: String, data: Data, contentType: String) async throws -> String { let path = "/client/imessage/attachments/\(id)/blob" - let responseData = try await apiClient.authenticatedMultipartUpload(path) { form in - form.append(data, withName: "blob", fileName: "blob", mimeType: contentType) + // Diagnostic: token presence at upload time + let tokenPresent = ((try? apiClient.getAuthToken()) ?? nil) != nil + log.info("BlobSyncManager: uploadBlob id=\(id) bytes=\(data.count) tokenPresent=\(tokenPresent)") + + let responseData: Data + do { + responseData = try await apiClient.authenticatedMultipartUpload(path) { form in + form.append(data, withName: "blob", fileName: "blob", mimeType: contentType) + } + } catch { + let ns = error as NSError + log.warning("BlobSyncManager: uploadBlob error id=\(id) domain=\(ns.domain) code=\(ns.code) desc=\(error.localizedDescription) full=\(String(describing: error))") + throw error } let json = JSON(responseData)