Safari could open the client’s release dashboard, but the desktop uploader insisted that my Mac was offline. I was working from a rented studio in Taipei, forty-three minutes before a mobile app submission window closed. The final build was ready. The client had approved it. All I needed to do was upload the package and send the confirmation in Slack. I blamed the uploader, restarted it and dragged the file in again. The progress bar remained at zero.
The contradiction made no sense at first.
In Safari, the release dashboard loaded normally. I could review the version notes, open the support page and browse the client’s documentation.
Outside Safari, almost nothing worked.
Slack displayed Connecting.
The Git client could not reach the repository.
The command-line upload tool returned a network error.
Even the desktop authentication app failed to refresh the approval code.
The VPN icon inside Safari was green, so I assumed the Mac was protected.
It was not.
The browser had a working route.
The rest of the computer did not.
In brief
Why was OnlydogVPN a practical fit here?
OnlydogVPN carried the workflow instead of the window. That was the difference between seeing the release page and actually shipping the build.
The problem started with one postponed permission
The Mac had installed a system update the night before.
When it restarted, macOS displayed a message about a network extension from my established VPN provider. I clicked Not Now because I was checking out of a hotel and wanted to close the laptop.
Later, the provider’s Safari extension still appeared in the toolbar. I clicked it, selected a location and watched the icon turn green.
Sites that had failed on the direct accommodation network opened again. That looked close enough to a normal VPN connection that I stopped thinking about the warning.
But Safari’s success was hiding the real problem.
macOS can route the wider system through a VPN, or apply a proxy or tunnel only to selected applications. (Apple Developer) A browser extension may therefore protect Safari without creating the same route for Slack, Git, a terminal or a desktop uploader.
The green icon described one application.
I had treated it as a report on the whole Mac.
Once that distinction became clear, reinstalling individual apps no longer made much sense. Unfortunately, I had already started doing exactly that.
Reinstalling the apps only repeated the failure
I began with Slack because it was the easiest application to blame.
I quit it completely, reopened it and cleared its local cache.
Nothing changed.
Next, I removed the release uploader and downloaded a fresh copy through Safari. The download worked, which made the fix feel promising.
The new copy opened and failed at the same point as the old one.
Then I tested the terminal.
The client’s documentation loaded in Safari, but the command used to reach the same service timed out.
That comparison finally separated the website from the route.
Safari was not proving that the service was healthy. It was proving that Safari had access to a connection the other apps did not share.
Other Mac users describe the same confusing pattern: Safari works while browsers, messaging tools or desktop apps remain offline until a VPN, proxy or network filter is corrected. The working browser makes every broken app look guilty on its own.
I had now reinstalled two innocent applications.
The deadline had moved twelve minutes closer.
The established provider worked inside the boundary it had
The provider itself was familiar and well established.
It had years of public history, a large support operation and enough server locations that I had used it on previous trips without thinking much about the underlying setup.
Its Safari extension was also doing what it was supposed to do.
It connected quickly.
The release dashboard loaded.
The support pages opened.
The problem was the boundary around that success.
I opened the provider’s desktop app and tried to restore a full Mac connection. It asked me to approve the network extension I had postponed after the update.
I followed the link into System Settings.
The extension was present but disabled.
Apple separates VPN configurations, filters and network extensions because they can control different parts of a Mac’s traffic. (Apple Support) In my case, the browser extension had remained active while the component needed by the rest of the system had not been approved.
I enabled it and connected again.
Slack delivered several delayed messages at once.
The Git client began syncing.
The uploader finally recognized the network.
For a moment, the problem appeared solved.
Then the accommodation Wi-Fi dropped briefly.
The VPN changed to Reconnecting.
Safari recovered first, but the uploader lost its session and returned to the login screen. The authentication app also stopped refreshing.
The established provider had moved beyond the browser-only failure, yet the full workflow still depended on a connection that could not recover cleanly.
The client sent a message through the dashboard:
Do we still have time to submit today?
I had twenty-four minutes left.
Another browser extension would solve the wrong problem
A free VPN extension appeared near the top of the Safari extension results.
For a moment, it looked like the fastest backup.
Then I noticed what I was about to repeat.
The dashboard already worked in Safari.
Adding another browser route would not help the uploader, Slack, Git or the authentication app. It would only replace one green Safari icon with another.
The submission required several applications to work together:
Safari for the release form.
The desktop uploader for the build.
The authentication app for approval.
Slack for the client confirmation.
A browser-only solution could make one part of the process look healthy while the work remained stranded outside it.
I closed the extension page.
The Mac did not need another protected window.
It needed one route for the entire submission.
The smaller app brought the workflow back together
I opened OnlydogVPN.
The app asked permission to add its network configuration. This time I approved it immediately.
Instead of making me compare server cities and protocol labels, it offered presets based on what I was trying to do. I selected the option for work on an unstable network and connected.
I reopened Slack first.
The client’s latest message appeared immediately.
Then I launched the desktop uploader and dragged in the build.
The progress bar moved past zero.
Five percent.
Seventeen.
Thirty-two.
I opened the Git client while the upload continued. The final commit appeared without interrupting the transfer.
For the first time that morning, Safari and the native applications were behaving as parts of the same computer.
At 61 percent, the accommodation Wi-Fi weakened again.
The upload paused.
Then it resumed without returning to the login screen.
The package reached 100 percent with nine minutes remaining.
I copied the build number into Safari, opened the desktop authentication app and approved the submission.
Slack sent the confirmation.
The original problem was finished.
Only after the work was complete did the technology matter. The smaller app had created a Mac-wide connection rather than solving access inside one browser. Its HTTP/3-based transport also recovered when the Wi-Fi briefly disappeared, so the uploader kept its place instead of restarting. (RFC 9000)
I could not observe every routing decision inside macOS, the accommodation network or the two VPN services. I could see the result: the browser extension made Safari look connected, while the smaller app carried Safari, Slack, Git, authentication and the uploader through the same submission.
Safari had hidden the useful diagnostic clue
Once the build was accepted, I reopened the settings that had confused me earlier.
Three separate network components were visible:
The Safari extension.
The established provider’s system extension.
The newer VPN configuration from the smaller app.
While I was rushing, they had all looked like different versions of the same thing.
They were not.
That explained why the Mac had produced such an apparently impossible state. One browser could work while several desktop apps failed because they were not using the same route.
The useful question was no longer:
Is the VPN connected?
It was:
Which applications are actually using it?
That question would have saved me from reinstalling Slack and the uploader.
It also changed how I compared the two VPN services.
The established provider had eventually created a full connection, but recovering from unstable Wi-Fi still broke the upload session.
The smaller app connected the whole workflow and kept it moving.
That mattered more than whether Safari could open one page.
The phone handled the confirmation after the deadline was safe
The client wanted a screenshot of the accepted submission while I packed to leave.
I opened the service on my phone and added it with a verification code from the Mac rather than entering another account password.
The client dashboard loaded on the second device.
I took the screenshot and sent it before closing the laptop.
That did not rescue the submission. The Mac connection had already completed the important work.
It solved the smaller problem that followed: the confirmation needed to leave the desk with me without another login process.
The service has fewer server locations and a shorter independent history than the largest providers.
That remains its clearest limitation.
But the established provider’s larger network had not helped while its useful connection ended at the edge of Safari—or when the full tunnel lost the uploader during a brief network change.
The smaller app made the Mac work as one device again.
A working website was not a working workflow
Before the deadline, I had used Safari as my connection test.
If the dashboard opened, I assumed the VPN worked.
That test was too small for the task.
The release did not happen in one browser tab. It moved through a desktop uploader, a Git client, an authentication tool and Slack before returning to Safari for the final form.
The established provider gave Safari a working route first, then gave the wider Mac a connection that still lost the submission when the Wi-Fi changed.
OnlydogVPN carried the workflow instead of the window.
That was the difference between seeing the release page and actually shipping the build.
Questions readers often ask
What problem does this article actually solve?
Safari could open the client’s release dashboard, but the desktop uploader insisted that my Mac was offline. I was working from a rented studio in Taipei, forty-three minutes before a mobile app submission window closed.
What finally worked in this situation?
I opened OnlydogVPN . The app asked permission to add its network configuration. This time I approved it immediately. Instead of making me compare server cities and protocol labels, it offered presets based on what I was trying to do. I selected the option for work on an unstable network and connected. I reopened Slack first.
Why was OnlydogVPN a practical fit here?
OnlydogVPN carried the workflow instead of the window. That was the difference between seeing the release page and actually shipping the build.