Skip to content

fix(extensions-portal): increase install timeout and nginx proxy_read_timeout#711

Merged
Lightheartdevs merged 1 commit intoLight-Heart-Labs:resources/devfrom
yasinBursali:ext/fix-install-timeout-progress
Apr 2, 2026
Merged

fix(extensions-portal): increase install timeout and nginx proxy_read_timeout#711
Lightheartdevs merged 1 commit intoLight-Heart-Labs:resources/devfrom
yasinBursali:ext/fix-install-timeout-progress

Conversation

@yasinBursali
Copy link
Copy Markdown
Contributor

What

Increase the frontend mutation timeout from 15 s to 120 s and add a descriptive "Installing…" hint during extension installs. Also raises the nginx proxy_read_timeout from the 60 s default to 180 s so the reverse proxy never cuts the connection before the frontend does.

Why

The frontend AbortSignal.timeout(15000) fired before the backend could complete a Docker image pull. The install would succeed in the background but users saw a false "Failed to install" error. The nginx default of 60 s created a secondary bottleneck in production that the frontend timeout fix alone would not have resolved.

How

  • Extensions.jsx: AbortSignal.timeout(15000)AbortSignal.timeout(120000)
  • Extensions.jsx: added mutatingAction state; Install button shows "Installing…" while in flight
  • nginx.conf: added proxy_read_timeout 180s to the /api/ location block

Scope

All changes are within dream-server/extensions/services/dashboard/.

Testing

  • Install an extension with an uncached Docker image (e.g. AnythingLLM) — verify no false error at 15 s, "Installing…" label appears
  • Enable/disable an extension — verify spinner only (no "Installing…" label)
  • Test in the containerised dashboard (not just vite dev) to exercise the nginx timeout

Review

Critique Guardian: APPROVED (after nginx companion fix added)

Copy link
Copy Markdown
Collaborator

@Lightheartdevs Lightheartdevs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Audit review: Incremental fix building on #673. Changes look correct. Must merge in sequence after #673. LGTM.

@Lightheartdevs
Copy link
Copy Markdown
Collaborator

Approved. Needs rebase onto main to fix tier-*-env-validation failures (missing recent schema changes). Merges in sequence after #673.

@yasinBursali yasinBursali force-pushed the ext/fix-install-timeout-progress branch 3 times, most recently from 7d58000 to 89090fd Compare April 2, 2026 17:53
@Lightheartdevs
Copy link
Copy Markdown
Collaborator

Hey Yasin — good progress, here's where everything stands:

Merged today: #635, #669, #670, #671, #672, #673, #706, #708, #709, #710

Need rebase (merge conflicts): #711, #712, #713, #721 — these conflict after the earlier chain merged. Once rebased they're all approved and ready to go.

Still need fixes from earlier reviews:

Almost there — 4 rebases and you're done with the extensions portal chain.

…_timeout

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@yasinBursali yasinBursali force-pushed the ext/fix-install-timeout-progress branch from 89090fd to 8cc0322 Compare April 2, 2026 18:02
@Lightheartdevs Lightheartdevs merged commit f451eac into Light-Heart-Labs:resources/dev Apr 2, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants