Skip to content

[Bug]: App Stuck on Splash Screen and Never Fully Opens #186

Closed

Description

@Omranic

Platform

macOS

Operating system version

macOS Tahoi 26.4.1

System architecture

ARM64 (M1, M2, etc)

PolyScope Version

Version 0.20.0 (0.20.0)

Bug description

When opening the app, it displays the initial splash screen but never progresses beyond that point. The screen remains stuck indefinitely, with no loading indicators, animations, or error messages.

Expected Behavior: The app should complete the startup process and load the main interface.

Actual Behavior: The app remains stuck on the splash screen and never fully opens.

Troubleshooting Attempted:

  • Force closed and reopened the app multiple times.
  • Uninstalled and reinstalled the app.
  • Restarted the app after reinstallation.
    None of the above steps resolved the issue.

Frequency: Occurs every time the app is launched.

Impact: The app is completely unusable because it never reaches the main interface.

Image

Steps to reproduce

  1. Launch the Polyscope app.
  2. Observe the splash screen on startup.

Relevant log output

Activity

  1. mechelon commented on Jun 12, 2026

    @mechelon
    Member

    Can you start Polyscope from the terminal - for example /Applications/Polyscope.app/Contents/MacOS/Polyscope and paste the log output from the terminal?

  2. Omranic commented on Jun 12, 2026

    @Omranic
    Author
    [electron] Starting prod server: /Applications/Polyscope.app/Contents/Resources/polyscope-server
    [electron] Waiting for server health check on port 4321...
    [server] [relay-client] Connecting to relay at wss://relay-edge.getpolyscope.com...
    [server] [polyscope] Server running on ws://0.0.0.0:4321/ws
    [server] [polyscope] REST API: http://0.0.0.0:4321/api
    [server] [polyscope] Health check: http://0.0.0.0:4321/health
    [server] [polyscope] Loaded Claude models: [ "claude-default", "claude-fable-5[1m]",
    [server]   "claude-sonnet", "claude-haiku"
    [server] ]
    [server] [ws] broadcast: models.result {"type":"models.result","models":["claude-default","claude-fable-5[1m]","claude-sonnet","claude-haik
    [electron] Server failed health check after timeout
    [server] [polyscope] Hydrated auth user from stored token
    [server] [relay-client] Connected to relay
    [server] [relay-client] Registered as server bc07ec29-524
    19:05:02.912 › [updater] Update available: v0.21.0
    19:05:02.914 › Checking for update
    19:05:03.101 › Found version 0.21.0 (url: https://polyscope.fra1.digitaloceanspaces.com/electron/mac/Polyscope_0.21.0_401f8510.zip)
    19:05:03.101 › Downloading update from https://polyscope.fra1.digitaloceanspaces.com/electron/mac/Polyscope_0.21.0_401f8510.zip
    19:05:03.102 › Checking for macOS Rosetta environment
    19:05:03.110 › Checked for macOS Rosetta environment (isRosetta=false)
    19:05:03.110 › Checking for arm64 in uname
    19:05:03.116 › Checked 'uname -a': arm64=true
    19:05:03.118 › updater cache dir: ~/Library/Caches/@polyscopedesktop-updater
    19:05:03.120 › Cached update sha512 checksum doesn't match the latest available update. New update must be downloaded. Cached: affdb185da33b704d1da3614cc7b358fc6df2f4cd8bfadab5e2c0638bc03569f2127a1ca2358d292250bef1a0d4b1c6fe6e9235b069415f4ecd3cea33a31ff61, expected: 48fec90b0dbc1504fc857c8d08ebf3a783b68c114130c1ff9a5f366944af8766fbf531f300de2c669887c2c4b81ff628e94a91bf8db46b2d6c1e44a5f9ca9ded. Directory for cached update will be cleaned
    19:05:03.132 › Download block maps (old: "https://polyscope.fra1.digitaloceanspaces.com/electron/mac/Polyscope_0.20.1_401f8510.zip.blockmap", new: https://polyscope.fra1.digitaloceanspaces.com/electron/mac/Polyscope_0.21.0_401f8510.zip.blockmap)
    19:05:03.295 › Cannot download differentially, fallback to full download: Error: Cannot download "https://polyscope.fra1.digitaloceanspaces.com/electron/mac/Polyscope_0.21.0_401f8510.zip.blockmap", status 403:
        at ClientRequest.<anonymous> (/Applications/Polyscope.app/Contents/Resources/app.asar/node_modules/builder-util-runtime/out/httpExecutor.js:209:34)
        at ClientRequest.emit (node:events:508:28)
        at SimpleURLLoaderWrapper.<anonymous> (node:electron/js2c/browser_init:2:133982)
        at SimpleURLLoaderWrapper.emit (node:events:508:28)
    

    That log was helpful, but this may also be something worth improving on your side. I noticed port 4321 on line 3 of the log, which was already being used by another application I had running. That's probably why Polyscope was failing silently.

    It would be great if this situation were handled more gracefully—either by showing a clearer error message or automatically falling back to a different available port.

    After I stopped the other application and relaunched Polyscope, everything worked as expected.

    P.S. update download still failing by the way:

    19:08:16.475 › Cannot download differentially, fallback to full download: Error: Cannot download "https://polyscope.fra1.digitaloceanspaces.com/electron/mac/Polyscope_0.21.0_401f8510.zip.blockmap", status 403:
        at ClientRequest.<anonymous> (/Applications/Polyscope.app/Contents/Resources/app.asar/node_modules/builder-util-runtime/out/httpExecutor.js:209:34)
        at ClientRequest.emit (node:events:508:28)
        at SimpleURLLoaderWrapper.<anonymous> (node:electron/js2c/browser_init:2:133982)
        at SimpleURLLoaderWrapper.emit (node:events:508:28)
    
  3. mechelon commented on Jun 13, 2026

    @mechelon
    Member

    Thanks! I'll see that we get the port problem sorted in the next release.

    Did the update to 0.21.0 work for you? Because generally, that blockmap for the 403 is harmless - it's just the differential updater probing for a file we don't publish, so it automatically falls back to a full download.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions