Skip to content

[bug]: Instance wrapper shows "didn't start up correctly" on transient /api/instances/ failure #9658

Description

@IsmailofficialGithub

Is there an existing issue for this?

  • I have searched the existing issues

Current behavior

When the API is briefly unavailable (restart, 502 Bad Gateway, short network blip), a request to GET /api/instances/ fails.

The web app then shows the full-page maintenance empty state:

"Looks like Plane didn't start up correctly!
Some services might have failed to start..."

Even if instance data was already loaded successfully earlier in the session.

Expected:
If instance info is already in the client store, keep the app usable. Only show the maintenance screen when there is no instance data (true cold start / API completely down and never loaded).

Actual:
In apps/web/core/lib/wrappers/instance-wrapper.tsx, any SWR error on INSTANCE_INFORMATION immediately renders <MaintenanceView />, regardless of whether instance is already available.

Suggested fix:
Change:
if (instanceSWRError) return <MaintenanceView />;
to:
if (instanceSWRError && !instance) return <MaintenanceView />;

Steps to reproduce

  1. Start local Plane stack (API + web).
  2. Open the web app and confirm it loads normally (instance info fetched successfully).
  3. Restart the API container / briefly stop API so /api/instances/ returns 502 or network error for a few seconds.
  4. Keep the browser tab open (or trigger a re-fetch / reload of instance info via SWR).
  5. Observe the UI switches to the maintenance page ("Plane didn't start up correctly!") instead of staying on the already-loaded app.

Optional logs:

  • Network tab: GET /api/instances/ → 502 / failed
  • After API is healthy again, refresh still may be needed depending on client state

Environment

Deploy preview

Browser

Google Chrome

Variant

Local

Version

1.4.2

Metadata

Metadata

Assignees

Labels

planesync issues to Plane🐛bugSomething isn't working

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions